Вопрос задан 20.02.2019 в 23:41. Предмет Информатика. Спрашивает Киршина Настюшка.

Коля предложил Пете более сложную игру, чем изложенная в задании 40. Коля задумывает натуральное

число из интервала от 1 до n. Петя должен это число отгадать. Он может задавать вопросы коле, допускающие только ответы да или нет. Петя разработал алгоритм, позволяющий за наименьшее число вопросов отгадать число, задуманное Колей. Выясните сколько вопросв потребуется Пете, чтобы отгадать задуманное число , если оно принадлежит интервалу: 1) от 1 до 32 2) от 1 до 512 3) от 1 до 300 4) от 1 до 1024 Плз помогите срочно надо!!!!!!!!!!!!
0 0
Перейти к ответам

Ответы на вопрос

Внимание! Ответы на вопросы дают живые люди. Они могут содержать ошибочную информацию, заблуждения, а также ответы могут быть сгенерированы нейросетями. Будьте внимательны. Если вы уверены, что ответ неверный, нажмите кнопку "Пожаловаться" под ответом.
Отвечает Daribaev Jantai.

1) 5

2) 9

3) 9

4) 10

 

 

алгоритм простой, представим число n-1 (т.к. ноль не учитывается) в качестве двойчной последовательности, для числа n=32 это будет 11111 дальнейший алгоритм прост, рассмотрим его на примере, задумано число 26:

1) проверяем правый регист (*0000 = 16), задаем вопрос "задуманое число больше 16?", ответ "да", значит первы регистр 1

2) проверяем следующий (1*000=24), задаем вопрос "задуманое число больше 24?", ответ "да", значит регистр 1

3) проверяем следующий (11*00=28), задаем вопрос "задуманое число больше 28?", ответ "нет", значит регистр 0

4)проверяем следующий (110*0=26), задаем вопрос "задуманое число больше 26?", ответ "нет", значит регистр 0

 

 5) проверяем следующий (1100*=25), задаем вопрос "задуманое число больше 25?", ответ "да", значит регистр 1

итого получаем задуманное число в двоичной форме 11001 = 25, но т.к. мы не учитываем 0, то к этому числу надо прибавить 1, итого задусманное число 26

 

 

0 0
Отвечает нейросеть ChatGpt. Будьте внимательны, ответы нейросети могут содержать ошибочные или выдуманные данные.

Постановка задачи

Коля предложил Пете более сложную игру, чем изложенная в задании 40. Коля задумывает натуральное число из интервала от 1 до n. Петя должен это число отгадать, задавая вопросы Коле, на которые можно получить только ответы "да" или "нет". Петя разработал алгоритм, позволяющий за наименьшее число вопросов отгадать число, задуманное Колей. Наша задача - выяснить, сколько вопросов потребуется Пете, чтобы отгадать задуманное число, если оно принадлежит интервалу:

1) от 1 до 32 2) от 1 до 512 3) от 1 до 300 4) от 1 до 1024

Решение

Для решения этой задачи мы можем использовать метод деления пополам. Этот метод позволяет сокращать интервал возможных чисел в два раза с каждым заданным вопросом.

Начнем с первого интервала от 1 до 32. Первый вопрос Пети может быть: "Число, которое ты задумал, больше 16?". Если Коля ответит "да", то Петя может исключить все числа от 1 до 16 и продолжить делить оставшийся интервал пополам. Если Коля ответит "нет", то Петя может исключить все числа от 17 до 32 и также продолжить делить интервал пополам.

Продолжая задавать вопросы в форме "Число, которое ты задумал, больше половины текущего интервала?", Петя сможет сократить интервал возможных чисел до одного. Таким образом, Пете потребуется 5 вопросов, чтобы отгадать число, задуманное Колей, в интервале от 1 до 32.

Аналогично, для остальных интервалов:

2) от 1 до 512: Пете потребуется 9 вопросов. 3) от 1 до 300: Пете потребуется 9 вопросов. 4) от 1 до 1024: Пете потребуется 10 вопросов.

Таким образом, Пете потребуется разное количество вопросов в зависимости от интервала, но максимальное количество вопросов составляет 10.

Ответ

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

1) от 1 до 32: 5 вопросов. 2) от 1 до 512: 9 вопросов. 3) от 1 до 300: 9 вопросов. 4) от 1 до 1024: 10 вопросов.

0 0

Топ вопросов за вчера в категории Информатика

Последние заданные вопросы в категории Информатика

Задать вопрос