創作內容

3 GP

【C++演算法】十進位轉二進位(bitset & 迴圈寫法)

作者:朔哥│2017-02-12 00:34:39│巴幣:6│人氣:17138

十進位轉二進位

有人在問十進位轉二進位的城市怎麼寫
你大可以用bitset內容如下
雖然很簡潔,在印出上也很陽春,用C寫更快
你可以用bitset做出來結果存在vector再去做印出設計
語法參考:
http://www.cplusplus.com/reference/bitset/bitset/
看不懂英文去旁邊蹲
程設新手不建議這樣寫
當然,十進位轉二進位寫法很多
我介紹其中一種。。。
演算法較直接
我們寫一個function作正數
再寫一個做負數
都是一~二個迴圈解決

先作正數,演算法寫出來直接印
function bin

視情況調整陣列值
印出僅供參考
我們地˙一個迴圈從最後逆過來存餘
(這樣就不用逆轉了)
每一次值/2
除之前不用要忘記要先把榆樹存給number陣列




接下來做負數
先轉正在轉二進位


再來從最後一個元素(索引值為15)逆回來檢查
如果碰到1
索引值存給 k
索引值從k-1開始
0轉1 , 1轉0


最後印出


測試結果

弄成函式的原因是
main就變得相對簡潔
可以弄個標頭檔放這兩個函式
這樣這支程式就可以在擴充


以上
有關自訂義標頭檔與更多禁制轉換(3進、5進、20進等)都給問


BUG & 問題回報
可寄站內信、在底下留言或到我私人FB詢問
https://www.facebook.com/creeperking

引用網址:https://home.gamer.com.tw/TrackBack.php?sn=3477503
All rights reserved. 版權所有,保留一切權利

相關創作

同標籤作品搜尋:code|數學|C++|數學類|C|十進位轉二進位|bitset

留言共 1 篇留言

aaa
這樣的確很快速又簡單,
不過這樣寫數值只要超過bitset的個數就會直接失真喔,如圖中只要輸入超過256,結果就會有誤,建議做成彈性大小喔!

03-25 21:00

朔哥
我在文中是不建議這樣做的
一個迴圈可以搞定很多事03-28 18:31
我要留言提醒:您尚未登入,請先登入再留言

3喜歡★herobrinewu 可決定是否刪除您的留言,請勿發表違反站規文字。

前一篇:【Minecraft相關... 後一篇:【C++原始碼討論】E-...

追蹤私訊切換新版閱覽

作品資料夾

dhreekingdon幸運看見的你
給你一顆紅心~讓你能保有一整天的好心情~祝你有個愉快的一天喲(<ゝω・)~❤看更多我要大聲說昨天22:59


face基於日前微軟官方表示 Internet Explorer 不再支援新的網路標準,可能無法使用新的應用程式來呈現網站內容,在瀏覽器支援度及網站安全性的雙重考量下,為了讓巴友們有更好的使用體驗,巴哈姆特即將於 2019年9月2日 停止支援 Internet Explorer 瀏覽器的頁面呈現和功能。
屆時建議您使用下述瀏覽器來瀏覽巴哈姆特:
。Google Chrome(推薦)
。Mozilla Firefox
。Microsoft Edge(Windows10以上的作業系統版本才可使用)

face我們了解您不想看到廣告的心情⋯ 若您願意支持巴哈姆特永續經營,請將 gamer.com.tw 加入廣告阻擋工具的白名單中,謝謝 !【教學】