Форум программистов, компьютерный форум CyberForum.ru

Программу для поиска сочетаний в С. - C++

Восстановить пароль Регистрация
 
Shoovul
0 / 0 / 0
Регистрация: 21.12.2010
Сообщений: 2
03.02.2011, 17:12     Программу для поиска сочетаний в С. #1
Вот программа на С, должна выдавать сочетания из m по n, но почему-то получаются не все варианты. Как её можно исправить? Очень хотелось бы получить ответ до завтра. Писал не я, сразу предупреждаю. Заранее спасибо.


C
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
#include <stdio.h>
#include <stdlib.h>
 
void cnk(int* array, int* for_print, int arr_index, 
int print_index, int n, int m) {            
if (m > 0) {                        
int k;
for (k = arr_index; k < n - m + 1; ++k) {       
for_print[print_index] = array[k];
cnk(array, for_print, k + 1, print_index + 1, n, m - 1);  
}
} else if (m == 0) {                    
int k;
for (k = 0; k < print_index; ++k) {
printf("%d ", for_print[k]);                
}
printf("\n");
}
}
 
int main() {                    
int n, m, i;
int* array;
int* for_print;
printf("n = ");                     
scanf("%d", &n);
array = (int*)malloc(n * sizeof(int));          
printf("array of %d elements: ", n);
for (i = 0; i < n; ++i) {
scanf("%d", &array[i]);                 
}
printf("m = ");
scanf("%d", &m);
for_print = (int*)malloc(m * sizeof(int));      
cnk(array, for_print, 0, 0, n, m);          
free(for_print);                    
free(array);
return 0;
}
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
03.02.2011, 17:12     Программу для поиска сочетаний в С.
Посмотрите здесь:

C++ Задан двумерный массив. Составьте программу для поиска в этом массиве
C++ Написать программу для поиска определителя до 10 порядка включительно
Разработать программу для сравнительного графического анализа алгоритмов сортировки и поиска C++
Составить программу для поиска совпадений в словах C++
Разработать программу для поиска файла в текущем каталоге C++
Составить программу вычисления числа сочетаний из N по M C++
C++ Написать программу для поиска всех элементов в массиве за заданным ключом
Разработать программу для итерационного поиска размера равномерных выплат по кредиту C++

Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
После регистрации реклама в сообщениях будет скрыта и будут доступны все возможности форума.
Mycola
22 / 12 / 13
Регистрация: 23.03.2013
Сообщений: 157
15.01.2014, 11:52     Программу для поиска сочетаний в С. #2
просто проверь по формуле, количество сочетаний из n по k равно Сkn=n!/((n-k)!*k!)
Yandex
Объявления
15.01.2014, 11:52     Программу для поиска сочетаний в С.
Ответ Создать тему
Опции темы

Текущее время: 09:03. Часовой пояс GMT +3.
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2016, vBulletin Solutions, Inc.
Рейтинг@Mail.ru