Показать сообщение отдельно
Старый 26.11.2017, 19:54   #1 (permalink)
Лена12
Новичок
 
Регистрация: 20.11.2017
Сообщений: 8
Сказал(а) спасибо: 0
Поблагодарили 0 раз(а) в 0 сообщениях
Репутация: 10
По умолчанию Помогите исправить задачу

В условии сказано: Составьте программу, позволяющую определить, есть ли в школе в 8-х классах однофамильцы. Данные об учениках должны идти в следующем порядке: имя, фамилия, год обучения, буква.
Когда вводишь например фамилию Иванов в 8 класс и в 9 классе, на выходе выдает, что есть однофамильцы... и Например еще когда вводишь Иванов 8 класс и Иванова 8 класс, пишет что нет однофамильцев. Язык программирования Pascal. Помогите исправить задачку, на обработку записей.
Код:
  program z6;
  
  type
  cl = record
  name: string[20];
      familia: string[45];
      year: integer;
      bukva: string;
    end;
  
  var
  kl: array [1..100] of cl;
  i, n, c: integer;
  
  begin
  Write('Введите количество учеников= ');
  readln(n);
    for i := 1 to n do
  begin
  writeln('Введите сведения о ', I, '-м ученике:');
  write('Имя ');
      readln(kl[I].name);
      write('Фамилия ');
      readln(kl[I].familia);
      write('Класс ');
      readln(kl[I].year);
      write('Буква ');
      readln(kl[I].bukva);
    end;
    writeln; 
    c := 0;
    for i := 1 to n - 1 do 
    begin
      if ((kl[I].year = 8) and (kl[I].familia = kl[I + 1].familia)) then inc(c); 
    end;
    if c >= 1 then writeln('Однофамильцыесть') else write('Однофамильцевнет'); 
  end.
Лена12 вне форума   Ответить с цитированием
Ads

Яндекс

Member
 
Регистрация: 31.10.2006
Сообщений: 40200
Записей в дневнике: 0
Сказал(а) спасибо: 0
Поблагодарили 0 раз(а) в 0 сообщениях
Репутация: 55070