Члены кружка ознакомились с понятием факториал числа -добуток натуральных чисел от 1 до данного числа: n! = 1 * 2 * 3 n. сделайте программу по которой можно будет сравнить значение факториала числа и его квадрата
Var N,i:integer; F,K:real; Begin F:=1; Write('N = ');Read(N); K:=N*N; For i:= 2 to N do F:=F*i; if F = K then WriteLn('Факториал и квадрат равна: ',F,'=',K); if F < K then WriteLn('Квадрат больше факториала: ',F,'<',K); if F > K then WriteLn('Факториал больше квадрата: ',F,'>',K); End.
Var s:string; m,pk:real; a:array[1..20] of real; i,k,n:integer; begin Write('Введите число в системе счисления с основанием [2;16]: '); Readln(s); n:=Length(s); for i:=1 to n do begin if s[i] in ['0'..'9'] then a[i]:=Ord(s[i])-Ord('0') else if s[i] in ['A'..'F'] then a[i]:=Ord(s[i])-Ord('A')+10 else if s[i] in ['a'..'f'] then a[i]:=Ord(s[i])-Ord('a')+10 else begin Writeln('Символ ',s[i],' недопустим!'); Exit end end; Write('Введите основание системы счисления: '); Read(k); if (k<2) or (k>16) then begin Writeln('Такое значение недопустимо!'); Exit end; m:=a[n]; pk:=k; for i:=n-1 downto 1 do begin m:=m+a[i]*pk; pk:=pk*k end; Writeln('Десятичный эквивалент введенного числа равен ',m) end.
Тестовое решение Введите число в системе счисления с основанием [2;16]: 4e32Ca Введите основание системы счисления: 16 Десятичный эквивалент введенного числа равен 5124810
N,i:integer;
F,K:real;
Begin
F:=1;
Write('N = ');Read(N);
K:=N*N;
For i:= 2 to N do
F:=F*i;
if F = K then WriteLn('Факториал и квадрат равна: ',F,'=',K);
if F < K then WriteLn('Квадрат больше факториала: ',F,'<',K);
if F > K then WriteLn('Факториал больше квадрата: ',F,'>',K);
End.