私は C++ の初心者で、数字を 0 から 99 までの単語に出力するプログラムを作成しました。プログラムは正常に動作していますが、10 から 20 までの数字が間違った出力を示しています。
#include<iostream>
using namespace std;
main()
{
int number,digit_1,digit_2;
cout<<"Please enter a number between 0-99: ";
cin >> number;
digit_1=number/10;
digit_2=number%10;
if(number>=10 && number<=19)
{
switch(number)
{
case 10: cout<<"Ten"; break;
case 11: cout<<"Eleven"; break;
case 12: cout<<"Twelve"; break;
case 13: cout<<"Thirteen"; break;
case 14: cout<<"Fourteen"; break;
case 15: cout<<"Fifteen"; break;
case 16: cout<<"Sixteen"; break;
case 17: cout<<"Seventeen"; break;
case 18: cout<<"Eighteen"; break;
case 19: cout<<"Nineteen"; break;
}
}
switch(digit_1)
{
case 2: cout<<"Twenty"; break;
case 3: cout<<"Thirty"; break;
case 4: cout<<"Forty"; break;
case 5: cout<<"Fifty"; break;
case 6: cout<<"Sixty"; break;
case 7: cout<<"Seventy"; break;
case 8: cout<<"Eighty"; break;
case 9: cout<<"Ninety"; break;
}
switch(digit_2)
{
case 0: cout<<" Zero"; break;
case 1: cout<<" One"; break;
case 2: cout<<" Two"; break;
case 3: cout<<" Three"; break;
case 4: cout<<" Four"; break;
case 5: cout<<" Five"; break;
case 6: cout<<" Six"; break;
case 7: cout<<" Seven"; break;
case 8: cout<<" Eight"; break;
case 9: cout<<" Nine"; break;
}
}
出力:-
0 ~ 99: 12 の数字を入力してください
12 2