Нужно составить программу на языке паскаль для решения такой : поиск двух учащихся школы,у которых совпадает имя?

ksastaff ksastaff    2   20.05.2019 07:40    1

Ответы
delfin4 delfin4  13.06.2020 15:25

Вы не указали как хранятся данные о студентах и как осуществляется ввод. Попробуйте так, хотя я уже давно в Паскале не писала.

 

program pr1;

procedure CreateMass(var str:mass; n:integer);
var i:integer;
begin
  for i:=1 to n do begin
  write('Введите имя учащегося: ');
  readln(str[i])
  end
end;

procedure SearchN (str:mass; n:integer);
var i, j, s1, s2:integer;
    b:boolean;
begin
  b:=false;
  j:=1;
  while (j <= (n-1)) and (not b) do
  begin
    for i:=j+1 to n do
    begin
      if str[j]=str[i] then
      begin
        b:=true;
        s1:=i;
        s2:=j
      end
    end;
    j:=j+1
  end;
  if (not b) then writeln('Нет двух студентов с одинаковыми именами.') else
  writeln('Студенты с одинаковыми именами - ',str[s1], ' находятся в массиве под номерами ', s1, ' и ', s2, '.')
end;

type mass = array [1..n] of string;
const n = 10;
var str:mass;
begin
  CreateMass(str, n);
  SearchN(str, n)
end.

ПОКАЗАТЬ ОТВЕТЫ
Другие вопросы по теме Информатика