Java机试题:学英语(阿拉伯数字转为英文类似阿拉伯数字转人民币大写那道题,需要知道数字的英文单词)

2022/1/18 14:34:20

本文主要是介绍Java机试题:学英语(阿拉伯数字转为英文类似阿拉伯数字转人民币大写那道题,需要知道数字的英文单词),对大家解决编程问题具有一定的参考价值,需要的程序猿们随着小编来一起学习吧!

描述

Jessi初学英语,为了快速读出一串数字,编写程序将数字转换成英文:

具体规则如下:
1.在英语读法中三位数字看成一整体,后面再加一个计数单位。从最右边往左数,三位一单位,例如12,345 等
2.每三位数后记得带上计数单位 分别是thousand, million, billion.
3.公式:百万以下千以上的数 X thousand X, 10亿以下百万以上的数:X million X thousand X, 10 亿以上的数:X billion X million X thousand X. 每个X分别代表三位数或两位数或一位数。
4.在英式英语中百位数和十位数之间要加and,美式英语中则会省略,我们这个题目采用加上and,百分位为零的话,这道题目我们省略and

下面再看几个数字例句:
22: twenty two 100:  one hundred 145:  one hundred and forty five
1,234:  one thousand two hundred and thirty four
8,088:  eight thousand (and) eighty eight (注:这个and可加可不加,这个题目我们选择不加)
486,669:  four hundred and eighty six thousand six hundred and sixty nine
1,652,510:  one million six hundred and fifty two thousand five hundred and ten

说明:
数字为正整数,不考虑小数,转化结果为英文小写;
保证输入的数据合法
关键字提示:and,billion,million,thousand,hundred。   数据范围:   本题含有多组输入数据。
 

输入描述:

输入多行long型整数

输出描述:

输出相应的英文写法

 思路:和阿拉伯数字转人民币那道题基本一样。故这里不写了,可以参考转人民币那道题思路。处理范围最大到十亿,拆分数字,十亿、百万、千,最后都用百来转化。

以下单词需要使用:

 { "zero", "one", "two", "three", "four", "five", "six", "seven", "eight", "nine" };

 { "ten", "eleven", "twelve", "thirteen", "fourteen", "fifteen", "sixteen", "seventeen", "eighteen", "nineteen" };

 { "twenty", "thirty", "forty", "fifty", "sixty", "seventy", "eighty", "ninety" };

题目来源:牛客网

 



这篇关于Java机试题:学英语(阿拉伯数字转为英文类似阿拉伯数字转人民币大写那道题,需要知道数字的英文单词)的文章就介绍到这儿,希望我们推荐的文章对大家有所帮助,也希望大家多多支持为之网!


扫一扫关注最新编程教程