Ver Mensaje Individual
  #2 (permalink)  
Antiguo 27/10/2014, 23:15
Avatar de leosansan
leosansan
 
Fecha de Ingreso: mayo-2012
Ubicación: GRAN CANARIA
Mensajes: 194
Antigüedad: 12 años
Puntos: 49
Respuesta: problema en c++

Cita:
Iniciado por andresbarreto18 Ver Mensaje
Hola comunidad, soy nuevo en esto de programar y no entiendo como hacer esta función si alguien me puede guiar de como seria se lo agradecería...
Modele mediante una función matemática y diseñe un programa recursivo que determine
la cantidad de dígitos que componen un número natural
Tienes que crear una función que reciba por un lado el número y por otro las cifras, que inicialmente son cero. Dentro de la función invocas a la misma función pasándole esta vez el número dividido por diez y, en consecuencia, el número de dígitos aumentado en uno. Así hasta que el número sea cero.

Bueno, creo que es tan sencillo que espero no se molesten por darte una posible solución que no es más que lo que te he explicado. Ya luego tú tendrás que implementar la entrada del número, etc.

Código C++:
Ver original
  1. #include <stdio.h>
  2.  
  3. int Digitos ( int num , int digit ) {
  4.   if ( num > 0 )
  5.     Digitos ( num / 10 , digit + 1 ) ;
  6.   else
  7.     return digit ;
  8. }
  9.  
  10. int main ( void ) {
  11.   int num = 123456789 , digit = 0 ;
  12.   printf( "\n\tDigitos = %d.\n\n" , Digitos ( num , digit ) ) ;
  13.   return 0 ;
  14. }

¡¡¡Saluditos!!!