Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- //
- // main.cpp
- // 2進制轉10進制
- //
- // Created by Chris on 2017/3/18.
- // Copyright © 2017年 Chris. All rights reserved.
- //
- #include <iostream>
- #include <stdlib.h>
- #include <math.h>
- using namespace std;
- int main() {
- int bin[ ] = { 0 }, m = 0, brami = 0, mn = 0, h = 0, n = 0, y = 0, x = 0;
- while (1){
- brami = 0;
- cout << "Enter Binary ";
- cin >> n;
- x = n;
- y = n;
- while (x != 0){
- x /= 10;
- m ++;
- } //計算n值為幾位元
- for (int i = 0 ; i < m ; i ++){
- h = y % 10;
- if (h > 1 || h < 0) goto end;
- y /= 10;
- } //判斷是否為2進制
- while (n != 0){
- for (int i = 0 ; i < m ; i ++){
- bin [ i ] = n % 10;
- n /= 10;
- } //將n的餘數放入array
- }
- for (int i = 0 ; i < m ; i ++){
- mn = 0;
- mn = pow (2 , i); //求第i位元的值
- brami = brami + mn * bin [ i ]; //將 [i]array * i位元值 放入brami
- }
- cout << endl;
- cout << brami << endl;
- }
- end:
- cout << "超出數值" << endl;
- return 0;
- }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement