c++辗转相除法将十进制转换成二进制
一、辗转相除法
辗转相除法,也称欧几里得算法,是求两个正整数最大公约数的常用方法。该算法基于以下原理:对于两个正整数a和b,其最大公约数等于b和a mod b的最大公约数。换句话说,我们不断将较大数除以较小数所得余数,直到余数为零为止。此时较小数即为原始两数的最大公约数。
二、十进制转二进制
十进制(Decimal)基数为10,数码0~9。
二进制(Binary)基数为2,数码0/1。
方法:”除基取余“,将已知数字连续除以2,保存余数, 最后逆序输出余数,即得结果。
如:48的二进制数为110000
三、代码演示:
要求:将一个十进制数(0<num<100)转换为二进制数。
(0<num<100)转换为二进制数。