プログラミング初心者です。 学校で16進数を入力するプログラムを作れ。という課題が出ました。友達と頑張ってここまでしました。 class test{

ベストアンサー

0

ThanksImg質問者からのお礼コメント

ご回答ありがとうございます。 ご回答していただいたものを打つとうまく実行できました。ありがとうございました。 こちらの方を今回ベストアンサーとさせていただきます。

お礼日時:7/5 12:34

その他の回答(1件)

1

number=number+(ch-'0'); の部分は0~9しか対応していません。 0 == '0' - '0' 1 == '1' - '0' 2 == '2' - '0' 3 == '3' - '0' 4 == '4' - '0' 5 == '5' - '0' 6 == '6' - '0' 7 == '7' - '0' 8 == '8' - '0' 9 == '9' - '0' 先生からのヒントは以下に対応します 10 == 'A' - 'A' + 10 11 == 'B' - 'A' + 10 12 == 'C' - 'A' + 10 13 == 'D' - 'A' + 10 14 == 'E' - 'A' + 10 15 == 'F' - 'A' + 10 if(('0'<=ch && ch<='9')||('A'<=ch&&ch<='F')){ 上記if文は、A~Fも 'A' - '0' のような計算になるので、if文にアルファベット用の分岐を作ればよいです

1人がナイス!しています