#include <stdlib.h>
#include <stdio.h>
#include <string.h>
char* point[] = {"角", "分"};
char* unit[] = {"仟", "佰", "拾"};
char* num[] = {"壹", "贰", "叁", "肆", "伍", "陆", "柒", "捌", "玖"};
void handlePoint(char* ref, int flag) {
if(flag) {
printf("元");
}
int i = 0;
while(ref[i] == '0') {
i++;
}
if(i > 1) {
if(flag) printf("整");
} else {
int j = 0;
int t;
while(j < 2) {
t = ref[j] - '0';
if(t != 0) {
printf("%s%s", num[t - 1], point[j]);
}
j++;
}
}
}
int isInt(int arr, int i) {
int num = 1;
while(i) {
num *= 10;
i--;
}
return (arr % num);
}
void handle(int arr, int order) {
if(arr == 0) {
return;
}
int money[4];
money[0] = arr / 1000;
money[1] = (arr / 100) % 10;
money[2] = (arr / 10) % 10;
money[3] = arr % 10;
int tag1 = 0, tag2 = 1;
for(int i = 0; i < 3; i++) {
if(order == 1) {
if(money[i] != 0) {
printf("%s%s", num[money[i] - 1], unit[i]);
tag1 = 1;
if(isInt(arr, 3-i) == 0) {
return;
}
} else if(tag1) {
printf("零");
tag1 = 0;
}
} else {
if(money[i] != 0) {
if(tag2 == 0) {
printf("零");
}
printf("%s%s", num[money[i] - 1], unit[i]);
if(isInt(arr, 3-i) == 0) {
return;
}
tag2 = 1;
} else if(tag2) {
tag2 = 0;
}
}
}
if(money[3] != 0) {
if(tag2 == 0 && order != 1) {
printf("零");
}
printf("%s", num[money[3] - 1]);
}
}
void handleThous(int arr, int* flag) {
if(arr == 0) {
*flag = 0;
return;
}
handle(arr, 1);
}
void handleWan(int arr, int* flag) {
if(arr == 0) {
return;
}
int pre = arr / 10000;
int suf = arr - pre * 10000;
handle(pre, 1);
printf("万");
handle(suf, 2);
}
void handleWanT(int arr, int* flag) {
if(arr == 0) {
return;
}
int pre = arr / 10000;
int suf = arr - pre * 10000;
handle(pre, 2);
printf("万");
handle(suf, 2);
}
void handleYi(long arr, int* flag) {
int yi = (int)(arr / 100000000);
handle(yi, 1);
printf("亿");
int wan = (int)(arr - yi * 100000000);
handleWanT(wan, flag);
}
void handleWanYi(long arr, int* flag) {
int yi = (int)(arr / 100000000);
handleWan(yi, flag);
printf("亿");
int wan = (int)(arr - yi * 100000000);
handleWanT(wan, flag);
}
int main(void) {
char va[50];
scanf("%s", va);
int i = 0;
while(va[i] != '.') i++;
int len = i;
char* ref = va+i+1;
char intec[len];
strncpy(intec, va, len);
long inte = atol(va);
int flag = 1;
printf("人民币");
if(len <= 4 && len > 0) {
handleThous(inte, &flag);
} else if (len > 4 && len <= 8) {
handleWan(inte, &flag);
} else if (len > 8 && len <= 12){
handleYi(inte, &flag);
} else {
handleWanYi(inte, &flag);
}
handlePoint(ref, flag);
printf("\n");
return 0;
}