Задание 12 Параграф 9 ГДЗ Босова 11 класс (Информатика)
- Напишите программу вычисления. Используйте подпрограмму.
Число сочетаний без повторений из $$n$$ по $$k$$ вычисляется по формуле:
$$C_n^k=\frac{n!}{k!(n-k)!}$$
Удобно вынести вычисление факториала в подпрограмму-функцию. Тогда основная программа будет только считывать $$n$$ и $$k$$ и подставлять их в формулу.
Вариант с рекурсией:
function F(m: integer): integer;
begin
if m = 0 then F := 1
else F := F(m — 1) * m;
end;var
n, k: integer;
C: real;
begin
writeln(‘Введите n и k через пробел, n > k ‘);
readln(n, k);
C := F(n) / (F(n — k) * F(k));
writeln(‘C=’, C);
end.
Вариант без рекурсии:
function F(m: integer): integer;
var
i, fa: integer;
begin
fa := 1;
for i := 1 to m do
fa := fa * i;
F := fa;
end;var
n, k: integer;
C: real;
begin
writeln(‘Введите n и k через пробел, n > k ‘);
readln(n, k);
C := F(n) / (F(n — k) * F(k));
writeln(‘C=’, C);
end.
Ответ
Программа для вычисления числа сочетаний без повторений из $$n$$ по $$k$$ составляется с использованием подпрограммы-функции для нахождения факториала.

