The OpenNET Project / Index page

[ новости /+++ | форум | теги | ]

форумы  помощь  поиск  регистрация  майллист  ВХОД  слежка  RSS
"алгоритм разложения на слагаемые"
Вариант для распечатки  
Пред. тема | След. тема 
Форумы Программирование под UNIX (Public)
Изначальное сообщение [Проследить за развитием треда]

"алгоритм разложения на слагаемые"  
Сообщение от Melkiades email on 05-Янв-07, 18:57 
Добрый день!
Подскажите, как покороче запрограммировать такую задачу:

Вывести все представления натурального числа М суммой натуральных чисел
Перестановка слагаемых нового способа представления не дает
Ограничения 2<M<40.

Пример:
M = 5;
4+1
3+2
3+1+1
2+2+1
2+1+1+1
1+1+1+1+1

Высказать мнение | Ответить | Правка | Наверх | Cообщить модератору

 Оглавление

Сообщения по теме [Сортировка по времени, UBB]


1. "алгоритм разложения на слагаемые"  
Сообщение от ACCA (ok) on 06-Янв-07, 09:22 
Попробуй отладить что-нибудь вроде:


void sums(int N, const char *prev) {
   char  string[MAX];

   for (int i=1; i< N/2; i++) {
           printf("%i + %i %s", i, N-i, prev);

           sprintf(string, "+ %i\n", i); sums(N-i, string);
           sprintf(string, "+ %i\n", N-i); sums(i, string);
           sums(i, " + "); sums(N-i, "\n");
   }
}


sums(N, "\n");

Высказать мнение | Ответить | Правка | Наверх | Cообщить модератору

2. "алгоритм разложения на слагаемые"  
Сообщение от Melkiades on 09-Янв-07, 19:50 
>Попробуй отладить что-нибудь вроде:
да, очень попахивает тем что нужно применять рекурсию....попробую..
Высказать мнение | Ответить | Правка | Наверх | Cообщить модератору

Архив | Удалить

Индекс форумов | Темы | Пред. тема | След. тема
Оцените тред (1=ужас, 5=супер)? [ 1 | 2 | 3 | 4 | 5 ] [Рекомендовать для помещения в FAQ]




Партнёры:
PostgresPro
Inferno Solutions
Hosting by Hoster.ru
Хостинг:

Закладки на сайте
Проследить за страницей
Created 1996-2024 by Maxim Chirkov
Добавить, Поддержать, Вебмастеру