![]() |
|
|
Регистрация Восстановить пароль |
Регистрация | Задать вопрос |
Заплачу за решение |
Новые сообщения |
Сообщения за день |
Расширенный поиск |
Правила |
Всё прочитано |
![]() |
|
Опции темы | Поиск в этой теме |
![]() |
#1 |
Пользователь
Регистрация: 20.04.2010
Сообщений: 10
|
![]()
ЗДРАВствуйте ))) вот нам препод интересную задачку подкинул...
ввести любое число более 100 миллиарда с клавиатуры и вывести его на экран словами,используя case . помогите решить плиз) |
![]() |
![]() |
![]() |
#3 |
Пользователь
Регистрация: 23.02.2010
Сообщений: 69
|
![]()
решал эту задачу неделю.
первый код на паскале БЕЗ АЛГОРИТМОВ интернета (тоже самое, что собирать кубик-рубика самому, без алгоритмов) за 4 часа размышлений и 3 часа коддинга. 1 вариант был на 470 строк 2 вариант был на 280 3 с процедурами на 128 и 4-ый вариант с Юнитами был вообще в 6 строк. Вам если нужен Дельфи - то в инете полным полно, если Паскаль - могу скинуть.
Помог? Нажми на <Весы> слева.
С++, Pascal, Assembler 386 - под заказ. |
![]() |
![]() |
![]() |
#4 |
Пользователь
Регистрация: 06.11.2009
Сообщений: 68
|
![]()
Главное - учитывать разряд и саму цифру/набор цифр. Легче работать с чаровским массивом. Первым делом, думаю, надо его инвертировать (скажем, было 12345, станет 54321), чтобы разряды правильно нумеровались, т.е. 5 (единицы), встанут на индекс 0, 4 (десятки) - на 1 и т.д. Далее сразу научиться обрабатывать исключения (если в разряде единиц стоит, к примеру, 3, а в разряде десятков 1 - это тринадцать и т.д.). Ещё надо решить, работать с дискретными названиями или с приставками (скажем, если у нас есть цифры 5, 50, 500 - они прописью будут пять, пятьдесят, пятьсот - т.е. приставка "пять" есть везде, значит её определим как отдельный элемент, а "десят", "сот" как отдельные, ведь они встречаются и для 60/600, и для 70/700 и т.д.). Мне кажется, корректнее работать с дискретными названиями. Если я правильно подсчитал, то так нужно будет определить 48 (это для ста миллиардов) дискретных строковых констант и их просто вставлять в нужное место... Имеется ввиду в выходной строке)))). Самое сложно здесь - правильно рассматривать группы цифр и отсекать ненужные суффиксы (к примеру 300000 - это не триста тысяч нуль нуль нуль, а просто триста тысяч). Вот пока идейки.
Последний раз редактировалось silent_1991; 21.04.2010 в 01:21. |
![]() |
![]() |
![]() |
#5 |
Пользователь
Регистрация: 20.04.2010
Сообщений: 10
|
![]()
оу)))здорово.....)))мне на паскале нужно....я точно не знаю как лучше,у нас первый курс,мне ещё это объяснить надо будет.ну я думаю разберусь..просто это реально хорошенькая задачка,но к сожалению я не Ас в паскале...а вот понять как всё делается -хочется))была бы очень благодарна если б ты мне скинуть решение на паскале
|
![]() |
![]() |
![]() |
#6 |
Форумчанин
Регистрация: 06.03.2009
Сообщений: 583
|
![]()
Вот к примеру:
http://forum.codeby.net/topic12446.html В целом, если погуглить, то есть даже готовые варинты.
Не стыдно чего-то не знать, стыдно не стремиться к знаниям.
|
![]() |
![]() |
![]() |
![]() |
||||
Тема | Автор | Раздел | Ответов | Последнее сообщение |
Программа: число словами | Artur09 | Помощь студентам | 3 | 10.03.2019 07:29 |
Число словами | flyinsky | Microsoft Office Excel | 11 | 07.05.2015 10:55 |
надо чтоб число q было равно месяцу(словами) | мария2507 | Microsoft Office Excel | 8 | 24.03.2010 20:02 |
Вывести число, предшествующее первому отрицательному и число, следующее за последним отрицательным | Rid | Паскаль, Turbo Pascal, PascalABC.NET | 4 | 22.12.2008 16:50 |
Найти и вывести все слова,у котоpых число гласных букв пpевышает число согласных. | Briz | Помощь студентам | 2 | 11.05.2008 00:56 |