Russian Peasant Multiplication in C++

This C++ Program demonstrates the implementation of Russian Peasant Multiplication.

Here is source code of the C++ Program to demonstrate the implementation of Russian Peasant Multiplication. The C++ program is successfully compiled and run on a Linux system. The program output is also shown below.

  1. /* 
  2.  * C++ Program to Implement Russian Peasant Multiplication 
  3.  */
  4. #include <iostream>
  5. using namespace std;
  6. /* 
  7.  * multiply two numbers using Russian Peasant method
  8.  */
  9. unsigned int russianPeasant(unsigned int a, unsigned int b)
  10. {
  11.     int res = 0;
  12.     while (b > 0)
  13.     {
  14.          if (b & 1)
  15.              res = res + a;
  16.          a = a << 1;
  17.          b = b >> 1;
  18.      }
  19.      return res;
  20. }
  21.  
  22. /*  
  23.  * Main
  24.  */
  25. int main()
  26. {
  27.     cout << russianPeasant(15, 5) << endl;
  28.     cout << russianPeasant(13, 6) << endl;
  29.     return 0;
  30. }

$ g++ russian_peasant.cpp
$ a.out
 
75
78
 
------------------
(program exited with code: 1)
Press return to continue

Sanfoundry Global Education & Learning Series – 1000 C++ Programs.

advertisement
advertisement
If you wish to look at all C++ Programming examples, go to C++ Programs.

advertisement
advertisement
Subscribe to our Newsletters (Subject-wise). Participate in the Sanfoundry Certification contest to get free Certificate of Merit. Join our social networks below and stay updated with latest contests, videos, internships and jobs!

Youtube | Telegram | LinkedIn | Instagram | Facebook | Twitter | Pinterest
Manish Bhojasia - Founder & CTO at Sanfoundry
Manish Bhojasia, a technology veteran with 20+ years @ Cisco & Wipro, is Founder and CTO at Sanfoundry. He lives in Bangalore, and focuses on development of Linux Kernel, SAN Technologies, Advanced C, Data Structures & Alogrithms. Stay connected with him at LinkedIn.

Subscribe to his free Masterclasses at Youtube & discussions at Telegram SanfoundryClasses.