#include <iostream>
using namespace std;
int mult_rusa(int A, int B);
int main(int argc, char *argv[]) {
int a,b;
cout<<"ingrese A"<<endl;
cin>>a;
cout<<"ingrese B"<<endl;
cin>>b;
cout<<"el resultado es:"<<mult_rusa(a,b)<<endl;
return 0;
}
int mult_rusa(int A, int B) {
if(A==1){
return (B);
}
if(A%2!=0){
return (B+mult_rusa( A/2 , B*2));
}
else{
return(mult_rusa( A/2 , B*2));
}
}
Home »
Algoritmo Recursivo división por restas sucesivas en C++
,
Algoritmo Recursivo invertir un numero en C++
,
Algoritmo Recursivo que permita hacer una multiplicación
,
utilizando el método Ruso
» Algoritmo Recursivo que permita hacer una multiplicación, utilizando el método Ruso
{ if(a==1) return b;
ResponderEliminarif(a%2 == 0) return Mrusa(a/2,b*2);
else return Mrusa(a/2,b*2)+b;
}