Записи. Распечатать данные об общем количестве учебных заведений в государстве с максимальной плотностью населения - PascalABC.NET

Узнай цену своей работы

Формулировка задачи:

Исходными данными для программы являются: название государства, численность населения, проживающего на его территории, площадь территории государства, число школ, вузов. Распечатать данные об общем количестве учебных заведений в государстве с максимальной плотностью населения.

Решение задачи: «Записи. Распечатать данные об общем количестве учебных заведений в государстве с максимальной плотностью населения»

textual
Листинг программы
type data = record
            name: string;
            sum: longint;
            square: longint;
            number: integer;
           end;
var a: array [1..100] of data;
    x: array [1..100] of real;  a1: string;
    i,j,n: integer;             a2,a3,a4: integer;
 begin
  randomize;
  writeln('Ââåäèòå êîëè÷åñòâî Г±ГІГ°Г*Г*--> '); readln(n);
  writeln;
  for i:=1 to n do begin
    for j:=1 to random(7)+5 do a[i].name:=a[i].name+chr(random(26)+65);
    a[i].sum:=random(1000000);
    a[i].square:=random(100000);
    a[i].number:=random(1000);
   end;
 
  for i:=1 to n do begin
    writeln('ГЌГ*çâГ*Г*ГЁГҐ Г±ГІГ°Г*Г*Г»: ',a[i].name,'.');
    writeln('Êîëè÷åñòâî Г*Г*ñåëåГ*ГЁГї: ',a[i].sum,' ÷åëîâåê.');
    writeln('ÏëîùГ*äü: ',a[i].square,' ГЄГў.ГЄГ¬.');
    writeln('Êîëè÷åñòâî ГіГ·ГҐГЎГ*ûõ Г§Г*âåäåГ*ГЁГ©: ',a[i].number,' âóçîâ ГЁ øêîë.');
    writeln;
   end;
   
  for i:=1 to n-1 do
  for j:=i to n do
  if round(a[i].sum/a[i].square)>round(a[j].sum/a[j].square) then begin
    a1:=a[i].name;
    a2:=a[i].sum;
    a3:=a[i].square;
    a4:=a[i].number;
    a[i].name:=a[j].name;
    a[i].sum:=a[j].sum;
    a[i].square:=a[j].square;
    a[i].number:=a[j].number;
    a[j].name:=a1;
    a[j].sum:=a2;
    a[j].square:=a3;
    a[j].number:=a4;
   end;
 
  writeln('Êîëè÷åñòâî ГіГ·ГҐГЎГ*ûõ Г§Г*âåäåГ*ГЁГ© Гў Г±ГІГ°Г*Г*Г*Гµ Г± Г±Г*ìîé áîëüøîé ïëîòГ*îñòüþ Г*Г*ñåëåГ*ГЁГї: ');
  for i:=1 to (n div 5) do writeln('ÑòðГ*Г*Г* ',a[i].name,': ',a[i].number,' øêîë ГЁ âóçîâ.');
  writeln;
 end.

Объяснение кода листинга программы

  1. Объявлен тип данных data - это запись, которая содержит поля: name (строка), sum (длинное целое), square (длинное целое), number (целое).
  2. Объявлен массив a типа data размером 100.
  3. Объявлены переменные: x (массив из 100 элементов типа real), a1 (строка), i, j, n (целые числа).
  4. Задано начальное значение для генератора случайных чисел.
  5. Пользователю предлагается ввести число для генерации данных.
  6. В цикле формируются имена учебных заведений путем добавления случайно выбранных букв к имени.
  7. В цикле заполняются поля записи a случайными значениями.
  8. В цикле выводятся данные об учебном заведении на экран.
  9. В цикле сортируются записи a по убыванию плотности населения.
  10. Выводится общее количество учебных заведений в государстве с максимальной плотностью населения.
  11. В цикле выводятся на экран первые 20 записей a с максимальным значением плотности населения.

ИИ поможет Вам:


  • решить любую задачу по программированию
  • объяснить код
  • расставить комментарии в коде
  • и т.д
Попробуйте бесплатно

Оцени полезность:

10   голосов , оценка 4.3 из 5
Похожие ответы