Advertisement
Guest User

123

a guest
Dec 18th, 2018
71
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
Pascal 2.34 KB | None | 0 0
  1. uses crt;
  2. const
  3. m=30;
  4. type client = record
  5.                 fio:string[25];
  6.                 number,yis,kol,price:integer;
  7.                 end;
  8. var
  9. reestr:array[1..m]of client;
  10. nmax,kz,i,j,n,dn:integer;
  11. sbmax:real;
  12. y:client;
  13. otv:char;
  14. BEGIN
  15.  clrscr;
  16. while true do
  17.  Begin
  18.  repeat
  19.  write('Задайте количество записей: ');
  20.  readln(kz);
  21.  until(kz>=1)and(kz<m);
  22.  for i:=1 to kz do
  23.  begin
  24.  write('Введитн данные ',i,'-го абонента');
  25.  with reestr[i]do
  26.   begin
  27.   write(' ФИО: ');readln(fio);
  28. //  write('Введите номер телефона: ');readln(number);
  29. //  write('Введите год установки: ');readln(yis);
  30. //  write('Введите кол-во абонентов: ');readln(kol);
  31.   write('Введите оплату за месяц: ');readln(price)
  32.  end
  33. end;
  34.   writeln;  writeln;
  35.  writeln(' ':8,'Неотсортированнй массив');
  36.  writeln('_________________________________________________________________');
  37.  for i:=1 to kz do
  38.   with reestr[i] do                                                                                    // ' | |', :10,
  39.   begin
  40.  writeln('|Абонент|',fio:10,' | Номер|',number:10,'| Год утсановки|',yis:4,'| Кол-во|', kol:2,'| О/М|', price:5,'|');
  41.  writeln('-----------------------------------------------------------------');
  42.  end;
  43. writeln;
  44.  nmax:=1;
  45.     sbmax:=reestr[1].price;
  46. for i:=1 to kz do
  47.      if(reestr[i].price<sbmax)then
  48.       begin
  49.       sbmax:=reestr[i].price;
  50.       nmax:=i
  51.       end;
  52.      
  53.       n:=round(kz/2);
  54.                                            
  55.      y:=reestr[nmax];
  56.      reestr[nmax]:=reestr[n];
  57.      reestr[n]:=y;
  58.   writeln;
  59.  writeln(' ':8,'Отсортированный массив');
  60.  writeln('_________________________________________________________________');
  61.  for i:=1 to kz do
  62.   with reestr[i] do
  63.   begin
  64.  writeln('|Абонент|',fio:10,' | Номер|',number:10,'| Год утсановки|',yis:4,'| Кол-во|', kol:2,'| О/М|', price:5,'|');
  65.  end;
  66.  writeln('-----------------------------------------------------------------');
  67.  
  68.  writeln;
  69.  writeln('Продолжить работу? (Y/N)');
  70.  readln(otv);
  71.  if(otv='n')or(otv='N')then
  72.  break
  73.  end;
  74.  writeln('Программу выполнил студент группы');
  75.  End.
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement