alarm
Задайте вопрос
Информатика
Rolling Hills

Как узнать сколько различных цифр восьмеричной записи числа 2^102 + 2^100 + 2^85 + 2^17исполнитель калькулятор преобразует число на экране. У исполнителя есть две команды, которым присвоены номера:1. Прибавить2. Прибавить 2Программа для исполнителя Калькулятор - это последовательность команд. Как узнать сколько существует программ, для которых при исходном числе 1 результатом является число 13 и при этом траектория вычислений содержит число 7?​

ответы: 1
Зарегистрируйтесь, чтобы добавить ответ
Ответ:

(см. объяснение)

Ниже показано решение на различных языках программирования + аналитический метод.

Java:

System. out. println(BigInteger. valueOf(2). pow(102). add(BigInteger. valueOf(2). pow(100)). add(BigInteger. valueOf(2). pow(85)). add(BigInteger. valueOf(2). pow(17)). toString(8));

Pascal:

##

var res: BigInteger := BigInteger. Add(BigInteger. Add(BigInteger. Add(BigInteger. Pow(BigInteger. Parse('2'),102),BigInteger. Pow(BigInteger. Parse('2'),100)),BigInteger. Pow(BigInteger. Parse('2'),85)),BigInteger. Pow(BigInteger. Parse('2'),17));

var s: string := '';

while(not res. IsZero) do

begin

s:= BigInteger. Remainder(res,8). ToString+s;

res:= BigInteger. Divide(res,BigInteger. Parse('8'));

end;

writeln(s);

Python:

a = 2**102+2**100+2**85+2**17

s = ''

while(a>0):

s=str(a%8)+s

a//=8

print(s)

Аналитический метод:

Нужно представить все, как <число>*8^[степень]. Заметим, что:

2^{102} + 2^{100} + 2^{85} + 2^{17}=8^{34}+2*8^{33}+2*8^{28}+4*8^{5}

Результат полученный во всех случаях одинаковый:

12000020000000000000000000000400000

Это означает, что всего в числе встречается 4 различные цифры.

Задание выполнено!

356
excerpt
Чтобы ответить необходимо зарегистрироваться.

Другие вопросы: - Информатика

написать программу в питоне чере

Помоги с заданием Даю 35 Поинт

(Питон) Алгоритм вычисления знач

Даны целые числа A и B, A>B.

Прошу помощь по информатике, охо

посчитайте с задачей, Паскаль

Контакты
Реклама на сайте