【发布时间】:2010-11-04 08:23:23
【问题描述】:
我编写了一个 .NET 类,可将十进制(货币值)转换为英文可读字符串。
113.25 => 一百一十三又 25 美分。
这是支票上的金额线。代码已部署并且可以工作,但我想知道是否有比编写一堆 if、switch、整数除法和模数语句更好的方法。我希望有一个更优雅的解决方案,而不是我的 168 行代码。
【问题讨论】:
标签: .net
我编写了一个 .NET 类,可将十进制(货币值)转换为英文可读字符串。
113.25 => 一百一十三又 25 美分。
这是支票上的金额线。代码已部署并且可以工作,但我想知道是否有比编写一堆 if、switch、整数除法和模数语句更好的方法。我希望有一个更优雅的解决方案,而不是我的 168 行代码。
【问题讨论】:
标签: .net
我相信你正在寻找的东西已经在Code Golf: Number to Words的每种语言中完成了
【讨论】:
虽然这是一个常见的代码高尔夫问题,正如这里的"fizz buzz" question 所证明的那样:你并不总是得到好的答案!
优秀的 Black Wasp 资源中提供了代码:http://www.blackwasp.co.uk/NumberToWords.aspx,可以解决您的问题。也许将他们的方法与您自己的方法进行比较,看看您是否走在正确的轨道上。
虽然他们的解决方案目前只处理整数,但我想您可以非常轻松地对其进行调整,或者分别传入尾数和指数并组合结果。
希望这会有所帮助。
【讨论】: