Форум программистов
 

Восстановите пароль или Зарегистрируйтесь на форуме, о проблемах и с заказом рекламы пишите сюда - alarforum@yandex.ru, проверяйте папку спам!

Вернуться   Форум программистов > IT форум > Помощь студентам
Регистрация

Восстановить пароль

Купить рекламу на форуме - 42 тыс руб за месяц

Ответ
 
Опции темы Поиск в этой теме
Старый 17.06.2016, 18:47   #1
verdant322
Пользователь
 
Регистрация: 22.05.2016
Сообщений: 26
По умолчанию Запутаная лабораторка С++

Срочно нужно,помогите

Первое, что нужно понять, для того чтобы преобразовать цифры складывающие числа в слова, это по сколько разрядов нужно преобразовывать за один раз. Если писать программу, которая будет сразу преобразовывать числа любой сложности, она окажется громоздкой и не эффективной. Однако, если проанализировать то каким именно образом цифры складываются в слова, можно найти определённую закономерность, повторяющихся элементов. Т.е. числа любой длинны и сложности, при их чтении, разбиваются на более короткие выражения. Определив длину этого выражения можно значительно упростить себе задачу. Для начала, попробуйте сделать это самостоятельно. Если у вас получилось три разряда, то вы совершенно правы! Т.е. число 423423423 при его чтении воспринимается так: 423 миллиона, 423 тысячи 423. Следовательно, программе нужно просто разбить число на фрагменты по три разряда и преобразовывать лишь трёхразрядное число, добавляя после него нужное слово порядка (миллиарды, миллионы, тысячи, сотни и т.д.)
Второе на что следует обратить внимание – это упрощение работы с тройками разрядов. Заметьте, что и сами тройки тоже состоят из одинаковых элементов и этим также можно воспользоваться.
Третья важная вещь – это языковые особенности. Так, одна и та же цифра, находясь в разных разрядах, читается по-разному: 9 – девять, 90 – девяносто, 900 – девятьсот. Кроме того, порядок, в зависимости от последней цифры, тоже может читаться по-разному: 152 тысячи, однако
155 тысяч. Всё это нужно будет учесть в программе. Но самое главное не забыть, что числа между 10 и 20 читаются вообще уникальным образом: 14 – это не десять четыре, а четырнадцать.

Задание:
1. Запросить пользователя ввести с клавиатуры число, посчитать в нём разряды и руководствуясь вышесказанным, преобразовать число написанное цифрами в число написанное словами. В конечном итоге, программа должна уметь преобразовывать числа вплоть до 9 разрядов, а если получится, то и более. Использовать минимум одну функцию!
2. Сделать проверку на превышение максимальновозможного количества разрядов. Зациклить программу до момента, пока пользователь не решит выйти.
verdant322 вне форума Ответить с цитированием
Старый 18.06.2016, 00:22   #2
min@y™
Цифровой кот
Старожил
 
Аватар для min@y™
 
Регистрация: 29.08.2014
Сообщений: 7,629
По умолчанию

Цитата:
для того чтобы преобразовать цифры складывающие числа в слова, это по сколько разрядов нужно преобразовывать за один раз
Это чо я щас такое прочитал?...
Цитата:
Запутаная лабораторка С++
Рапунцель, выдыхай... Ты не в той сказке...

Расскажу я вам, дружочки, как выращивать грибочки: нужно в поле утром рано сдвинуть два куска урана...

Последний раз редактировалось min@y™; 18.06.2016 в 00:27.
min@y™ вне форума Ответить с цитированием
Старый 28.06.2016, 12:45   #3
ura_111
Участник клуба
 
Регистрация: 14.05.2016
Сообщений: 1,793
По умолчанию

Поищи на форуме ещё. Ну вот например:

http://www.programmersforum.ru/showt...0%EB%FC&page=4
ura_111 вне форума Ответить с цитированием
Ответ


Купить рекламу на форуме - 42 тыс руб за месяц



Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Лабораторка Марина Дзагоева Помощь студентам 5 27.06.2013 09:40
Лабораторка HTML wert696 Помощь студентам 3 20.03.2013 21:27
Простая лабораторка на СИ DKbelRoma Фриланс 5 07.12.2012 17:57
Лабораторка Бибик Помощь студентам 0 12.12.2009 19:46
лабораторка по паскалю werus Помощь студентам 4 21.06.2009 20:54