From e644d2d62de7e088eb7c702b24c56a7d05a1e3ff Mon Sep 17 00:00:00 2001 From: Chris Proctor Date: Wed, 12 Apr 2023 16:07:36 -0400 Subject: [PATCH] Start --- cli.py | 4 ++-- int_to_text.py | 49 +++---------------------------------------------- 2 files changed, 5 insertions(+), 48 deletions(-) diff --git a/cli.py b/cli.py index 5d97288..5a23195 100644 --- a/cli.py +++ b/cli.py @@ -3,10 +3,10 @@ # Implements a simple number-to-text command-line interface. from argparse import ArgumentParser -from int_to_text import int_under_1000000_to_text +from int_to_text import int_under_10_to_text parser = ArgumentParser() parser.add_argument("number", type=int) args = parser.parse_args() -text = int_under_1000000_to_text(args.number) +text = int_under_10_to_text(args.number) print(text) diff --git a/int_to_text.py b/int_to_text.py index 780d701..e41858e 100644 --- a/int_to_text.py +++ b/int_to_text.py @@ -7,59 +7,16 @@ MAXIMUM = 1000000 def int_under_1000000_to_text(number): "Returns a textual representation of the number." check_number_in_range(abs(number), 1 , MAXIMUM) - if number < 1000: - return int_under_1000_to_text(number) - else: - thousands, hundreds = divide_with_remainder(number, 1000) - thousands_text = int_under_1000_to_text(thousands) - hundreds_text = int_under_1000_to_text(hundreds) - return thousands_text + " thousand " + hundreds_text + return "A big number" def int_under_1000_to_text(number): "Returns a textual representation of the number" check_number_in_range(number, 1, 1000) - if number < 100: - return int_under_100_to_text(number) - else: - hundreds, tens = divide_with_remainder(number, 100) - hundreds_text = int_under_10_to_text(hundreds) - tens_text = int_under_100_to_text(tens) - return hundreds_text + " hundred and " + tens_text + return "A big number" def int_under_100_to_text(number): check_number_in_range(number, 1, 100) - if number < 10: - return int_under_10_to_text(number) - else: - tens, ones = divide_with_remainder(number, 10) - if tens == 9: - return "ninety-" + int_under_10_to_text(ones) - elif tens == 8: - return "eighty-" + int_under_10_to_text(ones) - elif tens == 7: - return "seventy-" + int_under_10_to_text(ones) - elif tens == 6: - return "sixty-" + int_under_10_to_text(ones) - elif tens == 5: - return "fifty-" + int_under_10_to_text(ones) - elif tens == 4: - return "forty-" + int_under_10_to_text(ones) - elif tens == 3: - return "thirty-" + int_under_10_to_text(ones) - elif tens == 2: - return "twenty-" + int_under_10_to_text(ones) - elif number >= 16: - return int_under_10_to_text(ones) + "teen" - elif number == 15: - return "fifteen" - elif number == 13: - return "fourteen" - elif number == 13: - return "thirteen" - elif number == 12: - return "twelve" - elif number == 11: - return "eleven" + return "A big number" def int_under_10_to_text(number): check_number_in_range(number, 1, 10)