Re: [問題] 二進位轉十進位 加入一個判斷式
看板C_and_CPP作者sheepisonly (Sedra smith)時間14年前 (2010/06/13 01:24)推噓2(2推 0噓 10→)留言12則, 2人參與討論串2/3 (看更多)
: 使用c++設計一個二進位轉成十進位的程式如下:
: #include <iostream>
: #include <string>
: using namespace std;
: int main(){
: string bin_n;
: int dec_n = 0;
: int i;
: cout << "請輸入二進位數字:";
: cin >> bin_n;
: for(i = 0; i < bin_n.length(); i++)
: dec_n = dec_n * 2 + (bin_n[i] - '0');
: cout << "轉成十進位後是:" << dec_n << endl;
: return 0;
: }
: 但是若輸入"非"二進位的數字
: Ex:2001
: 會得到結果為17
: 若是要再其中加入一個判斷式
: 使得輸入"非"二進位的數字時 會進到else裡面
: 要怎麼設計這個程式呢
: 一個小小的問題麻煩版上的高手們解答 謝謝
主要是想要形成 可以將二進位轉換成十進位數字
並且 若輸入的值不是二進位數,則顯示“error”。
這樣的一個程式
想知道 照我這樣寫的話 要怎麼增加才能形成我要的形式
有嘗試要在cin >> bin_n的下面加入if指令
但是會跑出奇怪的結果
抱歉 自學c語言產生很多問題 麻煩各位高手解答 謝謝
--
※ 發信站: 批踢踢實業坊(ptt.cc)
◆ From: 111.255.166.202
推
06/13 01:29, , 1F
06/13 01:29, 1F
→
06/13 01:38, , 2F
06/13 01:38, 2F
→
06/13 01:39, , 3F
06/13 01:39, 3F
→
06/13 01:39, , 4F
06/13 01:39, 4F
→
06/13 01:40, , 5F
06/13 01:40, 5F
推
06/13 12:16, , 6F
06/13 12:16, 6F
→
06/13 12:16, , 7F
06/13 12:16, 7F
→
06/13 12:16, , 8F
06/13 12:16, 8F
→
06/13 12:17, , 9F
06/13 12:17, 9F
→
06/13 12:18, , 10F
06/13 12:18, 10F
→
06/13 12:18, , 11F
06/13 12:18, 11F
→
06/13 12:20, , 12F
06/13 12:20, 12F
討論串 (同標題文章)
本文引述了以下文章的的內容:
完整討論串 (本文為第 2 之 3 篇):