Помощь - Поиск - Пользователи - Календарь
Полная версия: Поиск комбинации
Форум «Всё о Паскале» > Pascal, Object Pascal > Задачи
Kos
Уважаемые программисты, мне была задана задача по информатике, но понять как делать я не смог, а потому и обращаюсь к вам...
Текст задачи:
Клиент банка забыл 4-значный шифр своего сейфа, но помнит, что шифр был простым числом, а произведение шифра равняется 243, сколько и каких вариантов надо чтоб отгадать шифр.

Мысли есть, но они наверно глупы...
1. Создать подпрогу, которая выводит числа random, при условии;
2. создать подпрогу, которая сохраняет все вариации;
Пока никаких соображений...
Заранее спасибо...
volvo
А что, просто циклом от 0 до 9999 пройтись и каждое число проверить на простоту и на "произведение" (хм... Интересно, что ты под этим подразумеваешь?) нельзя? blink.gif
klem4
Так как нужно проверять произведение цифр числа, мне кажется лучше не одним циклом от 0 до 9999, чтобы не разбивать число на цифры в процессе, а 4-мя циклами от 0 до 9


for i := 0 to 9 do
 for j := 0 to 9 do
  for k := 0 to  9 do
   for l := 0  to 9 do
    if i*j*k*l = 243 then ...

volvo
Да, так попроще будет; кроме всего прочего, последняя цифра (да и все остальные тоже) явно не может быть 0, что тоже сократит время перебора... да и последняя (критерий простоты числа) не может быть четной...
klem4
Угу ... я просто
Цитата
шифр был простым числом
- мимо ушей пропустил ..) В реально жизни таких условий для шифров сейфов нет smile.gif
Kos
Цитата(klem4 @ 15.02.2006 17:43) *

Угу ... я просто - мимо ушей пропустил ..) В реально жизни таких условий для шифров сейфов нет smile.gif

Скорее мимо глаз, ну а то что какие числа препод сказал такие и делаю rolleyes.gif ...
Kos
Klem4, он вводит только одну вариацию, а надо чтобы выводил количество и сами вариации, хотя от части ты прав, но я не могу замутить, чтобы он и количество показывал и сами вариации, сколько сижу мысли хорошие голову так и не посетили sad.gif...
klem4
Уж не знаю что ты там делаешь, телепат штатный в отпуске, у меня выдает 16 решений.
Это текстовая версия — только основной контент. Для просмотра полной версии этой страницы, пожалуйста, нажмите сюда.