newaktau
10.08.2022 22:34

Просто поставьте результат в фото


Просто поставьте результат в фото

Нажмите на рекламу ниже и сразу увидите ответ
Популярные вопросы:
Ответ:
artemp20012
01.09.2020 14:49

Месяц находим методом половинного деления.

Двоичная запись числа 366 размещается в 9 битах (в 8 битах размещается только 256 чисел , а в 9 битах - уже 512).

То есть , понадобится задать 8 вопросов и девятой фразой будет ответ.

В году 365 (366) дней. Пусть 366, для 365 рассуждение то же.

Рассмотрим самый худший вариант

Середина года - день номер 366/2=183. Это 1 июля.

Первый вопрос: День рождения в первой половине года?

Допустим, да.

Второй вопрос: День рождения в первом квартале?

Допустим, нет. Следовательно во втором.

Второй квартал - это дни с номерами от 92 до 182. Середина - среднее арифметическое. (92+182)/2=137. Это дата 17 мая.

Третий вопрос: День рождения позднее 17 мая?

Допустим, нет.

Следовательно, интервал дат 1 апреля - 17 мая, 91 день. Опять делим на 2, сужая интервал до 22 дней. Это дата 22 апреля.

Четвертый вопрос: День рождения позднее 22 апреля?

Допустим, нет.

Новый диапазон поиска - 23 апреля - 17 мая. Половиним его.

Пятый вопрос: День рождения позднее 29 апреля?

Допустим, нет.

Поиск сузился до 23 - 29 апреля. Снова берем половину.

Шестой вопрос: День рождения позднее 26 апреля?

Допустим, нет.

Интервал дат 23-26 апреля. Половиним.

Седьмой вопрос: День рождения позднее 24 апреля?

Допустим, да.

Интервал дат 25-26 апреля.

Восьмой вопрос: День рождения 25 апреля?

Допустим, нет

Девятая фраза: Ваш день рождения 26 апреля.

0,0(0 оценок)
Ответ:
lizayudkina
18.08.2022 02:55

Program ToDec;

Uses crt;
var s:string;
n,l,i:integer;

 

function Pow(x,y:integer):integer;
begin
     if y>0 then Pow:=Pow(x,y-1)*x
               else Pow:=1;
end;

function ToDec(A : string) : integer;
var L : Byte;
begin
      if A = '' then ToDec := 0
                else begin
                              L := length(A);
                               case A[1] of
                                     '0' : ToDec := ToDec(Copy(A, 2, L - 1));
                                     '1' : ToDec := Pow(2, L - 1) + ToDec(Copy(A, 2, L - 1));
                                end;
     end;
end;

begin
     clrscr;
     write('Введите двоичное число: ');
     readln(s);
      writeln('Это число в десятичной системе : ', ToDec(S));
 readkey;
end.

 

 

 

0,0(0 оценок)
Полный доступ
Позволит учиться лучше и быстрее. Неограниченный доступ к базе и ответам от экспертов и ai-bota Оформи подписку
logo
Начни делиться знаниями
Вход Регистрация
Что ты хочешь узнать?
Спроси ai-бота