[程式/筆記] 如何用遞迴方法將 10 進位轉 16 進位
目前許多程式語言都有內建函數,讓我們能輕鬆的從10進位轉為16進位、2進位或是8進位。今天來介紹如何利用遞迴方法來完成。剛開始寫這個的時候想說應該很簡單,但還是稍微想了一下流程圖才出來,在這邊分享給大家,至於16進位的邊就不多作介紹了,純粹分享程式碼,示範網頁在下方有連結。
為了方便效果呈現,我把它寫成PHP網頁的形式,不過原理大同小異。
#PHP
<?php function Hex($a){ $e= (integer)($a/16); $remainder = $a % 16; if ($e == 0) { if($a<16){ switch ($remainder) { case '10': $result = "A"; break; case '11': $result = "B"; break; case '12': $result = "C"; break; case '13': $result = "D"; break; case '14': $result = "E"; break; case '15': $result = "F"; break; default: $result = $remainder; break; } return $result; } else return ''; } else { switch ($remainder) { case '10': $result = "A"; break; case '11': $result = "B"; break; case '12': $result = "C"; break; case '13': $result = "D"; break; case '14': $result = "E"; break; case '15': $result = "F"; break; default: $result = $remainder; break; } return Hex($e).$result; } } ?>
Leave a Reply