[Архив!] Чистая математика, физика, химия и т.п.: задачки для тренировки мозгов, никак не связанные с торговлей - страница 428
![MQL5 - Язык торговых стратегий для клиентского терминала MetaTrader 5](https://c.mql5.com/i/registerlandings/logo-2.png)
Вы упускаете торговые возможности:
- Бесплатные приложения для трейдинга
- 8 000+ сигналов для копирования
- Экономические новости для анализа финансовых рынков
Регистрация
Вход
Вы принимаете политику сайта и условия использования
Если у вас нет учетной записи, зарегистрируйтесь
Что означает фраза Б? Откуда он, получив сумму, заранее знает, что А числа не угадает? Это очень емкий ответ на самом деле, в нем почти вся инфа о числах!
Если бы первому мудрещу сообщили произведение двух простых чисел, то он бы сразу нашел ответ.
Это очевидно. Главное - расшифровать второй коммент диалога.
любое разложение суммы, сообщенной Б, на два слагаемых приводит к тому, что хотя бы одно из слагаемых содержит два множителя.
Полагаешь, что что-то изменится?
Коренным образом. Смотри.
Выписываем все возможноные комбинации пар чисел больше единицы, сумма
которых меньше ста (таких пар 2401).
Если можно задумать два одинаковых числа, то количество пар становится куда больше. Проверяем:
Теперь кидаем этот скрипт на график и что мы видим? Число пар, сумма которых менее ста = 4656.
Если бы первому мудрещу сообщили произведение двух простых чисел, то он бы сразу нашел ответ.
Да, но не факт, что он спалился бы, сказав что отыскал так быстро нужное.
Коренным образом. Смотри.
Если можно задумать два одинаковых числа, то количество пар становится куда больше. Проверяем:
Теперь кидаем этот скрипт на график и что мы видим? Число пар, сумма которых менее ста = 4656.
for(int ii=100;ii>=2;ii--) - тут надо не так,
а вот так
for(int ii=i-1;ii>=2;ii--)
for(int ii=100;ii>=2;ii--) - тут надо не так,
а вот так
for(int ii=i-1;ii>=2;ii--)
Нет - так мы ни когда не переберём сочетание двух одинаковых чисел, так как второе всегда будет на 1 меньше.
Мы исходим из того, что есть.
А в цикле пары чисел дублировать не стоит.
Ну тогда попробуй так
for(int ii=i;ii>=2;ii--)