Hola Diego:<div><br></div><div>Tal como planteas el problema no puedo saber qué es lo que sabes y cómo lo quieres hacer.</div><div><br></div><div>He preparado un ejemplo sencillo de cómo puedes almacenar un entero en un  array de manera que luego puedas tratar las cifras de forma independiente.</div>
<div><br></div><div>Como verás, solo es un ejemplo que te permite almacenar un entero y luego lo tendrías que hacer con otro y aplicar el algoritmo que deseas, el código es este:</div><div><br></div><div><div>#include <stdio.h></div>
<div>#include <stdlib.h></div><div><br></div><div>#define   N  10</div><div><br></div><div>void  int_2_array(int, int []);</div><div>void  set_0_array(int []);</div><div>void  print_array(int []);</div><div><br></div>
<div>void  int_2_array(int n, int v[]){</div><div><span class="Apple-tab-span" style="white-space:pre">    </span>  int coc;     // cociente</div><div><span class="Apple-tab-span" style="white-space:pre">        </span>  int res;     // resto</div>
<div><span class="Apple-tab-span" style="white-space:pre">      </span>  int i = 0;   // índice del array de enteros</div><div><span class="Apple-tab-span" style="white-space:pre">     </span>  </div><div><span class="Apple-tab-span" style="white-space:pre">  </span>  coc = n/10;</div>
<div><span class="Apple-tab-span" style="white-space:pre">      </span>  res = n%10;</div><div><span class="Apple-tab-span" style="white-space:pre">       </span>  v[i]=res; ++i;</div><div><span class="Apple-tab-span" style="white-space:pre">    </span>  </div>
<div><span class="Apple-tab-span" style="white-space:pre">      </span>  while (coc != 0) {</div><div><span class="Apple-tab-span" style="white-space:pre">                        </span>n = coc;</div><div><span class="Apple-tab-span" style="white-space:pre">                     </span>coc = n/10;</div>
<div><span class="Apple-tab-span" style="white-space:pre">                      </span>res = n%10;</div><div><span class="Apple-tab-span" style="white-space:pre">                  </span>v[i] = res; ++i;</div><div><span class="Apple-tab-span" style="white-space:pre">     </span>  }</div>
<div>}</div><div>void  set_0_array(int v[]){</div><div><span class="Apple-tab-span" style="white-space:pre">   </span>  int i; // índice del array de enteros</div><div><span class="Apple-tab-span" style="white-space:pre">    </span>  </div>
<div><span class="Apple-tab-span" style="white-space:pre">      </span>  for (i=0; i < N; ++i) v[i]= 0;</div><div>}</div><div>void  print_array(int v[]){</div><div><span class="Apple-tab-span" style="white-space:pre">      </span>  int i; // índice del array de enteros</div>
<div><span class="Apple-tab-span" style="white-space:pre">      </span>  </div><div><span class="Apple-tab-span" style="white-space:pre">  </span>  printf("{");</div><div><span class="Apple-tab-span" style="white-space:pre">    </span>  for(i=N-1; i >=0; --i) printf("%3d", v[i]);</div>
<div><span class="Apple-tab-span" style="white-space:pre">      </span>  printf("}\n");</div><div>}</div><div><br></div><div>int main(void)</div><div>{</div><div><span class="Apple-tab-span" style="white-space:pre">    </span>int vector[N];</div>
<div><span class="Apple-tab-span" style="white-space:pre">      </span>int x = 1234; // ejemplo de uso</div><div><span class="Apple-tab-span" style="white-space:pre">      </span></div><div><span class="Apple-tab-span" style="white-space:pre">     </span>set_0_array(vector);</div>
<div><span class="Apple-tab-span" style="white-space:pre">      </span>int_2_array(x, vector);</div><div><span class="Apple-tab-span" style="white-space:pre">      </span>print_array(vector);</div><div><span class="Apple-tab-span" style="white-space:pre"> </span></div>
<div><span class="Apple-tab-span" style="white-space:pre">      </span>system("pause");</div><div><span class="Apple-tab-span" style="white-space:pre">   </span>return 0;</div><div>}</div></div><div><br></div><div>Saludos</div>
<div>José Luis</div><div><br></div><div><br></div><div><br><div class="gmail_quote">El 31 de diciembre de 2012 18:32, Diego <span dir="ltr"><<a href="mailto:difehe_nima@hotmail.com" target="_blank">difehe_nima@hotmail.com</a>></span> escribió:<br>
<blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex">Hola necesito ayuda para realizar este programa:<br>
<br>
<br>
Para enseñar a multiplicar se puede usar el método conocido como algoritmo “ABN”. En esencia consiste en descomponer cada número en suma de dígitos por potencias de 10, calcular todos los productos posibles con los sumandos y sumar todos los resultados, realizando el proceso de forma tabular1. Una forma cómoda de realizarlo a mano es hacer las sumas por filas (o por columnas) y luego sumar todos estos resultados.<br>

Realice un programa que muestre la construcción progresiva de la tabla.<br>
Se pedirán y validarán dos números estrictamente positivos y de 4 cifras a lo sumo. Los resultados se mostrarán por pantalla. El programa debe preguntar a continuación por un nombre de fichero para escribir (como texto) los mismos resultados. Si el fichero se crea correctamente se grabarán los resultados y se mostrará el mensaje adecuado. En caso contrario el mensaje será de error. En cualquier caso el programa termina. Un ejemplo de ejecución es el siguiente (con error en la grabación):<br>

Escriba un entero positivo para multiplicar (máx 4 cifras): 23<br>
Escriba un entero positivo para multiplicar (máx 4 cifras): 456789<br>
Error: No cumple las condiciones pedidas<br>
Escriba un entero positivo para multiplicar (máx 4 cifras): 1803<br>
Se realizará la multiplicación 23 x 1803<br>
Imprimiendo los resultados en pantalla.<br>
23 x 1803<br>
Matriz preparada para multiplicar:<br>
| 1000 800 0 3<br>
------------------------------------------<br>
20|<br>
3|<br>
Multiplicaciones:<br>
| 1000 800 0 3<br>
------------------------------------------<br>
20| 20000 16000 0 60<br>
3| 3000 2400 0 9<br>
Sumas parciales y Resultado final:<br>
| 1000 800 0 3<br>
------------------------------------------<br>
20| 20000 16000 0 60| 36060<br>
3| 3000 2400 0 9| 5409<br>
------------------------------------------<br>
| 23000 18400 0 69| 41469<br>
Escriba el nombre del fichero de salida: /salida.txt<br>
Error: No se puede generar el fichero de salida.<br>
FIN del programa<br>
_______________________________________________<br>
Lista de correo Cconclase <a href="mailto:Cconclase@listas.conclase.net">Cconclase@listas.conclase.net</a><br>
<a href="http://listas.conclase.net/mailman/listinfo/cconclase_listas.conclase.net" target="_blank">http://listas.conclase.net/mailman/listinfo/cconclase_listas.conclase.net</a><br>
Bajas: <a href="http://listas.conclase.net/index.php?gid=2&mnu=FAQ" target="_blank">http://listas.conclase.net/index.php?gid=2&mnu=FAQ</a></blockquote></div><br><br clear="all"><div><br></div>-- <br><div>José Luis Torre</div>

<div><a href="http://ww.ehu.es/" target="_blank">ww.ehu.es</a></div>
<div> </div>
</div>