oksanamalakhova004610
?>

Вдетской игре «угадай число» первый участник загадывает целое число в промежутке от 1 до 16. второй участник задает вопрос: «загаданное число больше числа…? » какое максимальное количество вопросов при правильной стратегии (интервал чисел в каждом вопросе делится пополам) гарантирует угадывание? a) 1; b) 2; c) 3; d) 4.

Информатика

Ответы

dilanarthur27
Делим группу чисел от 1 до 16 на 2 группы. 12345678 и 9 10 11 12 13 14 15 16
Спрашиваем больше ли 8 загаданное число? Допустим ответили, что не больше.
Тогда берём первую группу чисел и снова делим на 2 группы. 1234 5678. И снова задаём вопрос о величине числа относительно уже 4. Допустим отвечают, что больше.
Теперь берём группу чисел "5678" и снова делим её пополам (56 и 78). Проделываем всё то же самое.
Остаётся всего два числа и тут уже Не трудно будет узнать число. Суммируя число вопросов получается 4.
Yevgenevich_Chipura-Nikolaeva
Остаётся два числа суммируя число получается 4
Надежда-Алексеевна82
Если ввести X или Y значительно больше чем Z то программа на втором или тертьем условии выдаст false и закончит свою работу ничего не написав. Например: если указать X = 10 , Y = 2, Z = 3; то на первом условии будет true, потому что 10 +2 > 3 , но на третьем условии выдаст false потому что 2+3 < 10 но так как ничего не прописано на этот случай программа просто закончит свою работу.
Что бы исправить этот баг необходимо все условия свести в одно: 
if ((x + y > z)and (x + z > y) and (y + z > x) ) then 
   writeln('треугольник построить можно')
else  
 writeln('треугольник построить нельзя');
end.

Это решение так же является ответом на 3-й вопрос.
sbn07373
Если ввести X или Y значительно больше чем Z то программа на втором или тертьем условии выдаст false и закончит свою работу ничего не написав. Например: если указать X = 10 , Y = 2, Z = 3; то на первом условии будет true, потому что 10 +2 > 3 , но на третьем условии выдаст false потому что 2+3 < 10 но так как ничего не прописано на этот случай программа просто закончит свою работу.
Что бы исправить этот баг необходимо все условия свести в одно: 
if ((x + y > z)and (x + z > y) and (y + z > x) ) then 
   writeln('треугольник построить можно')
else  
 writeln('треугольник построить нельзя');
end.

Это решение так же является ответом на 3-й вопрос.

Ответить на вопрос

Поделитесь своими знаниями, ответьте на вопрос:

Вдетской игре «угадай число» первый участник загадывает целое число в промежутке от 1 до 16. второй участник задает вопрос: «загаданное число больше числа…? » какое максимальное количество вопросов при правильной стратегии (интервал чисел в каждом вопросе делится пополам) гарантирует угадывание? a) 1; b) 2; c) 3; d) 4.
Ваше имя (никнейм)*
Email*
Комментарий*

Популярные вопросы в разделе

maksim1lssah575
Pona4ka93
elena-novikova-1992
makscska22879
ann328389
evrotrastop64
Anshel2018534
Anastasiya Yevseeva948
Devaunka40
proea
ohussyev
Vs1377
lsuvorova1987
toxicfish
semenov-1970