Другие языки программирования и технологии

turbo pascal 7.0!

1) Введите последовательность вещественных чисел, пока не введёте 0. Составить программу поиска разности между минимальным и максимальным числами. 2) Введите последовательность целых чисел, пока не введёте 0. Найти сумму и количество чисел, оканчивающихся на 2.
итак вот примерный код к 1 задаче (я надеюсь разность между МАКСИМУМОМ И МИНИМУМОМ МАХ - MIN, если всеже наоборот в результате поменяйте местами)

program....
uses CRT;
var
max,min,i,N:integer;
b:array of integer;
begin
N:=0;
// заполнение массива
repeat
writeln('vvedite element massiva');
inc(N)
setlenght(b,N);
readln(b[ N ]) ;
until (b[ N ] = 0 );

max:=b[1]; // допустим 1 элементы массива максимальный и минимальный
min:=b[1];
for i:=2 to N do
begin
if b [ i ] > max then max:= b [ i ];
if b [ i ] < min then min:= b [ i ];
end;
writeln('разность между MAX и MIN равно ', max-min);
readkey; // задержка до нажатия клавиши
end.

ГЕННАДИЙ!! ! МУЖИК! ! ОБОШЕЛ 2 РАЗ УЖЕ, ПРИЧЕМ НА ТОЙЖЕ САМОЙ ЗАДАЧЕ =))))
У.
Умедчон ............
3 774
Лучший ответ
И что не получается?

repeat
ReadLn(n);
if n <> 0 then begin
{а здесь проверяете введенное n и запоминаете наибольшее и наименьшее в двух переменных min и max}
if n < min then min := n;
end;
until n = 0;
WriteLn('Разность равна : ', min - max);

Вторая такая же, только надо проверять последнюю цифру числа. Тут функция MOD вам поможет.

2 Влад: А объясни на зачем тебе массив? :-) Проверяй прямо при вводе и получишь тот же результат с меньшими накладными расходами. :-) Тем более, что в ТР нет такой штуки setlenght(b,N); если не изменяет склероз.
Андрей Боярков
Андрей Боярков
59 613