program p;
var s,a,b,c:string;
begin
s:='геометрические фигуры';
writeln('введите названия трёх геометрических фигур');
read(a,b,c);
writeln(s,': ',a,', ',b,' и ',c);
end.
Я считаю, что словами написано верное условие, в приведенном фрагменте ошибка: вместо x > 0 должно быть x >= 0
var x: integer;
begin
readln(x);
if x >= 0 then
x := x - 50
else
x := x + 100;
writeln(x)
end.
Пример ввода:
0
Пример вывода:
-50
<em>// PascalABC.NET 3.3, сборка 1634 от 14.02.2018</em>
<em>// Внимание! Если программа не работает, обновите версию!</em>
<u>№1</u>
begin
var a:=ArrRandom(ReadInteger('n='),-50,50); a.Println;
var kp:=a.Where(t->t>0).Count;
var kn:=a.Where(t->t<0).Count;
Writeln('Положительных ',kp,', отрицательных ',kn);
if kp>kn then Writeln('Положитьельныъ больше')
else
if kn>kp then Writeln('Отрицательных больше')
else Writeln('Положительных и отрицательных поровну')
end.
<u>№2</u>
begin
var a:=ArrRandom(ReadInteger('n='),-50,50); a.Println;
var (min,max):=(a.Min,a.Max);
Writeln('Минимум ',min,', максимум ',max);
if Abs(min)<Abs(max) then Writeln('Модуль минимума меньше')
else
if Abs(max)<Abs(min) then Writeln('Модуль максимума меньше')
else Writeln('Модули максимума и минимума равны')
end.
С минимальной степенью сжатия. чем больше сжатие, тем медленее процесс
var i, multi:integer;
s:string;
begin
readln(s);
multi:=1;
for i:=1 to length(s) do begin
if StrToInt(s[i]) mod 3 = 0 then
multi:=multi*StrToInt(s[i]);
end;
if multi = 1 then
writeln('Нет')
else
writeln(multi);
end.