Запись некоторого натурального числа Х в шестнадцатеричной системе счисления имеет ровно...

0 голосов
45 просмотров

Запись некоторого натурального числа Х в шестнадцатеричной системе счисления имеет ровно два значащих разряда. Это число увеличили в два раза, и оказалось, что запись получившегося числа У в шестнадцатеричной записи также имеет ровно два значащих разряда, причем сумма цифр шестнадцатеричной записи исходного числа Х равна сумме цифр шестнадцатеричной записи полученного числа У. Сколько существует таких чисел Х, которые удовлетворяют указанным условиям? В ответе укажите целое число.


Информатика (49 баллов) | 45 просмотров
Дано ответов: 2
0 голосов
Правильный ответ

Задача достаточно интересная, получил удовольствие от решения.
Шестнадцатиричное число, занимающее два разряда, может рассматриваться как две тетрады двоичных чисел. Пронумеруем разряды слева направо, тогда можно представить двухзначное 16-ричное число следующим набором битов:
|a_3\,a_2\,a_1\,a_0\,|\,b_3\,b_2\,b_1\,b_0|
Индексы, кроме положения бита, показывают степень двойки, на которую надо умножить бит, чтобы перейти к десятичному эквиваленту шестнадцатиричной цифры, т.е. старшая цифра в десятичной системе запишется как
2^3*a_3+2^2*a_2+2^1*a_1+2^0*a_0=8a_3+4a_2+2a_1+a_0
Умножение числа на 2 в двоичной системе эквивалентно его сдвигу влево на один разряд. При этом старший разряд старшей тетрады должен перейти в новую, третью тетраду или он будет утерян. Но по условию, после умножения число по-прежнему имеет два разряда, следовательно мы должны потерять старший разряд безболезненно, а это возможно только если он нулевой.
Тогда первоначальное число должно быть записано как
|0\,a_2\,a_1\,a_0\,|\,b_3\,b_2\,b_1\,b_0|
а после удвоения его запись примет вид
|a_2\,a_1\,a_0\,b_3\,|\,b_2\,b_1\,b_0\,0|
Запишем сумму цифр исходного числа p1:
p1=(4a_2+2a_1+a_0)+(8b_3+4b_2+2b_1+b_0)
Теперь запишем сумму удвоенного числа p2:
p2=(8a_2+4a_1+2a_0+b_3)+(8b_2+4b_1+2b_0)
По условию эти две суммы равны и мы составляем уравнение:
p1=p2 \to p1-p2=0; \\ 4a_2+2a_1+a_0+8b_3+4b_2+2b_1+b_0- \\ (8a_2+4a_1+2a_0+b_3+8b_2+4b_1+2b_0)=0; \\ -4a_2-2a_1-a_0+7b_3-4b_2-2b_1-b_0=0; \\ b_3= \frac{1}{7}(4a_2+2a_1+a_0+4b_2+2b_1+b_0)\qquad \qquad (1)
Полученное уравнение решается на множестве двоичных чисел.
Поскольку исходное число двузначное, по крайней мере в старшем разряде оно содержит цифру, отличную от нуля. Следовательно, b3 не может равняться нулю и остается только положить b3=1. Тогда уравнение (1) примет следующий вид:
\frac{1}{7}(4a_2+2a_1+a_0+4b_2+2b_1+b_0)=1; \\ 4a_2+2a_1+a_0+4b_2+2b_1+b_0=7 \qquad \qquad (2)
Учитывая, что каждый бит может принимать значения только 0 и 1, мы должны найти такие комбинации бит, которые дадут в сумме 7=4+2+1, потому что у нас в уравнении только такие коэффициенты. Сгруппируем члены в (2):
4(a_2+b_2)+2(a_1+b_1)+(a_0+b_0)=7 \to \begin {cases} a_2+b_2=1 \\a_1+b_1=1 \\a_0+b_0=1 \end {cases} \qquad (3)
Полученная система уравнений будет иметь 7 вариантов решений (вариант a2=a1=a0=0 исключается в силу необходимости наличия цифры в старшем разряде), которым в старшем разряде будут соответствовать цифры от 001(2) до 111(2) или от 1(10) до 7(10).

Ответ: 7

Замечание: Из (3) можно легко найти числа, которые соответствуют заданным условиям: 30, 45, 60, 75, 90, 105, 120 (все в десятичной системе счисления). В 16-ричной системе они запишутся как 1E, 2D, 3C, 4B, 5A, 69, 78.

(142k баллов)
0 голосов

X - исследуемое число
изменяется от 16 до 16*16/2-1=127
к - счетчик
а - младший знак 16-ричной записи числа х
b - старший знак 16-ричной записи числа х
c - младший знак 16-ричной записи числа 2х
d - старший знак 16-ричной записи числа 2х

k:=0
цикл по х от 16 до 127
{
b:= целое(х/16)
a:=x-16*b
d:= целое(2*х/16)
c:=2*x-16*b
если a+b = c+в то k:=k+1
}
ответ к





(219k баллов)
0

у меня в ответе получается 7

0

и вот эти 7 чисел: 30 45 60 75 90 105 120