decimal to english

Solutions on MaxInterview for decimal to english by the best coders in the world

showing results for - "decimal to english"
Michela
08 Jul 2017
1#include<iostream>
2#include<string>
3
4inline std::string binary_conv(int,int,std::string);
5
6int main()
7{
8    long int number;
9    int base {27};
10    std::cout<<"\nPlease enter a non-negative integer:\t";
11    std::cin>>number;
12    while(number<=0)
13    {
14        std::cerr<<"\nWRONG!!!, Enter a number higher than zero\n";
15        std::cout<<"\nPlease enter a number\t";
16        std::cin>>number;
17    }
18    std::string binary_number;
19    binary_number = binary_conv(number,base,binary_number);
20    
21    
22    std::cout<<binary_number<<std::endl;
23   
24    return 0 ;
25}
26
27std::string binary_conv(int number, int base,std::string binary)
28{   
29    std::string zero_one = " abcdefghijklmnopqrstuvwxyz";
30    if(number==0)
31        return binary;
32    binary = zero_one[number%base]+binary;
33    number/=base;
34    return binary_conv(number,base,binary);
35}
36
Julia
28 Nov 2020
1#include<iostream>
2#include<string>
3#include<cmath>
4
5int main()
6{   
7
8  
9    std::cout<<"Please enter a string of small letters and spaces:\t";
10    std::string str ;
11    getline(std::cin, str) ;
12
13    
14    long int  result {0};
15    long int  value {0};
16    for(int i=0 ; i < str.length(); ++i)
17    {
18
19        switch(str[i]){
20        
21            case ' ':
22                value = 0;
23                break;
24            case 'A':
25            case 'a':
26                value = 1;
27                break;
28            case 'B':
29            case 'b':
30                value = 2;
31                break;
32            case 'C':
33            case 'c':
34                value = 3;
35                break;
36            case 'D':
37            case 'd':
38                value = 4;
39                break;
40            case 'E':
41            case 'e':
42                value = 5;
43                break;
44            case 'F':
45            case 'f':
46                value = 6;
47                break;
48            case 'G':
49            case 'g':
50                value = 7;
51                break;
52            case 'H':
53            case 'h':
54                value = 8;
55                break;
56            case 'I':
57            case 'i':
58                value = 9;
59                break;
60            case 'J':
61            case 'j':
62                value = 10;
63                break;
64            case 'K':
65            case 'k':
66                value = 11;
67                break;
68            case 'L':
69            case 'l':
70                value = 12;
71                break;
72            case 'M':
73            case 'm':
74                value = 13;
75                break;
76            case 'N':
77            case 'n':
78                value = 14;
79                break;
80            case 'O':
81            case 'o':
82                value = 15;
83            case 'P':
84            case 'p':
85                value = 16;
86                break;
87            case 'Q':
88            case 'q':
89                value = 17;
90                break;
91            case 'R':
92            case 'r':
93                value = 18;
94                break;
95            case 'S':
96            case 's':
97                value = 19;
98                break;
99            case 'T':
100            case 't':
101                value = 20;
102                break;
103            case 'U':
104            case 'u':
105                value = 21;
106                break;
107            case 'V':
108            case 'v':
109                value = 22;
110                break;
111            case 'W':
112            case 'w':
113                value = 23;
114                break;
115            case 'X':
116            case 'x':
117                value = 24;
118                break;
119            case 'Y':
120            case 'y':
121                value = 25;
122                break;
123            case 'Z':
124            case 'z':
125                value = 26;
126                break;
127            default:
128                std::cout<<" The input string does not represent a number in base 27 "<<std::endl;
129        } 
130        int power = (str.length()-1-i);
131        result += value*(pow(27,power));
132    }
133    if(str.length()>= 32)
134    {           
135        std::cout<<"\nThe input string represents a number that is greater than 2ˆ32"<<std::endl;
136        
137    }else{
138        std::cout<<"\n"<<result<<std::endl;
139    }
140    
141
142    return 0 ;
143}
144
145
Riccardo
10 Apr 2018
1#include<iostream>
2#include<string>
3#include<limits>
4
5inline std::string binary_conv(int,int,std::string);
6
7int main()
8{
9    long int number;
10    int base {27};
11    std::cout<<"\nPlease enter a non-negative integer:\t";
12    std::cin>>number;
13
14
15    while(1)
16    {
17        if(std::cin.fail())
18        {
19        std::cin.clear();
20        std::cin.ignore(std::numeric_limits<std::streamsize>::max(),'\n');
21        std::cout<<"\nYou have entered wrong input!"<<std::endl;
22        std::cout<<"\nPlease enter a non-negative integer:\t";
23        std::cin>>number;
24    }
25        if(!std::cin.fail())
26        break;
27    }
28    
29    std::string binary_number;
30    binary_number = binary_conv(number,base,binary_number);
31    
32    
33    std::cout<<binary_number<<std::endl;
34   
35    return 0 ;
36}
37
38std::string binary_conv(int number, int base,std::string binary)
39{   
40    std::string zero_one = " abcdefghijklmnopqrstuvwxyz";
41    if(number==0)
42        return binary;
43    binary = zero_one[number%base]+binary;
44    number/=base;
45    return binary_conv(number,base,binary);
46}
47
48
49
Ariadna
04 Aug 2017
1#include<iostream>
2#include<cmath> 
3#include<limits>
4#include<string>
5void print_value(const size_t value);
6// bool IllegalCharacters(int,const std::string, int);
7bool isalpha_isspace(const std::string&);
8
9
10int main()
11{
12    std::string eng2dec;
13    std::cout<<"\nPlease enter a string of small letters and spaces:\t";
14    getline(std::cin,eng2dec);
15
16    // checking if string is an alphabet or spaces 
17    bool answer = isalpha_isspace(eng2dec);
18    if(answer == false)
19    {
20        std::cout<<"\nThe input string does not represent a number in base 27"<<std::endl;
21        exit(1);
22    }
23    // looping throught the string and converting the value of chars to decimal with base 27
24    size_t value {0};
25    int decimal {0};
26    for(size_t i {0}; i<eng2dec.length(); ++i)
27    {   
28        if(eng2dec[i]==' ')
29        {
30            decimal=0;
31        }else{
32            int power = (eng2dec.length()-1-i);
33            decimal = eng2dec[i]%96;   
34            value+= decimal*pow(27,power); 
35        }
36        if(value > pow(2,32)){
37            std::cout<<"\nThe input string represents a number that is greater than 2ˆ32" <<std::endl;exit(1);
38        } 
39    }
40    print_value(value);  
41    return 0 ;
42}
43
44// check if string is not alphabet or space 
45bool isalpha_isspace(const std::string& str )
46{   
47    bool answer ;
48    for(char c: str){
49        if(isalpha(c) || isspace(c)) 
50        {
51           answer = true;
52        }else
53        {
54           answer= false;
55        }
56    }
57    return answer ;
58}
59
60// print value 
61void print_value(const size_t value){
62	std::cout<<value<<std::endl;         
63}
64