#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=