impressive_i

Количество сочетаний из n по k элементов

Apr 9th, 2020
149
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
  1. {Задача: найти количество сочетаний из n по k элементов}
  2.  
  3.  program combinations;
  4.  uses crt;
  5.  
  6.  { Функция принимает p, возвращает p! = 1*2*3*...*p }
  7.  function fact( p : integer ) : integer;
  8.  var mult : integer;
  9.      current : integer;
  10.  begin
  11.      mult := 1;
  12.      for current := 2 to p do
  13.          mult := mult * current;
  14.      result := mult;
  15.  end;
  16.  
  17.  { Функция возвращает количество сочетаний из n по k элементов}
  18.  function Cnk( n, k : integer ) : real;
  19.  begin
  20.      result := fact(n) / ( fact(k) * fact(n-k) );
  21.  end;
  22.  
  23.  var comb : integer; // количество сочетаний из n по k элементов
  24.         n : integer; // количество всех элементов
  25.         k : integer; // количество элементов в группе
  26.        
  27.  begin
  28.     write('Введите количество всех элементов: '); readln(n);
  29.     write('Введите количество элементов в одной группе: '); readln(k);
  30.    
  31.     writeln('Количество сочетаний из ',n,' по ',k,' = ', Cnk(n, k) );
  32.  end.
RAW Paste Data