![]() |
|
Модераторы: korob2001, ginnie |
![]()
|
|
| qw1mb0 |
|
||||||
|
Непутевый студент ![]() Профиль Группа: Участник Сообщений: 79 Регистрация: 24.4.2010 Где: Севастополь Репутация: нет Всего: нет |
Добрый день форумчане.
Решил написать программку которая бы выводила словесный эквивалент цифрам в диапазоне от 0 до 10000. не особо пока заморачивался с вариантом если там число 20 или 923, принял за условие что такие цифры надо записывать как 0020 и 0923. Пока что получилось вот такое
Вроде все хорошо, но есть огромное НО: ввожу вот такую проверку
Почему то программа вообще ничего не выводит. Так же при вводе таких цифр, которые заканчиваются на 10-19 выводится (например для 1210): Одна тысяча Двести CODE(0x9722df0) Попробывал добавить что-то типа такого:
Но результат выполнеия все тот же. Кто увидел ошибку. Укажите пожалуйста на нее и как можно решить данную задачку. Просьба не давать готовые решения, а натолкнуть на путь истинный. |
||||||
|
|||||||
| arto |
|
|||
|
Эксперт ![]() ![]() ![]() Профиль Группа: Завсегдатай Сообщений: 1495 Регистрация: 31.10.2004 Репутация: 38 Всего: 40 |
\&lol -- ?
|
|||
|
||||
| qw1mb0 |
|
||||
|
Непутевый студент ![]() Профиль Группа: Участник Сообщений: 79 Регистрация: 24.4.2010 Где: Севастополь Репутация: нет Всего: нет |
ну это была ссылка на подпрограмму которая приведена в 3 врезке кода.
Я думал сначала сделать как вложенный массив Но как обойтись без проверки последней цифры, если само число заканчивается на 10-19. Добавлено через 7 минут и 53 секунды Разобрался с цифра 10-19.
Все корректно работает. Но слишком громоздко. Подскажите как можно уменьшить эти elsif. И почему то при добавлении проверки что цифра меньше 10000 и больше 0:
все повисает |
||||
|
|||||
| qw1mb0 |
|
|||
|
Непутевый студент ![]() Профиль Группа: Участник Сообщений: 79 Регистрация: 24.4.2010 Где: Севастополь Репутация: нет Всего: нет |
от \&lol или как в последнем варианте \@ten можно совсем избавиться, так что в данной реализации нам совсем все равно какое там значение. можно во 2 элемент массива @thrid вставить анонимный массив и в секции с проверками условий вместо $ten[i]. Вставить $thrid[1][i].
Лирическое отступление |
|||
|
||||
| qw1mb0 |
|
|||
|
Непутевый студент ![]() Профиль Группа: Участник Сообщений: 79 Регистрация: 24.4.2010 Где: Севастополь Репутация: нет Всего: нет |
Как можно уменьшить блок кода с проверками:
До какого нибудь цикла ? |
|||
|
||||
| qw1mb0 |
|
|||
|
Непутевый студент ![]() Профиль Группа: Участник Сообщений: 79 Регистрация: 24.4.2010 Где: Севастополь Репутация: нет Всего: нет |
Переделал такой пример для аналогичной задачки с годом
Буду рад любым замечаниям по обоим кодам |
|||
|
||||
| qw1mb0 |
|
|||
|
Непутевый студент ![]() Профиль Группа: Участник Сообщений: 79 Регистрация: 24.4.2010 Где: Севастополь Репутация: нет Всего: нет |
Избавился от уродского блока проверок. Я конечно извиняюсь, что я так тупо посты набиваю.... просто пишу сразу как получается что-то решить. буду рад коментариям бывалых |
|||
|
||||
| qw1mb0 |
|
|||
|
Непутевый студент ![]() Профиль Группа: Участник Сообщений: 79 Регистрация: 24.4.2010 Где: Севастополь Репутация: нет Всего: нет |
И конечный вариант получился таким:
|
|||
|
||||
![]()
|
| Правила форума "Perl" | |
|
|
Если Вам понравилась атмосфера форума, заходите к нам чаще! С уважением, korob2001, sharq. |
| 0 Пользователей читают эту тему (0 Гостей и 0 Скрытых Пользователей) | |
| 0 Пользователей: | |
| « Предыдущая тема | Perl: Общие вопросы | Следующая тема » |
|
|
По вопросам размещения рекламы пишите на vladimir(sobaka)vingrad.ru
Отказ от ответственности Powered by Invision Power Board(R) 1.3 © 2003 IPS, Inc. |