- #include <iostream>
- #include <cstdlib>
- using namespace std;
- int main(){
- int n;
- re:
- cout<<"輸入十進位制的正整數: ";
- cin >> n;
- cout<<n<<"的二進位制= ";
- int b, ten=1, sum=0;
- //b:用來存餘數。
- //ten:為了讓答案變成倒的,每次乘以10倍。
- //sum:用來加總答案。
- while(n>0){ //不斷做直到a=1時
- b=n%2; //b用來計算餘數
- n/=2; //計算餘數之後,就可以把n除以2了!
- sum+=b*ten; //把b值乘以10,存進sum答案中。(第一次乘以1)
- ten*=10; //因為二進位是從下而上的餘數,所以我們每次乘以10,就會變倒的了!
- }
- cout << sum << endl;
- goto re;
- system("pause");
- return 0;
- }
複製代碼 |