• Viernes 19 de Abril de 2024, 22:45

Autor Tema:  Descomponer sumatorio de un numero  (Leído 2533 veces)

neg1414

  • Miembro activo
  • **
  • Mensajes: 28
    • Ver Perfil
Descomponer sumatorio de un numero
« en: Jueves 20 de Mayo de 2010, 18:00 »
0
Buenas:

 Lo que intento es descomponer un numero en todos sus sumatorios pero siendo la primera cifra siempre la misma, es decir
por ejempol Numero 11,Primera cifra 6

 6-1-1-1-1-1
 6-1-1-1-1-2
 6-1-1-2-1
 6-1-1-3
 ......
.......
 6-2-1-1-1
 6-2-2-1
 6-2-3
 .....
 .....
6-5


He creado el siguiente algoritmo recursivo (en C)

Código: C++
  1. Principal()
  2.    {
  3.         Sumandos(11,1,6,"6 ");
  4.    }
  5.  
  6. Sumandos(int Nv,int i,int Sum,AnsiString s)
  7. {
  8.    if(Sum==Nv)
  9.     {
  10.       Mostrar(s);
  11.     }
  12.  
  13.    for (int a=Sum;a<Nv; a++)
  14.     {
  15.       Sumandos(Nv,i++,Sum+i,s+IntToStr(i)+" ");
  16.     }
  17. } 
  18.  

Pero el resultado solo es:

6 1 1 1 1 1
6 1 1 1 2
6 1 1 3
6 1 2 2
6 1 4
6 2 3
6 5

Me faltan combinaciones ejp  6-2-2-1

Alguna idea Gracias