102
PROGRAM primer_4;
Var n,m: Integer; f: Real;
FUNCTION fact(n: Integer): Integer;
Var i,p : Integer;
BEGIN p:=1;
For i:=2 To n do p := p* i;
fact:= p
END;
BEGIN
Write(‘ m = ‘);
ReadLn(m);
Write(‘ n = ‘);
ReadLn(n);
f:= fact(n) * fact(m) / fact(n+m);
Writeln(f)
END.
Пример 5. Напишите программу вычисления степени числа
X
n
,
где
n –
целое число,
0.
X
Степень числа с целым показателем
вычислите по
формуле
1, если
0;
, если
0;
1
, если
0.
n
n
n
n
X
X
n
n
X
При решении задачи использовать функцию пользователя.
PROGRAM Primer_5;
Var {Глобальные переменные:
n, x, konz}
n: integer; {Степень числа}
x: real; {Основание числа}
konz: real; {Результат вычислений}
{Функция Xst}
FUNCTION Xst (k:integer; y: real):real; {Список формальных па-
раметров
k, y}
103
{Входные параметры k- показатель степени, y –
основание сте-
пени; выходной параметр Xst – значение y^k}
Var j: integer; {Локальные переменные j, rez}
rez: real;
BEGIN
rez:=1;
j:=1;
While j <= k do
begin
rez:=rez*y; {Вычисление степени}
inc(j); {Следующее значение j}
end;
xst:=rez;
END;
BEGIN
Write('Введите показатель степени числа = ');
ReadLn(n);
Write('Введите основание степени = ');
ReadLn(x);
if n=0 then konz:=1
else if n>0 then konz:=Xst(n,x) {Вызов
функции Xst из
выражения}
{Фактические
параметры n, x}
{Входные параметры n, x; выходной параметр Xst}
else konz:=Xst(-n,1/x); {Вызов функции Xst из выражения}
{Фактические
параметры -n, 1/x}
{Входные параметры -n, 1/x; выходной параметр Xst}
WriteLn(x:8:2,' в степени ', n,' = ',konz:8:3);
END.
Do'stlaringiz bilan baham: