rambo189619

Recursividad

Apr 16th, 2013
235
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
C 1.24 KB | None | 0 0
  1. #include<stdio.h>
  2.  
  3.  
  4. void muestraMsgMenu();
  5. int leeOpcion();
  6. void ejecutaOpcion(int opcion);
  7. int nNaturales(int numero);
  8. int nCuadrado(int);
  9.  
  10. int main(){
  11.   int opcion=0;
  12.   muestraMsgMenu();
  13.   opcion=leeOpcion();
  14.   ejecutaOpcion(opcion);
  15.  
  16. return 0;
  17.  
  18. }
  19.  
  20. void muestraMsgMenu(){
  21. printf("   Introduzca una opción:\n ");
  22. printf("  1) Muestra los n primeros naturales separados por comas \n");
  23. printf("  3) Muestra los n primeros cuadrados de los números naturales separados por comas\n");
  24. }
  25. /*
  26.  Función que lee la opción.
  27.  @author Jonatan Millán Lázaro y Alberto Barriuso Gallo
  28.  @param opcion: Opcion que va a leer.
  29.  @return opcion: Devuelve la opcion elegida.
  30.  */
  31. int leeOpcion(){
  32.   int opcion=0;
  33.   scanf("%d",&opcion);
  34.   return opcion;
  35. }
  36.  
  37. void ejecutaOpcion(int opcion){
  38. printf("Introduce un numero N\n");
  39. int numero=leeOpcion();
  40.  
  41.   if(opcion==1){
  42.         printf("El resultado es %d",nNaturales(numero));
  43.   }else{
  44.     printf("El resultado es %d", nCuadrado(numero));
  45.  
  46.   }
  47.  
  48.  
  49. }
  50.  
  51. //Funcion imprime los N primeros naturales.
  52. int nNaturales(int numero){
  53. int resultado=1;
  54.    if(numero>0){
  55.       resultado=nNaturales(numero--);
  56.      }
  57.      
  58.      return resultado;
  59.  
  60. }
  61.  
  62. //Funcion que imprime los N primeros cuadrados.
  63. int nCuadrado(int numero){
  64.     return numero*numero;
  65.  
  66. }
Advertisement
Add Comment
Please, Sign In to add comment