Даны целые числа m и n, вычислить, используя рекурсию, число сочетаний - C#
Формулировка задачи:
Даны целые числа m и n, где 0 ≤ m ≤ n, вычислить, используя рекурсию, число сочетаний С(n, m) по формуле: , при 0 ≤ m ≤ n. Воспользовавшись формулой можно проверить правильность результата.
Как это реализовать в c#, что-то я вообще понять не могу
Решение задачи: «Даны целые числа m и n, вычислить, используя рекурсию, число сочетаний»
textual
Листинг программы
- static public int Combination(int n, int r)
- {
- if (n < 0 || r < 0) throw new ArgumentException("Отрицательные аргументы недопустимы");
- if (n < r) return 0;
- if (n == r) return 1;
- if (r == 1) return n;
- return n * Combination(n - 1, r - 1) / r;
- }
- static void Main(string[] args)
- {
- var rnd = new Random();
- for (var i = 1; i <= 10; i++)
- {
- var _n = rnd.Next(15);
- var _r = rnd.Next(15);
- Console.Write("C({0},{1}) = ", _n, _r);
- try
- {
- Console.WriteLine(Combination(_n, _r));
- }
- catch(Exception ex)
- {
- Console.WriteLine(ex.Message);
- }
- }
- Console.ReadKey();
- }
ИИ поможет Вам:
- решить любую задачу по программированию
- объяснить код
- расставить комментарии в коде
- и т.д