我们刚从大学的计划开始,我需要一些帮助来完成我的任务。
我们将编写一个将数字转换为单词的程序,例如 EG: 1 to "one"。
它必须适用于 10 ^ 9 以内的所有数字。我不知道如何做到这一点。
我的基本想法是创建某种数组或列表,在其中我将这些数字定义为如下单词:
('ZERO', 0) ('ONE', 1) ('TWO', 2) ('THREE', 3) ('FOUR', 4) ('FIVE', 5) ('SIX', 6)
('SEVEN', 7) ('EIGHT', 8) ('NINE', 9) ('TEN', 10) ('ELEVEN', 11) ('TWELVE', 12)
('THIRTEEN', 13) ('FOURTEEN', 14) ('FIFTEEN', 15) ('SIXTEEN', 16)
('SEVENTEEN', 17) ('EIGHTEEN', 18) ('NINETEEN', 19) ('TWENTY', 20) ('THIRTY', 30)
('FORTY', 40) ('FIFTY', 50) ('SIXTY', 60) ('SEVENTY', 70) ('EIGHTY', 80)
('NINETY', 90) ('HUNDRED', 100) ('THOUSAND', 1000) ('MILLION', 1000000)
('BILLION', 1000000000) ('TRILLION', 1000000000000)
('QUADRILLION', 1000000000000000)
然后以某种方式使用此列表检查输入值并用单词替换数字。
但实现这一点给我带来了一些麻烦。
困扰我的主要问题是,Scheme 是否可以处理子字符串,以及我是否可以制作一个列表,在其中将这些数字定义为单词(因此将 1 定义为一个)。