Записи. Распечатать данные об общем количестве учебных заведений в государстве с максимальной плотностью населения - 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.
Объяснение кода листинга программы
- Объявлен тип данных
data
- это запись, которая содержит поля: name (строка), sum (длинное целое), square (длинное целое), number (целое). - Объявлен массив
a
типаdata
размером 100. - Объявлены переменные: x (массив из 100 элементов типа real), a1 (строка), i, j, n (целые числа).
- Задано начальное значение для генератора случайных чисел.
- Пользователю предлагается ввести число для генерации данных.
- В цикле формируются имена учебных заведений путем добавления случайно выбранных букв к имени.
- В цикле заполняются поля записи
a
случайными значениями. - В цикле выводятся данные об учебном заведении на экран.
- В цикле сортируются записи
a
по убыванию плотности населения. - Выводится общее количество учебных заведений в государстве с максимальной плотностью населения.
- В цикле выводятся на экран первые 20 записей
a
с максимальным значением плотности населения.
ИИ поможет Вам:
- решить любую задачу по программированию
- объяснить код
- расставить комментарии в коде
- и т.д