// Student Name : Saravanan Tirunelveli Kanthi
// UCSD Student ID : U07612817
// Email ID : tk.saravanan1@gmail.com
// Course Name : C/C++ Programming I : Fundamental Programming Concepts
// Course Number : CSE-40475
// Section ID : 121615
// Instructor Name : Raymond L. Mitchell, Jr., M.S.
// Date : 04-23-2017
// File Name : C1A3E3_main.cpp
// Operating System : Windows 10
// Compiler version : Visual C++ 14.0
// Contents : Program to convert an integer value into words
#include <iostream>
#include <cstdlib>
using namespace std;
int main()
{
int usrInput;
cout << "Enter any integer value : ";
cin >> usrInput;
cout << endl << "\"" << usrInput << "\" in words is \"";
if(usrInput < 0)
{
cout << "minus ";
usrInput *= -1;
}
int dividend = usrInput;
int divisor = 1;
int loopIndex;
for(loopIndex = 0; ; loopIndex++)
{
if(dividend > 9)
{
divisor *= 10;
dividend /= 10;
}
else
{
loopIndex++;
break;
}
}
do
{
int msd = usrInput/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;
}
usrInput = usrInput - (msd * divisor);
divisor = divisor/10;
loopIndex--;
}while(loopIndex != 0);
cout << "\"" << endl;
return EXIT_SUCCESS;
}
Ly8gU3R1ZGVudCBOYW1lICAgICA6IFNhcmF2YW5hbiBUaXJ1bmVsdmVsaSBLYW50aGkKLy8gVUNTRCBTdHVkZW50IElEICA6IFUwNzYxMjgxNwovLyBFbWFpbCBJRCAgICAgICAgIDogdGsuc2FyYXZhbmFuMUBnbWFpbC5jb20KLy8gQ291cnNlIE5hbWUgICAgICA6IEMvQysrIFByb2dyYW1taW5nIEkgOiBGdW5kYW1lbnRhbCBQcm9ncmFtbWluZyBDb25jZXB0cwovLyBDb3Vyc2UgTnVtYmVyICAgIDogQ1NFLTQwNDc1Ci8vIFNlY3Rpb24gSUQgICAgICAgOiAxMjE2MTUKLy8gSW5zdHJ1Y3RvciBOYW1lICA6IFJheW1vbmQgTC4gTWl0Y2hlbGwsIEpyLiwgTS5TLgovLyBEYXRlICAgICAgICAgICAgIDogMDQtMjMtMjAxNwovLyBGaWxlIE5hbWUgICAgICAgIDogQzFBM0UzX21haW4uY3BwCi8vIE9wZXJhdGluZyBTeXN0ZW0gOiBXaW5kb3dzIDEwCi8vIENvbXBpbGVyIHZlcnNpb24gOiBWaXN1YWwgQysrIDE0LjAKLy8gQ29udGVudHMgICAgICAgICA6IFByb2dyYW0gdG8gY29udmVydCBhbiBpbnRlZ2VyIHZhbHVlIGludG8gd29yZHMKCiNpbmNsdWRlIDxpb3N0cmVhbT4KI2luY2x1ZGUgPGNzdGRsaWI+CnVzaW5nIG5hbWVzcGFjZSBzdGQ7CgppbnQgbWFpbigpCnsKICAgaW50IHVzcklucHV0OwoKICAgY291dCA8PCAiRW50ZXIgYW55IGludGVnZXIgdmFsdWUgOiAiOwogICBjaW4gPj4gdXNySW5wdXQ7CiAgIGNvdXQgPDwgZW5kbCA8PCAiXCIiIDw8IHVzcklucHV0IDw8ICJcIiBpbiB3b3JkcyBpcyBcIiI7CgogICBpZih1c3JJbnB1dCA8IDApCiAgIHsKICAgICAgY291dCA8PCAibWludXMgIjsKICAgICAgdXNySW5wdXQgKj0gLTE7CiAgIH0KCiAgIGludCBkaXZpZGVuZCA9IHVzcklucHV0OwogICBpbnQgZGl2aXNvciAgPSAxOwogICBpbnQgbG9vcEluZGV4OyAKCiAgIGZvcihsb29wSW5kZXggPSAwOyA7IGxvb3BJbmRleCsrKQogICB7CiAgICAgIGlmKGRpdmlkZW5kID4gOSkKICAgICAgewogICAgICAgICBkaXZpc29yICAqPSAxMDsKICAgICAgICAgZGl2aWRlbmQgLz0gMTA7CiAgICAgIH0KICAgICAgZWxzZQogICAgICB7CiAgICAgIAlsb29wSW5kZXgrKzsgCiAgICAgICAgYnJlYWs7CiAgICAgIH0KICAgfQoKICAgZG8KICAgewogICAJICBpbnQgbXNkID0gdXNySW5wdXQvZGl2aXNvcjsKICAgICAgc3dpdGNoKG1zZCkKICAgICAgewogICAgICAgICBjYXNlIDA6CiAgICAgICAgICAgIGNvdXQgPDwgInplcm8iOwogICAgICAgICAgICBicmVhazsKCiAgICAgICAgIGNhc2UgMToKICAgICAgICAgICAgY291dCA8PCAib25lIjsKICAgICAgICAgICAgYnJlYWs7CgogICAgICAgICBjYXNlIDI6CiAgICAgICAgICAgIGNvdXQgPDwgInR3byI7CiAgICAgICAgICAgIGJyZWFrOwoKICAgICAgICAgY2FzZSAzOgogICAgICAgICAgICBjb3V0IDw8ICJ0aHJlZSI7CiAgICAgICAgICAgIGJyZWFrOwoKICAgICAgICAgY2FzZSA0OgogICAgICAgICAgICBjb3V0IDw8ICJmb3VyIjsKICAgICAgICAgICAgYnJlYWs7CgogICAgICAgICBjYXNlIDU6CiAgICAgICAgICAgIGNvdXQgPDwgImZpdmUiOwogICAgICAgICAgICBicmVhazsKCiAgICAgICAgIGNhc2UgNjoKICAgICAgICAgICAgY291dCA8PCAic2l4IjsKICAgICAgICAgICAgYnJlYWs7CgogICAgICAgICBjYXNlIDc6CiAgICAgICAgICAgIGNvdXQgPDwgInNldmVuIjsKICAgICAgICAgICAgYnJlYWs7CgogICAgICAgICBjYXNlIDg6CiAgICAgICAgICAgIGNvdXQgPDwgImVpZ2h0IjsKICAgICAgICAgICAgYnJlYWs7CgogICAgICAgICBjYXNlIDk6CiAgICAgICAgICAgIGNvdXQgPDwgIm5pbmUiOwogICAgICAgICAgICBicmVhazsKICAgICAgfQoKICAgICAgdXNySW5wdXQgPSB1c3JJbnB1dCAtIChtc2QgKiBkaXZpc29yKTsKICAgICAgZGl2aXNvciAgPSBkaXZpc29yLzEwOyAKICAgICAgbG9vcEluZGV4LS07IAoKICAgfXdoaWxlKGxvb3BJbmRleCAhPSAwKTsKCiAgIGNvdXQgPDwgIlwiIiA8PCBlbmRsOyAKCiAgIHJldHVybiBFWElUX1NVQ0NFU1M7Cn0K