1~16進数(選択)⇔1~16進数(選択)
の変換プログラムを作成
どこまでやってみましたか?
#include <stdio.h>
#include <string.h>
#include <math.h>
int main(void){
int a,tmp, kisu, keta, result, i,j;
int motoData[128];
printf("変換する数値と基数を入力して下さい。(入力形式は 数値/基数)\n");
scanf("%d/%d", &a, &kisu);
tmp = a;
/*** 桁数のカウント ***/
keta = 0;
do{
//2行で書けます
} while (a > 0);
printf("桁数-->%d\n", keta);
/*** 1ケタずつ配列に入れる ***/
a = tmp;
for (i=keta; i>=1; i--){
//2行で書けます。
//ちなみに,10の2乗は、pow(10,2)です。
}
/*** 10進数に変換 ***/
result = 0;
for (i=keta; i>=1; i--){
//1行で書けます。
}
/*** 結果出力 ***/
printf(" %d進数:", kisu);
for (i=keta; i>=1; i--){
printf("%d", motoData[i]);
}
printf("\n");
printf("10進数:%d\n",result);
return 0;
}
これが参考のプログラムでこれを組み直してくださいって感じでした
組み直しと言っても...scanfで%dで受けているなんて、10進を超えると全然使えませんね。
勝手にやっていいですか? (というか、質問に書いてないことは後から制限しないで下さいね。制限するなら今のうち...)
入力側はもちろん文字列で受けてstrtol()だな。
1進数とはどういうものですか?
0, 1, 2, 3 を 1進数ではどう書くのですか?