Программа запрашивает Имена получателей пенсий и размер их пенсий, затем выводит эти имена в порядке возрастания размера пенсии — Pascal(Паскаль)

program fifty_five;
uses crt;
var
grade:Array[1..5]of LongInt;{заводим массив где будем держать пенсии}
surname:Array[1..5]of String;{массив где будут фамилии}
i,b:Byte;{переменные для счётчиков}
temp_grade:LongInt;{переменная для обмена оценок}
temp_surname:String;{переменная для обмена фамилий}
begin
clrscr;
writeln('ПРОГРАММА СОРТИРОВКИ ПОЛУЧАТЕЛЕЙ ПЕНСИИ');
Writeln('   В ЗАВИСИМОСТИ ОТ РАЗМЕРА ПЕНСИИ.    ');
writeln;writeln;
for i:=1 to 5 do {заполняем оба массива пенсиями и фамилиями}
begin
write('Введите фамилию получателя №',i,': ');
readln(surname[i]);
write('Введите размер пенсии этог человека: ');
readln(grade[i]);
writeln;
end;
{начинаем сортировку}
for i:=1 to 5 do {счётчик по числу элементов массивa - 1}
 for b:=1 to 4 do {счётчик по числу сравниваний}
  if grade[b]>grade[b+1] then
   begin
    {стандартная процедура обмена с использованием переменной
    для временного хранения. сортируем отметки по возрастанию
    и соответственно расставляем фамилии.}
    temp_grade:=grade[b+1];
    temp_surname:=surname[b+1];
    grade[b+1]:=grade[b];
    surname[b+1]:=surname[b];
    grade[b]:=temp_grade;
    surname[b]:=temp_surname;
   end;
{сортировка окончена. теперь другим циклом выводим на экран результат}
for i:=1 to 5 do
writeln(i,'. Фамилия: ',surname[i],'         Пенсия: ',grade[i]);
readln;
end.

Leave a Comment

8 + 2 =