配当金を表示させて、手間をかけずにコードを解読できるようにしました。一度は動作しましたが、動作を停止するために何をしたのかわかりません。正の整数に対して完全に機能します。ユーザー入力に関連付けられた番号を表示することになっています。
#include <iostream> // Necessary header
using namespace std;
int main()
{
signed int Input, Divisor, Dividend, MSD;
cout << "Input:";
cin >> Input;
Divisor = 1;
Dividend = Input;
if (Input < 0)
{
Dividend *= -1;
cout << "minus ";
}
cout << Dividend;
while (Dividend > 9)
{
Divisor = Divisor * 10;
Dividend = Dividend / 10;
}
while (Divisor != 0)
{
MSD = Input / Divisor;
switch (MSD)
{
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;
}
Input = Input - (MSD * Divisor);
Divisor /= 10;
}
return 0;
}