#include <stdio.h>
#include <string.h>
#include <limits.h>
char oneDigit[ ] [ 10 ] = { "Khong" , "Mot" , "Hai" , "Ba" , "Bon" , "Nam" , "Sau" , "Bay" , "Tam" , "Chin" } ;
char base[ ] [ 10 ] = { "" , "Muoi" , "Tram" , "Nghin" , "Muoi" , "Tram" , "Trieu" , "Muoi" , "Tram" , "Ty" , "Muoi" , "Tram" , "Nghin" , "Muoi" , "Tram" , "Trieu" , "Muoi" , "Tram" , "Ty" } ;
void d2w( long long a) {
if ( a < 10 ) {
return ;
}
int s[ 100 ] = { 0 } ;
int i = 0 ;
while ( a > 0 ) {
s[ i++ ] = a % 10 ;
a /= 10 ;
}
for ( int j = i - 1 ; j >= 0 ; j-- ) {
if ( ! strcmp ( oneDigit
[ s
[ j
] ] , "Khong" ) && ! strcmp ( base
[ j
] , "Muoi" ) && s
[ j
- 1 ] != 0 ) else if ( ! strcmp ( oneDigit
[ s
[ j
] ] , "Mot" ) && ! strcmp ( base
[ j
] , "Muoi" ) ) else if ( s
[ j
] != 0 || ! strcmp ( base
[ j
] , "Tram" ) ) { printf ( "%s " , oneDigit
[ s
[ j
] ] ) ; } else if ( ( j % 3 == 0 ) && ( s[ j + 1 ] != 0 || s[ j + 2 ] != 0 ) )
}
}
int main( ) {
long long n = 0 ;
while ( 1 ) {
printf ( "Enter an integer number: " ) ; printf ( "%lld in word is: " , n
) ; d2w( n) ;
printf ( "\n \n Do you want continue:\n " ) ; break ;
}
return 0 ;
}
I2luY2x1ZGUgPHN0ZGlvLmg+CiNpbmNsdWRlIDxzdHJpbmcuaD4KI2luY2x1ZGUgPGxpbWl0cy5oPgoKY2hhciBvbmVEaWdpdFtdWzEwXSA9IHsiS2hvbmciLCAiTW90IiwgIkhhaSIsICJCYSIsICJCb24iLCAiTmFtIiwgIlNhdSIsICJCYXkiLCAiVGFtIiwgIkNoaW4ifTsKY2hhciBiYXNlW11bMTBdID0geyIiLCAiTXVvaSIsICJUcmFtIiwgIk5naGluIiwgIk11b2kiLCAiVHJhbSIsICJUcmlldSIsICJNdW9pIiwgIlRyYW0iLCAiVHkiLCAiTXVvaSIsICJUcmFtIiwgIk5naGluIiwgIk11b2kiLCAiVHJhbSIsICJUcmlldSIsICJNdW9pIiwgIlRyYW0iLCAiVHkifTsKCnZvaWQgZDJ3KGxvbmcgbG9uZyBhKSB7CglpZiAoYSA8IDEwKSB7CgkJcHJpbnRmKCIlcyAiLCBvbmVEaWdpdFthXSk7CgkJcmV0dXJuOwoJfQoJaW50IHNbMTAwXSA9IHswfTsKCWludCBpID0gMDsKCXdoaWxlIChhID4gMCkgewoJCXNbaSsrXSA9IGEgJSAxMDsKCQlhIC89IDEwOwoJfQoJZm9yIChpbnQgaiA9IGkgLSAxOyBqID49IDA7IGotLSkgewoJCWlmICghc3RyY21wKG9uZURpZ2l0W3Nbal1dLCAiS2hvbmciKSAmJiAhc3RyY21wKGJhc2Vbal0sICJNdW9pIikgJiYgc1tqIC0gMV0gIT0gMCkKCQkJcHJpbnRmKCJMaW5oICIpOwoJCWVsc2UgaWYgKCFzdHJjbXAob25lRGlnaXRbc1tqXV0sICJNb3QiKSAmJiAhc3RyY21wKGJhc2Vbal0sICJNdW9pIikpCgkJCXByaW50ZigiTXVvaSAiKTsKCQllbHNlIGlmIChzW2pdICE9IDAgfHwgIXN0cmNtcChiYXNlW2pdLCAiVHJhbSIpKSB7CgkJCXByaW50ZigiJXMgIiwgb25lRGlnaXRbc1tqXV0pOwoJCQlwcmludGYoIiVzICIsIGJhc2Vbal0pOwoJCX0gZWxzZSBpZiAoKGogJSAzID09IDApICYmIChzW2ogKyAxXSAhPSAwIHx8IHNbaiArIDJdICE9IDApKQoJCQlwcmludGYoIiVzICIsIGJhc2Vbal0pOwoJfQp9CgppbnQgbWFpbigpIHsKCWxvbmcgbG9uZyBuID0gMDsKCXdoaWxlICgxKSB7CgkJcHJpbnRmKCJFbnRlciBhbiBpbnRlZ2VyIG51bWJlcjogIik7CgkJc2NhbmYoIiVsbGQiLCAmbik7CgkJcHJpbnRmKCIlbGxkIGluIHdvcmQgaXM6ICIsIG4pOwoJCWQydyhuKTsKCQlwcmludGYoIlxuXG5EbyB5b3Ugd2FudCBjb250aW51ZTpcbiIpOwoJCXByaW50ZigiMS4gWWVzXG4wLiBOb1xuIik7CgkJd2hpbGUgKGdldGNoYXIoKSAhPSAnXG4nKTsKCQlpZiAoZ2V0Y2hhcigpID09ICcwJykKCQkJYnJlYWs7Cgl9CglyZXR1cm4gMDsKfQo=