Техник
318 / 176 / 27
Регистрация: 09.10.2009
Сообщений: 3,109
|
|
1 | |
Задачка для мозга26.10.2011, 09:17. Показов 4836. Ответов 28
Метки нет (Все метки)
Помогите решить задачку:
Рассеянный кассир, оплачивая чек мистеру X, перепутал доллары и центы и отсчитал клиенту доллары вместо центов и центы вместо долларов. Купив газету за пять центов, X обнаружил, что денег у него вдвое больше, чем он должен был получить по чеку. На какую сумму был выписан чек? Нашел ее решение в устном виде, известно что используется диофантово ур-ие. Но как сделать решение задачи на Си в общем виде, чтоб программа сама нашла ответ, ни как догнать не могу... Полное решение не прошу) Хотя бы советы, или мысли по поводу задачи. Хочется все таки самому сделать в итоге.
0
|
26.10.2011, 09:17 | |
Ответы с готовыми решениями:
28
Работа с реестром, взрыв мозга Вынос мозга с чтением файла Задачка для С++ Задачка для реализации в С++ |
Заблокирован
|
|
26.10.2011, 10:06 | 2 |
[quote=DenProx;2105431]Хотя бы советы, или мысли по поводу задачи. [quote]
Пусть А - цена товара Это вещественное число, т.к. в задаче речь ведётся и про доллары и про центы Итак А = В + С/100 (где В - число долларов С - число центов) Бедный мистер Х сделал следующую проплату D + E (где D = С - число долларов Е = В - число центов) Переведём D + E в доллары, получим A1 = D + E/100 Имеем разницу А - А1 = В + С/100 - С + В/100 Пусть в кошельке изначально было Z долларов Имеем (Z - A)*2 = (Z - A1) Вот система А - А1 = В + С/100 - С + В/100 (Z - A)*2 = (Z - A1) Решите её относительно В и С, как по мне всё довольно просто...
1
|
Техник
318 / 176 / 27
Регистрация: 09.10.2009
Сообщений: 3,109
|
|
26.10.2011, 10:09 [ТС] | 3 |
-=ЮрА=-, спасибо) буду думать)
0
|
Заблокирован
|
|
26.10.2011, 10:15 | 4 |
Продолжу (Z - A)*2 = (Z - A1) => Z = A - A1
- как видим стоимость покупки зависит от изначального количества денег в кошельке мистера Х Получаем 100*Z = 101*В - 99*С Добавлено через 3 минуты DenProx, сама программа не проблемма, меня смущает множественнность решений , вы говорили что обладаете - приведите это решение, написать программу для меня не проблемма, сам алгоритм нужен, вот
0
|
Техник
318 / 176 / 27
Регистрация: 09.10.2009
Сообщений: 3,109
|
|
26.10.2011, 10:25 [ТС] | 5 |
-=ЮрА=-,
Рассеянный кассир, оплачивая чек мистеру Брауну, перепутал доллары и центы и отсчитал клиенту доллары вместо центов и центы вместо долларов. Купив газету за пять центов, Браун обнаружил, что денег у него ровно в двое больше, чем он должен получить по чеку. На какую сумму был выписан чек? Решение: Пусть х – число долларов, а у – число центов в той сумме, на которую мистер Браун выписал чек. Запишем условие задач в виде уравнения: 100у+х–5=2(100х+у), или, 99у-199х=5. Это диофантово уравнение, имеющее бесконечно много решений в целых числах. Обычный метод решения с помощью непрерывных дробей дает наименьшее значение в положительных числах х=31, у=63. Следовательно, мистер Браун выписал чек на сумму 31 доллар 63 цента. Это единственный ответ к задачи, поскольку ближайшее к найденному решение х=129, у=262 не удовлетворяет требованию: у должен быть меньше 100 (В одном долларе сто центов). Ответ: 31 доллар 63 цента. http://www.tgl.net.ru/wiki/ind... B8%D0%B5_7
0
|
Заблокирован
|
|
26.10.2011, 10:34 | 6 |
- а ну получается я был прав, ну что тогда я попробую организовать этот перебор
и вконце будет пропечатано + учту эти ограничения . т.е программа нужна чтобы сделать перебор за насМне понадобиться какое-то время, хотя Вы тожете можете попробовать указанный мною пробор поорганизовывать, когда буду готов отпишусь и сравним что у нас получилось, как Вам идея?
1
|
Техник
318 / 176 / 27
Регистрация: 09.10.2009
Сообщений: 3,109
|
|
26.10.2011, 10:38 [ТС] | 7 |
-=ЮрА=-, идея хорошая) но я только вечером возможно буду готов... щас на работе, времени нет
0
|
|
26.10.2011, 10:40
#8
|
0
|
Техник
318 / 176 / 27
Регистрация: 09.10.2009
Сообщений: 3,109
|
||||||
27.10.2011, 09:01 [ТС] | 9 | |||||
-=ЮрА=-,
Не по теме: ок :) Добавлено через 22 часа 19 минут Что то у меня пока не особо получается. Еще и работы привалило... в нете нашел решение подобной задачи, но ответ выдает не совсем такой как указан в приведенном мной примере выше. вот код, который я нашел:
0
|
DenProx
|
27.10.2011, 11:04
[ТС]
#11
|
Не по теме: -=ЮрА=-, да не страшно) у самого еще дел образовалось кучу... тож пока не до задачки )
0
|
Техник
318 / 176 / 27
Регистрация: 09.10.2009
Сообщений: 3,109
|
|
22.11.2011, 11:03 [ТС] | 12 |
Хотел бы поднять тему, т.к. решить так и не получилось пока что задачу, так чтобы ответы совпали с теми что приводятся в примере.
0
|
Заблокирован
|
||||||
22.11.2011, 13:11 | 13 | |||||
- приношу извинения я тогда сделал, а разместить забыл, ниже мой взгляд на проблемму
1
|
Техник
318 / 176 / 27
Регистрация: 09.10.2009
Сообщений: 3,109
|
|
22.11.2011, 13:16 [ТС] | 14 |
-=ЮрА=-, Спасибо) Можете немного объяснить, что выводится?) ответ к которому я стремился :
Х = 31, У = 63. По какому условию можно выбрать эти значения из данных чисел?
0
|
Заблокирован
|
|
22.11.2011, 13:27 | 15 |
возвращаюсь ко 2-му посту
Итоговая система: А - А1 = В + С/100 - С - В/100 Не по теме: (я в формуле накосил когда скобки раскрыл было В + С/100 - С + В/100) (Z - A)*2 = (Z - A1) Раскрыв скобки получим Z = 2*A - A1 {A = B + C/100; A1 = C + B/100} Z = 2*B + (2/100)*C - C - B/100 100*Z = 199*B - 98*C if((Z - B + C/100.0) == (Z - C + B/100.0)*2)
1
|
Техник
318 / 176 / 27
Регистрация: 09.10.2009
Сообщений: 3,109
|
||||||
22.11.2011, 13:32 [ТС] | 16 | |||||
-=ЮрА=-, Спасибо)) Уже понял))
кст, вот еще один вариант решения:
0
|
Заблокирован
|
|
22.11.2011, 13:38 | 17 |
DenProx, предостерегаю Вас, здесь кроется недочёт
Типы переменных int делите на int Вы можете 2/3 и получить нолик, я недаром писал - эти неявно к даблу преобразовывал, вот. Будьте внимательны при делении, я сам много раз обжигался
1
|
Техник
318 / 176 / 27
Регистрация: 09.10.2009
Сообщений: 3,109
|
|
22.11.2011, 13:44 [ТС] | 18 |
-=ЮрА=-, спасибо!)) Учту на будущее
0
|
|
22.11.2011, 13:45
#19
|
0
|
Техник
318 / 176 / 27
Регистрация: 09.10.2009
Сообщений: 3,109
|
|
22.11.2011, 13:46 [ТС] | 20 |
-=ЮрА=-, исходное уравнение задачи: 98х-199у=5 (5 центов)
1
|
22.11.2011, 13:46 | |
22.11.2011, 13:46 | |
Помогаю со студенческими работами здесь
20
задачка для зачета Задачка от Страуструпа для новичков Очень простая задачка (но не для меня) Сложноватая задачка для нахождения интеграла Искать еще темы с ответами Или воспользуйтесь поиском по форуму: |