Составить список студентов, включающий ФИО, факультет, курс, группу, результат забега. Определить трех лучших в забеге
Категория: Delphi/Pascal
2012-01-28 18:54:18
code: #pascal
program PascalGuru; type zapisi =record fio:string; fak:string; krs:string; grp:string; rez:real; end; var m:array[1..26] of zapisi; i,n:integer; {*********************************} procedure exchange(var a,b:real); var c:real; begin c:=a; a:=b; b:=c; end; procedure exchanges(var a,b:string); var c:string; begin c:=a; a:=b; b:=c; end; procedure Sorting (n:integer); var i:integer; swop:boolean; begin repeat swop:=false; for i:=1 to n-1 do if m[i].rez[i+1].rez then begin exchanges(m[i].fio,m[i+1].fio); exchanges(m[i].fak,m[i+1].fak); exchanges(m[i].krs,m[i+1].krs); exchanges(m[i].grp,m[i+1].grp); exchange(m[i].rez,m[i+1].rez); swop:=true; end; n:=n-1; until not swop; end; {*********************************} begin write('Skoliko uchaschihsya hotite zapisati?'); readln(n); for i:=1 to n do begin writeln('Zapisi #',i,':'); write('FIO: '); readln(m[i].fio); write('Fakulitet: '); readln(m[i].fak); write('Kurs: '); readln(m[i].krs); write('Gruppa: '); readln(m[i].grp); write('Rezulitat zabega: '); readln(m[i].rez); end; writeln; writeln; writeln('Vy vveli sleduyuschih uchaschihsya:'); for i:=1 to n do writeln(m[i].fio); writeln;writeln; Sorting(n); writeln('3 luchshih:'); for i:=1 to 3 do writeln(m[i].fio,' | ',m[i].fak,' | ',m[i].krs,' | ',m[i].grp,' | ',m[i].rez:0:2); readln; end.
Поделиться: