Даны числа А,В,С. Вычислить сумму положительных и произведение отрицательных. Если произведение по модулю больше, чем модуль суммы, то у отрицательных изменить знак на противоположный, иначе у положительных

code: #pascal
program PascalGuru;
 
var A,B,C:real;   {инициализация переменных ABC}
    summa,pr:real;{переменные суммы и произведения}
 
begin
write('A= '); readln(A); {ввод A}
write('B= '); readln(B); {ввод B}
write('C= '); readln(C); {ввод C}
 
summa:=0; {Обнуляем значения переменной суммы }
pr:=1;    {Обнуляем значения переменной произведения }
 
{ниже Вычисляем сумму и произведение:}
if A>0 then summa:=summa+A else pr:=pr*A;
if B>0 then summa:=summa+B else pr:=pr*B;
if C>0 then summa:=summa+C else pr:=pr*C;
{---- конец вычисления суммы и произведения}
 
writeln;
writeln('Summa: ',summa:15:2);   {выводим на экран сумму}
writeln('Proizvedenie: ',pr:8:2);{выводим на экран произведение}
 
if abs(pr)>abs(summa) then  {Если произведение по модулю больше, чем модуль суммы}
                      begin {тогда ниже меняем знак у отрицательных}
                      if A<0 then A:=-A;
                      if B<0 then B:=-B;
                      if C<0 then C:=-C;
                      end
                      else {иначе ниже меняем знак у положительных}
                      begin
                      if A>0 then A:=-A;
                      if B>0 then B:=-B;
                      if C>0 then C:=-C;
                      end;
 
writeln;
writeln('Preobrazovannye: ');  {ниже выводим преобразованных ABC на экран}
writeln('A= ',A:0:2); {вывод A}
writeln('B= ',B:0:2); {вывод B}
writeln('C= ',C:0:2); {вывод C}
 
 
readln;
end.      
Поделиться:

Похожие статьи: