Advertisement
dimasour

Л-23 задача-3

May 7th, 2019
116
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
Pascal 2.18 KB | None | 0 0
  1. type
  2.   baza = record //переменная содержащая (n-ное) кол-во пар (фамилия+группа+предмет+оценка)
  3.     fam: string[10]; //10 - длинна фамилии (можно изменить)
  4.     gruppa: string[10]; //10 - длинна группы (можно изменить)
  5.     predmet:array[1..10] of string[10]; //длинна массива предметов
  6.     ozenka: array[1..10] of string[1]; //длинна массива оценок
  7.   end;
  8.  
  9.  
  10. var a:array[1..100]of baza;
  11.     f:file of baza;
  12.     n,i, j,k,m,fl: integer;
  13.  
  14.  begin
  15.   assign(f,'C:\Users\Public\Documents\Ses.txt');
  16.   rewrite(f);
  17.   writeln('Введите количество студентов: ');
  18.   readln(n);
  19.   writeln('Введите количество предметов: ');
  20.   readln(m);
  21.   writeln;
  22. for i := 1 to n do
  23. begin
  24. writeln('Данные ',i,' студента:');
  25.   write('Фамилия: ');
  26.   readln(a[i].fam);
  27.  
  28.   write('Группа: ');
  29.   readln(a[i].gruppa);
  30.  
  31.   for j:= 1 to m do begin
  32.     write(j,' Предмет: ');
  33.     readln(a[i].predmet[j]);
  34.  
  35.     write('  Оценка: ');
  36.     readln(a[i].ozenka[j]);
  37.     end;
  38.     write(f,a[i]);
  39. writeln;
  40. end; //ввод всех данных
  41. close(f); //закрытие файла
  42. reset(f);//начинаем с начала
  43. k:=0;
  44. fl:=0;
  45. writeln;
  46. writeln('Студенты,имеющие задолженность хотя бы по одному предмету:');
  47. for i:= 1 to n do begin
  48.   read(f,a[i]);
  49.   for j:= 1 to m do begin
  50.     if a[i].ozenka[j]='2' then begin k:= 1; fl:=1 //проход по массиву даных из файла,если встречается двойка, то значение 1 переменным k (кол-во) и fl (есть ли студент с задолжнстью)
  51.     end;
  52.   end;
  53.     if k=1 then begin writeln(a[i].fam,', из группы ',a[i].gruppa); //вывод студента с задожностю
  54.     k:=0;
  55.     end;
  56.   end;
  57.   if fl=0 then writeln('Отсутствуют');//если задолжнстей нет (fl = 0) вывести сообщение об этом
  58. close(f); //закрытие файла
  59. end.
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement