Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- #include <iostream>
- #include <vector>
- #include <algorithm> //http://www.cplusplus.com/articles/NhA0RXSz/
- using namespace std;
- void writeout(int, int);
- void printNumbers();
- vector<string> ones {"","one", "two", "three", "four", "five", "six", "seven", "eight", "nine"};
- vector<string> teens {"ten", "eleven", "twelve", "thirteen", "fourteen", "fifteen","sixteen", "seventeen", "eighteen", "nineteen"};
- vector<string> tens {"", "", "twenty", "thirty", "forty", "fifty", "sixty", "seventy", "eighty", "ninety"};
- vector<string> numbers;
- //Vectors above
- int main() {
- int variable;
- cout << "Enter the num\n>> ";
- cin >> variable;
- writeout(variable, 0);
- }
- void writeout(int num, int start) {
- for (int x = start ; x <= num ; x++) {
- if (x < 10) {
- // cout << ones[x] << " ";
- numbers.push_back(ones[x]); //puts it in array to be sorted
- }
- else if (x < 20) {
- // cout << teens[x%10] << " ";
- numbers.push_back(teens[x%10]);
- }
- else if (x < 100) {
- // cout << tens[x/10] << ones[x%10] << " ";
- numbers.push_back(tens[x/10] + ones[x%10]);
- }
- else if (x < 1000) {
- cout << ones[x/100] << "hundred"; writeout(x%100,x%100); //will recall function to complet rest
- numbers.push_back(ones[x/100] + "hundred");
- }
- else if (x < 10000) {
- cout << ones[x/1000] << "thousand"; writeout(x%1000,x%1000);
- }
- else if (x < 100000) {
- cout << teens[x/10000] << "-thousand"; writeout(x%10000,x%10000);
- }
- else if (x < 1000000) {
- cout << ones[x/100000] << "hundred-thousand"; writeout(x%100000,x%100000);
- }
- }
- printNumbers();
- }
- void printNumbers() {
- sort(numbers.begin(), numbers.end()); //sort will alphabetically sort them
- for (int x = 0 ; x < numbers.size() ; x++) {
- cout << numbers[x];
- }
- }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement