Program trapeciya; var x1, x2 ,y1, y2, p, s: real; begin writeln("введите значение верхнего основания"); readln(y1); writeln("введите значение нижнего основания"); readln(y2); writeln("введите значение левой грани"); readln(x1); writeln("введите значение правой стороны"); readln(x2); p: =y1+y2+x1+x2; s: =((y1+y2)/2)*sqrt(sqr((sqr(y2-y1)+sqr(x1)-sqr(x2))/(2*(y2- writeln(p); writeln(s); end
Елена_Зайкин1665
23.09.2021
Вот пример вычисления факториала числа 200 const n=1000; {максимальное количество цифр в числе} type big=record v: array[1..n] of byte; {массив с цифрами числа} m: integer {количество цифр в числе} end; function str2big(s: string): big; {переводит строковое представление в big} var i,n,k,err: integer; r: big; begin n: =length(s); r.m: =n; for i: =1 to n do begin val(s[i],k,err); r.v[i]: =k end; str2big: =r end; function big2str(p: big): string; {переводит представление big в строковое} var i,n: integer; c,s: string; begin s: =''; n: =p.m; for i: =1 to n do begin str(p.v[i],c); s: =s+c end; big2str: =s end; function truncbig(a: big): big; {усекает незначащие нули} var i,p,n: integer; r: big; begin n: =a.m; p: =0; while (p< n) and (a.v[p+1]=0) do p: =p+1; for i: =1 to n-p do r.v[i]: =a.v[i+p]; r.m: =n-p; truncbig: =r end; function multbig(a,b: big): big; {возвращает произведение чисел типа big} var i,j,k,m,n,s: integer; r: big; begin m: =a.m; n: =b.m; for i: =m to m+n do r.v[i]: =0; r.m: =m+n; for j: =n downto 1 do begin if b.v[j]=0 then r.v[j+m+n-1]: =0 else begin k: =0; for i: =m downto 1 do begin s : =a.v[i]*b.v[j]+r.v[i + j]+k; r.v[i+j]: =s mod 10; k: =s div 10 end; r.v[j] : = k end end; multbig: =truncbig(r); end; var i: integer; s: string; bi,bs: big; begin bs: =str2big('1'); for i: =1 to 200 do begin str(i,s); bi: =str2big(s); bs: =multbig(bs,bi); end; s: =big2str(bs); writeln(s) end. результат 788657867364790503552363213932185062295135977687173263294742533244359449963403342920304284011984623904177212138919638830257642790242637105061926624952829931113462857270763317237396988943922445621451664240254033291864131227428294853277524242407573903240321257405579568660226031904170324062351700858796178922222789623703897374720000000000000000000000000000000000000000000000000