АЛГОРИТМЫ

Новости

Рассылка новостей

Форум

AlgoPascal

Редактор блок-схем

Статьи

О сайте

Контакты



Содержание - Комбинаторика - Число сочетаний из n по m

Нахождение числа сочетаний из n по m

Функция находит число сочетаний из n элементов по m:

Вычисления проводятся по рекурентной формуле:

Если нашли ошибку в алгоритме - сообщите!



Реализации алгоритма на различных языках:

Реализация алгоритма на C++
Реализация алгоритма на Delphi
Реализация алгоритма на Visual Basic 6

Блоксхемы:

Посмотреть блок-схему алгоритма
Скачать блок-схему алгоритма


Реализация алгоритма на AlgoPascal:

unit CombinationsUnit;

interface
    CombinationsNM;
implementation

(*
находит число сочетаний C(n,m).
*)
function CombinationsNM(
    n   :   Integer;
    m   :   Integer):Integer;
var
    I   :   Integer;
begin
    if n<m then
    begin
        Result:=0;
    end
    else
    begin
        if m>n/2 then
            m:=n-m;
            
        if m=0 then
            Result:=1
        else
        begin
            n:=n+1;
            Result:=1;
            i:=1;
            repeat
                Result:=(Result*(n-i)) div i;
                i:=i+1
            until not(i<=m);
        end;
    end;
end;


end.

 


Бочканов Сергей, Быстрицкий Владимир
Copyright © 1999-2004
При поддержке проекта MANUAL.RU