Дается старт самостоятельной работе над программой num_str согласно заданию
Дата отправки отчёта:
12 февраля 2019 г.
Задание выполнено: за
2 час. 25 мин.
Чему научился:
Добавил в программу вывод полных слов вместо тыс, млн, млрд. Исправил ошибку при выводе прописью цифр 1, 2. Например, раньше было "один тыс", сейчас "одна тыс". Дополнительно убрал лишние пробелы в выводе строки. Остался открытым вопрос с универсальным выводом чисел вне указанного диапазона. Можно расширить список, добавить новые названия, но это проблему не решит, а лишь отодвинет максимальную планку. Хотя для большинства задач думаю можно найти эту приемлимую максимальную планку и ориентироваться на неё :)
Отлично проработано с миллионами и тысячами. С вопросом максимума можно подумать в таком направлении: если на первом этапе (обработка числа наивысшего порядка (миллиарды, триллионы и т.п., судя по первому массиву)) число больше тысячи, то его не раскладывать прописью, а выводить числом, (т е 1256 миллиардов четыреста восемьдесят пять миллионов сто пятьдесят восемь тысяч девятьсот двадцать девять). Но это как вариант предотвращения исключений, простое неправильное решение.
Кстати да, я думал про такой вариант, даже больше, не просто выводить 1256 числом, а выводить прописью, своего рода рекурсивно :) Но я подумал, что это получится громоздко и нечитабельно, математики не оценят. На мой взгляд, лучшее решение найти максимальную планку, какой-нибудь квадриллион и ориентироваться на него. С вариантом так и не определился, поэтому оставил как есть, просто до миллиарда.
ну да, пока вот такие решения. Но здесь обучающий курс, не на нобелевку с обработчиком идем))) да и не думаю, что в каких-то прикладных задачах, где нужно выводить суммы прописью постоянно (к примеру в платежках или счетах-фактурах) необходимо выводить прописью числа больше дециллионов (10**33) - такие суммы превышают бюджеты государств, разовые операции конечно возможны, но мы говорим о ПОСТОЯННО повторяющихся операциях. Так что дециллионы или гуголы - вполне нормальный максимум (название порядков - www.obrazovanie.odessa.ua/images/poradok.gif)
Спасибо Валерий, получился отличный вводный курс по Python. Я до первого урока никогда не писал программы на Python, лишь в планах маячило, а сейчас уже вполне сам смог доработать программу :)
Научился: Добавил в программу вывод полных слов вместо тыс, млн, млрд. Исправил ошибку при выводе прописью цифр 1, 2. Например, раньше было "один тыс", сейчас "одна тыс". Дополнительно убрал лишние пробелы в выводе строки. Остался открытым вопрос с универсальным выводом чисел вне указанного диапазона. Можно расширить список, добавить новые названия, но это проблему не решит, а лишь отодвинет максимальную планку. Хотя для большинства задач думаю можно найти эту приемлимую максимальную планку и ориентироваться на неё :)