• Предмет: Информатика
  • Автор: СтарыйМатематик
  • Вопрос задан 2 года назад

Решить задачу в стиле турбо паскаля 80-х годов.
Тема: Одномерные массивы
Известны данные о мощности двигателя(в л.с.) и стоимости 30-ти марок легковых автомобилей. Напечатать стоимость каждого из автомобилей, у которых мощность двигателя не превышает 80 л.с.

Ответы

Ответ дал: Аноним
2
uses Crt;

const
  n=30;

type
  tA=array[1..n] of integer;
  tS=array[1..n] of string[30];
 
var
  i:integer;
  p,c:tA;
  s:tS;

begin
  ClrScr;
  for i:=1 to n do begin
    Write('Марка автомобиля ',i,': ');
    Readln(s[i]);
    Write('его мощность (л.с.) и стоимость (руб.); ');
    Readln(p[i],c[i])
    end;
  Writeln;  
  Writeln('Автомобили мощностью не более 80 л.с.');
  for i:=1 to n do
    if p[i]<=80 then Writeln(s[i]:30,p[i]:10,c[i]:10);
  ReadKey;
end.

СтарыйМатематик: зачем type использовать? не проще ли было массивы объявить сразу в var ?
Аноним: Можно и так, и так. "Классика жанра" от Н.Вирта в том, чтобы объявлять границы массива в const, определять типы таких массивов в type, а уж потом описывать переменные этого типа в var. А "трубопаскакаль" исходил в своих парадигмах именно из виртовских концепций.
Аноним: Читайте книгу Н.Вирта "Алгоритмы + структуры данных - программы", а. также книгу К.Йенсен. Н.Вирт. "Паскаль. Руководство для пользователя". Если Вы любитель истории.
Вас заинтересует