Току-що започнахме със схемата в университета и имам нужда от помощ, за да изпълня задачата си.
Ще напишем програма, която превежда числата в думи, например: 1 към "едно".
Трябва да работи за всички числа до 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 като едно).