Для двух треугольных пирамид, заданных ребрами, определить, площадь полной поверхности которой из них больше и на сколько. Сост
Для двух треугольных пирамид, заданных ребрами, определить, площадь полной поверхности которой из них больше и на сколько. Составить программу с ветвящейся структурой используя условный оператор if
<u>// PascalABC.NET 3.2, сборка 1407 от 18.03.2017</u> <u>// Внимание! Если программа не работает, обновите версию!</u>
function Geron(a,b,c:real):real; // возвращает площадь треугольника со сторонами a,b,c begin var p:=(a+b+c)/2; // полупериметр Result:=sqrt(p*(p-a)*(p-b)*(p-c)) end;
function Sp(ab,bc,ca,ad,bd,cd:real):real; // возвращает площадь полной поверхности пирамиды begin Result:=Geron(ab,bc,ca)+Geron(ab,ad,bd)+Geron(bc,bd,cd)+ Geron(ca,cd,ad) end;
begin var ab1,bc1,ca1,ad1,bd1,cd1:real; Vvod(ab1,bc1,ca1,ad1,bd1,cd1); var Sp1:=Sp(ab1,bc1,ca1,ad1,bd1,cd1); var ab2,bc2,ca2,ad2,bd2,cd2:real; Vvod(ab2,bc2,ca2,ad2,bd2,cd2); var Sp2:=Sp(ab2,bc2,ca2,ad2,bd2,cd2); var d:=Sp1-Sp2; if d>0 then Writeln('Площадь Sполн 1й пирамиды больше на ',d) else if d<0 then Writeln('Площадь Sполн 2й пирамиды больше на ',-d) else Writeln('Площади Sполн пирамид равны'); end.
randomize; for i:=1 to 10 do begin a[i]:= random(200) -100; write(a[i]:5); end;
writeln;
for i:=1 to 10 do if a[i]>=0 then a[i]:=a[i]/2 else a[i]:=i; write(a[i]:5);
end.
2) var a:array[1..1000] of real; s1,s2:real; i,n:integer; begin write('Введите кол-во элементов: '); readln(n); writeln('Введите элементы массивы: '); for i:=1 to n do read(a[i]);
s1:=0; s2:=0; for i:=1 to n do if odd(i) then s1:=s1+a[i] else s2:=s2+a[i];
writeln('Сумма элементов с четными номерами: ',s2); writeln('Сумма элементов с нечетными номерами: ',s1); end.