В последовательности действительных чисел a1, a2, …, an есть только положительные и отрицательные элементы. Вычислить произведение отрицательных элементов P1 и произведение положительных элементов Р2. Указать какое произведение по модулю больше — Pascal(Паскаль)

program tmp;
uses crt;
const count=50;
var
   i,n,p1,p2:integer;
   mas:array[1..count] of integer;
begin
clrscr;
readln(n);
for i:=1 to n do begin
                 repeat
                 mas[i]:=random(50)-25;
                 until mas[i]<>0;
                 end;
clrscr;
write('mas:');writeln;
for i:=1 to n do write(mas[i]:4);
writeln;
p1:=1;
p2:=1;
for i:=1 to n do if mas[i]<0 then p1:=p1*mas[i]
                 else p2:=p2*mas[i];
if abs(p1)>abs(p2) then write('p1 bolshe') 
else if abs(p2)>abs(p1) then write('p2 bolshe') 
      else write('ravni');
readkey;
end.

Следующий вариант

uses crt;
type treug=record
           a,b,c:real;
           end;
var t:treug;
    p,s:real;
begin
clrscr;
repeat
writeln('Введите стороны треугольника:');
readln(t.a,t.b,t.c);
if(t.a<=abs(t.b-t.c))or(t.a>=t.b+t.c)then
writeln('Это не треугольник. Повторите вод.');
until (t.a>abs(t.b-t.c))and(t.a<t.b+t.c);
p:=t.a+t.b+t.c;
writeln('Периметр=',p:0:2);
p:=p/2;
s:=sqrt(p*(p-t.a)*(p-t.b)*(p-t.c));
write('Площадь=',s:0:2);
readln
end.

Leave a Comment

45 − 37 =