报数(read)
该比赛已结束,您无法在比赛模式下递交该题目。您可以点击“在题库中打开”以普通模式查看和递交本题。
Background
Special for beginners, ^_^
Description
CG 同学又弄到一批新牛,新牛到了农场后,首先学习汉语,数的朗读成为新牛的难题。朗读绝对值小于 10 亿的数。 新牛们知道汉语中有如下的朗读规则:
-
首先读符号位,然后读整数部分。整数部分之后可能出现小数点,如果有小数部分则小数点一定出现,并且读出小数点之后读小数部分。
-
符号位的读法是: (1) 正数,不论正号“+”是否出现,都不必读出符号位;
(2) 负数最左边的符号是“-”读成“负”(以“F”来表示“负”)。
- 整数部分的读法是: (1)如果整数部分不存在或整数部分全为零则直接读成“零 ”(以“0”来表示“零”);
(2)否则从整数部分中最左边的非零数字开始读起,然后以十,百,千,万,亿(分别以“S”,“B”,“Q”“W”,“Y ”来表示)等数量单位来拼读整数部分。
- 整数部分中: (1) 每一个非零数字都必须结合各个相应的数量单位读出来。
(2) 每一段连续的“零”只能读成一个“零”,但是某一段连续的“零”的左侧或者右侧不存在非零数字(这里只考虑整数部分)则这一段“零”不应该读出来。
-
如果有小数部分,则首先读“点”(以“D”来表示“点”),然后从左至右有顺序的读出各个小数位。在读小数部分的时候不可以使用十,百,千,万,亿等数量单位;但是小数部分的每一个数字都要读出来,连续的零不可以读成一个零,而应该分别读出。
-
如果数中有小数点而没有小数部分,则不应该把小数点读出来。
例如,—0020030004.567 应该读成“F2Q03W04D567”,000.89 应该读成“0D89”。
请你编写程序帮助新牛把给定的数正确地读出来。
Format
Input
输入文件仅一行,存放了一个数(不超过 50 个字符),其绝对值小于 10 亿。
Output
输出文件仅一行,输出这个数的正确读法。
Samples
—0020030004.567
F2Q03W04D567
Limitation
有负号的话,仅有一个负号:-5.2
其他参照规则。