В
Все
М
Математика
О
ОБЖ
У
Українська мова
Х
Химия
Д
Другие предметы
Н
Немецкий язык
Б
Беларуская мова
М
Музыка
Э
Экономика
Ф
Физика
Б
Биология
О
Окружающий мир
У
Українська література
Р
Русский язык
Ф
Французский язык
П
Психология
О
Обществознание
А
Алгебра
М
МХК
Г
География
И
Информатика
П
Право
А
Английский язык
Г
Геометрия
Қ
Қазақ тiлi
Л
Литература
И
История
Nqp
Nqp
09.12.2021 16:41 •  Информатика

Водной стране жил-был волшебный кузнечик, умеющий прыгать на любое расстояние. а ко¬гда он изучил тему «числовые последовательности», то решил прыгать по дороге с нумерованны¬ми клетками по придуманному им правилу: 1 247 11 16 22 29 и так далее, дальше продолжи¬те сами. а другой кузнечик решил подкараулить его в какой-нибудь клетке n, чтобы не дать уска¬кать в бесконечность. ему, предложите алгоритм, проверяющий, попадет ли первый кузнечик в клетку n?

Показать ответ
Ответ:
андріанагалег
андріанагалег
30.07.2020 22:52
Задача 5. “Кузнечик” В одной стране жил-был волшебный кузнечик, умеющий прыгать на любое расстояние. А ко- гда он изучил тему «числовые последовательности», то решил прыгать по дороге с нумерованны- ми клетками по придуманному им правилу: 1 2 4 7 11 16 22 29 и так далее, дальше продолжи- те сами. А другой кузнечик решил подкараулить его в какой-нибудь клетке N, чтобы не дать уска- кать в бесконечность ему, предложите алгоритм, проверяющий, попадет ли первый кузнечик в клетку N? Решение: Можно догадаться, что каждое n-ное число bn = bn-1 + n – 1, где b1 = 1. Можно также догадаться, что каждое число нашей прогрессии bn = 1 + 1 + 2 + 3 + … + n – 1 = 1 + Sn , где Sn – это сумма арифметической прогрессии с a1=0 и d=1. И по формуле прогрессии получаем: bn = 1 + n(n-1)/2. Остается проверить, равно ли введенное N какому-нибудь bn. Решаем уравнение: N = 1 + n(n-1)/2, квадратное уравнение: n2 – n + 2 – 2N = 0, D = 1 – 4(2-2N) = 8N – 7, n = (1+sqrt(8N-7))/2 – берем только положительный ответ. Получился алгоритм: Подставляем N в формулу для n и если n – целое, то кузнечик попадет в клетку с номером N. Вопрос только, как проверить, целое ли n. Для этого проверяем, достаточно ли мало отклонение его от его округле- ния: если abs( n – round( n ) ) < 0,000000000000001, то n – скорее всего целое. По крайней мере с точностью до 0,000000000000001.
0,0(0 оценок)
Популярные вопросы: Информатика
Полный доступ
Позволит учиться лучше и быстрее. Неограниченный доступ к базе и ответам от экспертов и ai-bota Оформи подписку
logo
Начни делиться знаниями
Вход Регистрация
Что ты хочешь узнать?
Спроси ai-бота