14.02 Поиск основания системы счисления
Ошибка.
Попробуйте повторить позже
Решите уравнение:
Решение аналитически
Переведем обе части уравнения в десятичную систему счисления:
Теперь решим новое линейное уравнение и найдем ответ:
Значит, искомое основание равно 13.
Решение программой
for x in range(4, 16): if int(’37’, 11) == int(’31’, x): print(x)
Ошибка.
Попробуйте повторить позже
Решите уравнение:
Ответ запишите в троичной системе счисления.
Для удобства переведем все числа в десятичную систему счисления:
Теперь, когда все числа находятся в одной системе счисления, можем составить квадратное
уранение:
;
Ошибка.
Попробуйте повторить позже
Найдите наименьшее основание системы счисления, в которой десятичное число 79 имеет четырехзначную запись.
Если запись числа четырехзначна, максимальное значение числа равно , где переменная -
основание системы счисления. Это можно увидеть на примере с десятичной системой счисления.
Максимальное четырехзначное число: , максимальное трехзначное число:
. Аналогично перебираем другие системы счисления, удовлетворяющие
условию задачи:
Двоичная: , слишком мало, запись числа 79 будет состоять более, чем из четырех
цифр.
Троичная: . Значит, искомое значение – 3. Для проверки переведем 79 в троичную систему
счисления: .
Ошибка.
Попробуйте повторить позже
В какой системе счисления число записывается как ? В ответ запишите основание системы счисления.
Пусть основание нашей системы счисления это . Тогда , откуда следует, что .
Ошибка.
Попробуйте повторить позже
Решите уравнение .
Переведем обе части уравнения в десятичную систему счисления.
Слева получим:
Справа получим
Решим уравнение
Получается, либо , либо . Так как основание СС не может быть отрицательным, ответ .
Ошибка.
Попробуйте повторить позже
Значение арифметического выражения:
записали в системе счисления с основанием . Определите основание системы счисления, если известно, что сумма разрядов в числе, представленном в этой системе счисления, равна .
for n in range(2, 10): # Перебор начинаем с 2 т.к. # при делении на 1 получается бесконечный цикл s = n**25 - 2*n**13 + 10 summ = 0 while s > 0: summ += s % n s //= n if summ == 75: print(n)
Ошибка.
Попробуйте повторить позже
Определите число , для которого выполняется равенство .
Переведём оба числа в десятичную систему и решим уравнение:
В ответ берем положительное число.
Ошибка.
Попробуйте повторить позже
Найдите основание системы счисления, в которой выполнено сложение: .
for x in range(17): a = x**2 + 2*x + 4 b = x + 6 c = x**2 + 4*x + 1 if a+b == c: print(x)
Ошибка.
Попробуйте повторить позже
В системе счисления с основанием N запись числа 223 оканчивается на 6 и содержит не более двух цифр. Чему равно минимальное число N?
for n in range(2, 50): x = 223 s = ’’ while x > 0: s = str(x % n) + s x = x // n while s[0] == ’0’: s.pop(0) if len(s) <= 2 and s[-1] == ’6’: print(n) break
Ошибка.
Попробуйте повторить позже
Найдите основание системы счисления, в которой выполнено сложение: .
for x in range(10): f = 1 * x**2 + 1 * x + 6 s = 2 * x + 1 if f+s == 1 * x**2 + 4 * x: print(x)
Ошибка.
Попробуйте повторить позже
Решите уравнение . Ответ запишите в десятичной системе счисления.
for x in range(20): # Переводим в 10 с.с. n = 8*x + 4 if n == 1*8**2 + 6*8 + 4: print(x)
Ошибка.
Попробуйте повторить позже
В системе счисления с основанием p выполняется равенство
Буквами x и y обозначены некоторые цифры из алфавита системы счисления с основанием p. Определите значение основания p.
for p in range(4, 16): for x in range(p): for y in range(p): m1 = str(x)+’3’+str(x) m2 = ’2’+’1’+str(y) n1 = str(x)+str(y)+str(y)+str(x) m = int(m1, p) + int(m2, p) n = int(n1, p) if m == n: print(p)
Ошибка.
Попробуйте повторить позже
Значение арифметического выражения:
записали в системе счисления с основанием N. Определите основание системы счисления, если известно, что сумма разрядов в числе, представленном в этой системе счисления, равна 75.
for n in range(2, 11): a = n**25 - 2*n**13 + 10 s = ’’ while a > 0: s = str(a % n) + s a = a // n sm = 0 for i in s: sm += int(i) if sm == 75: print(n)
Ошибка.
Попробуйте повторить позже
Значение выражения записали в некоторой системе счисления.
Оказалось, что количество цифр 7 в этой записи максимально.
Найдите эту систему счисления и запишите её в ответе в десятичной системе счисления. Если таких несколько, укажите ту, у которой числовое значение больше.
x = 67*14**63 + 28**123 + 47*42**210 - 349564 mx_c = 0 ans = 0 for i in range(8,17): c = 0 n = x while n > 0: if n % i == 7: c += 1 if c >= mx_c: mx_c = c ans = i n //= i print(ans)