Записи в процедурах - Pascal
Формулировка задачи:
Нужно составить программу из двух процедур. Первая процедура ввода в ней записываеться имя грузовика, его грузоподъёмность и масса, а вторая процедура находит полную массу выбранного по имени грузовика. Полная масса = грузоподъёмность + масса. Последний допуск!(
Решение задачи: «Записи в процедурах»
textual
Листинг программы
const
n = 3;
type
T_gruz = record
nm:string;
ms:real;
gp:real;
end;
T_gr = array[1..n] of T_gruz;
procedure inp(var a:T_gruz);
begin
writeln('Введите данные о грузовике');
read(a.nm,a.ms,a.gp);
end;
procedure mas( s:string; var m:real;const man: T_gr);
var i:integer;
begin
for i:=1 to n do
if man[i].nm = s then
m:=man[i].ms + man[i].gp;
end;
var
man:T_gr;
mt:real;
i:integer;
s:string;
begin
for i:=1 to n do
inp(man[i]);
writeln('Введите имя грузовика');
read(s);
mas(s,mt,man);
writeln(mt);
end.
Объяснение кода листинга программы
- Объявление константы:
- Название константы:
n - Значение константы:
3
- Название константы:
- Объявление типа записи
T_gruz:nm- строковая переменная для имени грузовикаms- вещественное число для массы грузовикаgp- вещественное число для грузоподъемности грузовика
- Объявление массива записей
T_grразмером 3:- Переменная
man- массив типаT_gr
- Переменная
- Процедура
inpдля ввода данных о грузовике:- Передается переменная
aтипаT_gruz
- Передается переменная
- Процедура
masдля вычисления суммарной массы и грузоподъемности грузовика:- Параметры:
s- строка для имени грузовикаm- переменная для суммарной массы и грузоподъемностиman- константное значение массиваT_gr
- Переменная
i- для цикла - Используется цикл по массиву
manдля нахождения грузовика с указанным именемs
- Параметры:
- В переменные
manвводятся данные о грузовиках с помощью процедурыinp - Вводится имя грузовика в переменную
s - Вызов процедуры
masдля расчета суммарной массы и грузоподъемности грузовика по заданному имени - Выводится значение переменной
mt- суммарная масса и грузоподъемность грузовика с указанным именем.