Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- //http://rextester.com/live/POT93519
- //gcc 5.4.0
- #include <stdio.h>
- int main(){
- int multiplicando, multiplicador, resultado;
- scanf("%d%d",&multiplicador,&multiplicando);
- resultado = mult_rusa(multiplicador, multiplicando);
- printf("Resultado: %d",resultado);
- return 0;
- }
- //int suma=0; NO NECESITAS LA SUMA
- int mult_rusa(int multiplicador, int multiplicando){
- if (multiplicador == 0) return 0; //AGREGUE ESTO CASO BASE
- //CASO RECURSIVO
- if(multiplicador != 0){
- if(multiplicador % 2 != 0){
- //suma += multiplicando;
- printf("Multiplicador: %d, Multiplicando: %d\n",multiplicador,multiplicando);
- //multiplicador /= 2;
- //multiplicando = multiplicando*2;
- return multiplicando + mult_rusa(multiplicador/2, multiplicando*2); //ASI ACUMULAS
- }else{
- printf("Multiplicador: %d, Multiplicando: %d\n",multiplicador,multiplicando);
- //multiplicador /= 2;
- //multiplicando *= 2;
- return mult_rusa(multiplicador/2, multiplicando*2); //ACA NO ACUMULAS
- }
- //printf("suma : %d\n", suma);
- //suma = mult_rusa(multiplicador, multiplicando);
- }
- //return suma;
- };
Advertisement
Add Comment
Please, Sign In to add comment