istok11
?>

В1)напишите программу, которая определяет, верно ли, что введенное число-трехзначное 2)напишите программу, которая вводит с клавиатуры номер месяца и день, и определять, сколько дней осталось до нового года.при вводе неверных данных должно быть выведено сообщение об ошибке в

Информатика

Ответы

Zhulanova-IP501
A)X = *5(16) = *0*(8)
# код на руби
for i in "100".to_i(8).."f5".to_i(16)
    p [i, i.to_s(16), i.to_s(8)] if i%16==5 and (i/8)%8==0
end

Выдает 3 варианта ответов
[69, "45", "105"]
[133, "85", "205"]
[197, "c5", "305"]


б)X = 3*9(16)= 1**(8)
тут или ошибка или нужно доказать что такого числа нет
Минимальное 16ричное число при таких данных 309(16) = 777(10)
Максимальное 8ричное число при таких данных 177(8) = 127(10)
Так что такого числа нет

если переписать условие иначе
б)X = 3*9(16)= 1***(8)

тогда

# код на руби
for i in 0..2000
    p [i, i.to_s(16), i.to_s(8)] if i%16==9 and (i/16/16)==3 and i/8/8/8==1
end

дает такие ответы
[777, "309", "1411"]
[793, "319", "1431"]
[809, "329", "1451"]
[825, "339", "1471"]
[841, "349", "1511"]
[857, "359", "1531"]
[873, "369", "1551"]
[889, "379", "1571"]
[905, "389", "1611"]
[921, "399", "1631"]
[937, "3a9", "1651"]
[953, "3b9", "1671"]
[969, "3c9", "1711"]
[985, "3d9", "1731"]
[1001, "3e9", "1751"]
[1017, "3f9", "1771"]
mar1030
Удобнее всего решать с использованием промежуточной двоичной системы, поскольку 16=2⁴, в 8=2³. В силу этого каждая шестнадцатиричная цифра изображается четырьмя битами (тетрадой), а каждая восьмеричная - тремя (триадой).
Заменим неизвестные биты символом Х.
1010₁₆ = ХХХ ХХ1 010₈
Запишем изображения битов друг под другом с учетом известной нам информации.
   Х Х Х Х 1 0 1 0
Х Х Х Х Х 1 0 1 0
Теперь известные биты в конце чисел можно отбросить
   Х Х Х Х
Х Х Х Х Х
Очевидно, во втором (восьмеричном числе первый бит нулевой, поскольку оба числа в двоичной записи одинаковы и остается только ₂.
Эти четыре бита (обозначим их IJKL) могут дать 16 комбинаций. Но требование, чтобы восьмеричное число имело три цифры, старшая из которых не может быть нулем, запрещает комбинацию IJ=00, поэтому 4 комбинации из 16 надо вычеркнуть. Останется 12.

ответ: 12 чисел.

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

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

В1)напишите программу, которая определяет, верно ли, что введенное число-трехзначное 2)напишите программу, которая вводит с клавиатуры номер месяца и день, и определять, сколько дней осталось до нового года.при вводе неверных данных должно быть выведено сообщение об ошибке в
Ваше имя (никнейм)*
Email*
Комментарий*

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

agent-ulitka5
yamalsva45
Alyona744
Нана_Елена
tany821
natalyaionova
ooo-krasa
rsksnb
Александрович686
Yuliya701
AnzhelikaSlabii1705
Vyacheslavovna240
arnika-ooo1
vovababkin1477
egamedicalbuh