十四進制
本項目是針對七進制的一些研究。
導言
編輯規則
編輯在十四進制中,有十四個數字,各是0、1、2、3、4、5、6、7、8、9、A、B、C、D,用來代表各種實數,依此規則,十進制的14,在十四進制中為10。
特徵
編輯十四進制每個狀態在自然數制中出現的概率為7.142857142857……%,比十進制每個狀態在自然數制中出現的概率要少2.657142857142857……%。因此,十四進制每個狀態所包含的因子比十進制每個狀態所包含的因子要少。
十四進制是七進制的拓展,因此它包含着七進制的信息因子。例如十四分之幾,除了7/14=0.5以外,它們的商都是無限循環小數,其無限循環部分為142857[1],例如:
- 1/14=0.07142857142757142857……,循環數為142857
- 2/14=0.142857142857142857……,循環數為142857
- 3/14=0.2142857142857142857142857……,循環數為142857
- 4/14=0.2857142857142857142857……,循環數為142857
- 5/14=0.357142857142857142857……,循環數為142857
- 6/14=0.42857142857142857142857……,循環數為142857
- 7/14=0.5 ,7是14週期律的基底,因此,其小數為有限小數
- 8/14=0.57142857142857142857……,循環數為142857
- 9/14=0.642857142857142857……,循環數為142857
- 10/14=0.7142857142857142857……,循環數為142857
- 11/14=0.7857142857142857……,循環數為142857
- 12/14=0.857142857142857142857……,循環數為142857
- 13/14=0.92857142857142857142857……,循環數為142857
函數
編輯可以編寫函數實現十進制正整數到十四進制數的轉換,在屏幕輸出轉換結果。
#include<stdio.h>
#include<math.h>
int main(){
int a, b, n = 0;
char c = 'A';
scanf("%d", &a);
while(a / (int)pow(14, n) != 0){
n++;
}
n--;
while(n >= 0){
b = a / (int)pow(14, n) % 14;
n--;
if(b >= 10){
printf("%c", c + b % 10);
}else
printf("%d", b);
}
if(!a)
printf("0");
printf("\n");
return 0;
}
參考信息
編輯外部連結
編輯- The First 1000 Counting Numbers in Base 14- Hamid N. Yeganeh