Комбинаторные объекты и числа - вычислить значение выражения - PascalABC.NET
Формулировка задачи:
вечер добрый! помогите пожалуйста с этим заданием . не могу составить программу вычисления
заранее благодарю
Решение задачи: «Комбинаторные объекты и числа - вычислить значение выражения»
textual
Листинг программы
- program tak;
- {возвращает число сочетаний из M по N}
- function Combin(N, M: longint): longint;
- var
- C, r, i: longint;
- begin
- C := 1;
- if N <= M then {проверка корректности входных данных}
- begin
- if N > (M - N) then
- N := M - N;
- r := (M - N + 1); {граница окончания цикла по i}
- i := M;
- while i >= r do {вместо for - т.к. for не поддерживает тип QWord}
- begin
- C := (C * i) div (M + 1 - i);
- Dec(i);
- end;
- end;
- Combin := C;
- end;
- var
- s, temp: longint;
- i, w: integer;
- begin
- w := 2;
- s := 0;
- for i := 1 to w do
- begin
- temp := Combin(w - i, 16);
- if odd(i) then
- s := s - temp
- else
- s := s + temp;
- end;
- for i := w + 1 to 17 do
- begin
- temp := Combin(i, 17);
- if odd(i) then
- s := s - temp
- else
- s := s + temp;
- end;
- writeln(s);
- end.
ИИ поможет Вам:
- решить любую задачу по программированию
- объяснить код
- расставить комментарии в коде
- и т.д