viernes, 9 de mayo de 2014

programa de recursividad

Programa de recursividad que realiza la multiplicación de 2 números
Proceso:
-cuando el 2do numero ingresado es 0 entonces el programa deberá retornar 0
-cuando el 2do numero ingresado es 1 entonces se deberá retornar el valor de 1er número ingresado
-Si el 2do numero ingresado es distinto de 0 y 1 entonces hay que evaluar los siguiente:
-Si el 2do numero es mayor que 1 se retorna a +multiplicar (a,b,-1)
-Si el 2do numero no es mayor que 1y su valor no es 1 ni tampoco es0 entonces-a+multiplicar (a,b+1)

#include<stdio.h>
#include<stdlib.h>
#include<dos.h>
#include<conio.h>
int multiplicar (int a,int b);
main()
{
int a,b;
printf("ingrese el 1er numero:");
scanf("%d",&a);
printf("ingrese el 2do numero:");
scanf("%d",&b);
printf("%d\n",multiplicar (a,b));
return 0;
}
int multiplicar (int a,int b)
{
int acu=0;
switch(b){
case 0:
return 0;
case 1:
return a;
default:
if(b>1){
return a+multiplicar (a,b-1);
}
else
return-a+multiplicar(a,b+1);
}

}

No hay comentarios.:

Publicar un comentario