Считываем сколько чисел получим(или сами решаем чему равно n), делаем цикл на считывание каждого, ищем в них мин и макс.
VAR N, i:integer;
k, min, max:real;
begin
readln(N);
for i:=1 to N do begin
readln(k);
if i=1 then begin min:=k; max:=k end
else if k<min then min:=k
else if k>max then max:=k;
end;
writeln(min-max);
end.
Поскольку в восьмеричной системе на две цифрвы меньше, чем в десятичной, при сложении перенос в старший разряд происходит на две единицы раньше, следовательно и результат в каждом разряде получается на два больше. А так - все то же самое.
Аналогично, при вычитании мы "занимаем" в старшем разряде не 10, а 8, поэтому и результат вычитания в разряде получается на два меньше, чем в десятичной системе
C Готовых домашнии задании посмотри!
var
a: array [1..4] of string;
s: string := 'бвгджзйклмнпрстфхцчшщъь';
i, j: byte;
begin
for i := 1 to 4 do
readln(a[i]);
for i := 1 to 4 do
for j := 1 to length(a[i]) do
delete(s, pos(a[i][j], s), 1);
writeln();
writeln(s);
end.
>котики
>это
>несказанное
>добро
>вгжйлмпфхцчшщъь