Var M: array[1..32767] of real; Min: real; N, i: integer; Begin Write('N = ');ReadLn(N); if (N <= 0) then WriteLn('Количество элементов должно быть положительно') else begin Write('Введите элементы массива в количестве ',N,' штук'); For i:= 1 to N do Read(M[i]); Min := M[1]; For i:= 2 to N do if (M[i] < Min) then Min := M[i]; WriteLn; Write('Получившийся массив:'); For i:= 1 to N do begin M[i] := M[i] / Min; Write(' ',M[i]); end; end End.
вот 3 варианта решения задачи:
1. с временной целочисленной переменной вместо булеан.
var
a, f : integer;
begin
write('введите число: ');
readln(a);
while a div 10 > 0 do begin
if (a mod 10) >= ((a mod 100) div 10) then f := 1;
a := a div 10;
end;
if f = 0 then writeln('ДА') else writeln('НЕТ');
end.
2. с строчной переменной которой присваивается текст ответа.
var
a : integer;
f : string := 'ДА';
begin
write('введите число: ');
readln(a);
while a div 10 > 0 do begin
if (a mod 10) >= ((a mod 100) div 10) then f := 'НЕТ';
a := a div 10;
end;
writeln(f);
end.
3. без дополнительных переменных но с оператором break.
var
a : integer;
begin
write('введите число: ');
readln(a);
while a div 10 > 0 do begin
if (a mod 10) >= ((a mod 100) div 10) then begin
writeln('НЕТ');
break;
end;
a := a div 10;
if a < 10 then writeln('ДА');
end;
end.