14.01 Арифметические выражения
Готовиться с нами - ЛЕГКО!
Ошибка.
Попробуйте повторить позже
Сколько цифр, отличных от нуля, в четверичной записи числа ?
Решение Python:
Для подсчёта количества цифр, отличных от нуля, в 4-ричной записи числа необходимо написать алгоритм перевода исходного числа в 4-ричную систему счисления. Для перевода реализуем в программе стандартный алгоритм перевода числа из десятичной системы счисления в другую.
Для итогового подсчета количества цифр, отличных от нуля, будем «отсекать» по одной цифре путем нахождения остатка при делении на 10 и проверять, что она не равна 0.
# Исходное выражение a = 2**43 + 2**14 + 2 # Строка для хранения результата перевода s = ’’ # Перевод числа из десятичной системы в четверичную while a > 0: # Получаем последнюю цифру в 4-ичной системе и добавляем её в начало строки s = str(a % 4) + s # Отбрасываем последнюю цифру (целочисленное деление на 4) a //= 4 # Перевод числа из строки в целое число s1 = int(s) count = 0 # Подсчет количества цифр, отличных от нули while s1 > 0: if s1 % 10 != 0: # Проверяем последнюю цифру числа count += 1 # Увеличиваем счетчик, если цифра не ноль s1 //= 10 # Убираем последнюю цифру числа # Вывод количества ненулевых цифр в 4-ичном представлении числа print(count)
Решение руками:
Переведём данную сумму в удобную форму для основания 4 нашей системы счисления:
Соответственно, число имеет вид , где 2 стоит в первом разряде, 1 стоит в восьмом
разряде, и 2 стоит в 22 разряде. Таким образом, ровно три цифры отличны от нуля в четверичной
записи данного числа.
Ошибка.
Попробуйте повторить позже
Сколько четверок содержится в пятеричной записи числа
Решение программой
Для подсчёта количества цифр 4 в пятеричной записи числа необходимо перевести исходное число в пятеричную систему счисления. Реализуем стандартный алгоритм перевода числа из десятичной системы в пятеричную, а затем подсчитаем количество четвёрок в полученной записи, например, методом count().
# Функция для перевода числа x из 10СС в 5СС def transfer_to_5(x): # Создаем пустую строку, в которую будем записывать цифры числа в пятеричной системе s = ’’ # Продолжаем цикл, пока число не станет равным 0 while x != 0: # Получаем последнюю цифру (остаток от деления на 5) и добавляем её в начало строки s = str(x % 5) + s # Делим число нацело на 5, чтобы перейти к следующему разряду x //= 5 # Возвращаем полученную пятеричную запись числа в виде строки return s # Вычисляем исходное выражение: 5̂14 + 25̂3 - 117, # переводим результат в пятеричную систему # и подсчитываем количество цифр ’4’ в записи print(transfer_to_5(5**14 + 25**3 - 117).count(’4’))
Решение аналитически
Для начала стоить отметить, что любое десятичное число A в n-ой степени можно записать как единицу
и n нулей в системе счисления с основанием A:
Так как нас просят узнать количество четверок в пятеричной системе, представим все числа как степени
пятерки, а 117, поскольку оно не является степенью пятерки, переведем в пятеричную систему
счисления, получим:
Для начала выполним сложение:
Вычтем из полученного 432:
Примечание: при вычитании в недесятичной системе счисления, мы занимаем не “десяток”, а само основание системы счисления. В данном примере из второй единицы(она стоит в 6 разряде) мы занимаем пять в соседний разряд, и затем из полученной “пятерки” занимаем в следующий разряд, таким образом продолжая до последней цифры.
Ошибка.
Попробуйте повторить позже
Сколько четверок содержится в пятеричной записи числа ?
Решение программой
Для подсчёта количества четверок в 5-ричной записи числа необходимо написать алгоритм перевода исходного числа в 5-ричную систему счисления. Для перевода реализуем в программе стандартный алгоритм перевода числа из десятичной системы счисления в другую.
# Исходное выражение a = 25**20 + 5**15 - 125**3 # Переменная для хранения числа в 5-ричной системе в виде строки s = ’’ # Перевод числа из десятичной системы в 5-ричную while a > 0: # Получаем последнюю цифру (остаток от деления на 5) и добавляем её в начало строки s = str(a % 5) + s # Отбрасываем последнюю цифру (целочисленное деление на 5) a //= 5 # Подсчёт и вывод количества цифр ’4’ в 5-ричной записи числа print(s.count(’4’))
Решение руками:
Приведем к общему основанию:
Переведем в пятиричную систему счисления и получим:
Ошибка.
Попробуйте повторить позже
Сколько пятерок содержится в шестеричной записи числа ?
Решение программой
Для подсчёта количества пятёрок в 6-ричной записи числа необходимо написать алгоритм перевода исходного числа в 6-ричную систему счисления. Для перевода реализуем в программе стандартный алгоритм перевода числа из десятичной системы счисления в другую.
# Исходное выражение a = 6**2020 + 36**34 - 216**12 # Переменная для хранения числа в 6-ричной системе в виде строки s = ’’ # Перевод числа из десятичной системы в 6-ричную while a > 0: # Получаем последнюю цифру (остаток от деления на 6) и добавляем её в начало строки s = str(a % 6) + s # Отбрасываем последнюю цифру (целочисленное деление на 6) a //= 6 # Подсчёт и вывод количества цифр ’5’ в 6-ричной записи числа print(s.count(’5’))
Решение руками:
Приведем к общему основанию:
Переведем в шестиричную систему счисления и получим:
Ошибка.
Попробуйте повторить позже
Сколько значащих нулей содержится в троичной записи числа ?
Решение программой
Для подсчёта количества нулей в троичной записи числа необходимо написать алгоритм перевода исходного числа в троичную систему счисления. Для перевода реализуем в программе стандартный алгоритм перевода числа из десятичной системы счисления в другую.
# Исходное выражение a = 9**215 + 27**65 - 81**4 # Переменная для хранения числа в 3-ричной системе в виде строки s = ’’ # Перевод числа из десятичной системы в 3-ричную while a > 0: # Получаем последнюю цифру (остаток от деления на 3) и добавляем её в начало строки s = str(a % 3) + s # Отбрасываем последнюю цифру (целочисленное деление на 3) a //= 3 # Подсчёт и вывод количества цифр ’0’ в 3-ричной записи числа print(s.count(’0’))
Решение руками:
Приведем к общему основанию:
Переведем в троичную систему счисления и получим:
Ошибка.
Попробуйте повторить позже
Значение арифметического выражения:
— записали в системе счисления с основанием 9. Сколько значащих цифр «0» содержится в этой записи?
Решение программой
Для подсчёта количества нулей в 9-ричной записи числа необходимо написать алгоритм перевода исходного числа в 9-ричную систему счисления. Для перевода реализуем в программе стандартный алгоритм перевода числа из десятичной системы счисления в другую. Потом можно подчитать количество нулей при помощи метода count().
# Исходное выражение a = 9**6 + 81**8 - 32 # Переменная для хранения числа в 9-ричной системе в виде строки s = ’’ # Перевод числа из десятичной системы в 9-ричную while a > 0: # Получаем последнюю цифру (остаток от деления на 9) и добавляем её в начало строки s = str(a % 9) + s # Отбрасываем последнюю цифру (целочисленное деление на 9) a //= 9 # Подсчёт и вывод количества цифр ’0’ в 9-ричной записи числа print(s.count(’0’))
Решение руками:
Приведем к общему основанию:
Переведем в девятиричную систему счисления и получим:
Ошибка.
Попробуйте повторить позже
Сколько значащих нулей содержится в записи числа в системе счисления равной 15: ?
Решение программой
Для подсчёта количества нулей в 15-ричной записи числа необходимо написать алгоритм перевода исходного числа в 15-ричную систему счисления. Для перевода реализуем в программе стандартный алгоритм перевода числа из десятичной системы счисления в другую. Однако важно учесть, что в 15-ричной системе счисления в том числе используются цифры A (10 в десятичной) и B (11 в десятичной). Чтобы при подсчёте цифра 10 не интерпретировалась как 1 и 0, будем сохранять каждую полученную цифру в отдельной ячейке массива.
# Исходное выражение s = 15**19 + 15**9 - 322 # Список для хранения цифр числа в 15-ричной системе r = [] # Перевод числа из десятичной системы в 15-ричную while s > 0: # Получаем последнюю цифру (остаток от деления на 15) r.append(s % 15) # Отбрасываем последнюю цифру (целочисленное деление на 15) s = s // 15 # Подсчёт и вывод количества нулей в 15-ричной записи числа print(r.count(0))
Решение руками:
Переведем в систему счисления равную 15 и получим:
Ошибка.
Попробуйте повторить позже
Сколько значащих ’’ содержится в записи числа в системе счисления равной
:
?
Решение программой
Для подсчёта количества цифр F (15 в десятичной) в 16-ричной записи числа необходимо написать алгоритм перевода исходного числа в 16-ричную систему счисления. Для перевода реализуем в программе стандартный алгоритм перевода числа из десятичной системы счисления в другую. Однако важно учесть, что в 16-ричной системе счисления в том числе используются цифры A (10 в десятичной) и B (11 в десятичной). Чтобы подчитывать такие цифры отдельно, будем сохранять каждую полученную цифру в отдельной ячейке массива.
# Исходное выражение s = 16**6 + 16**13 - 289 # Список для хранения цифр числа в 16-ричной системе r = [] # Перевод числа из десятичной системы в 16-ричную while s > 0: # Получаем последнюю цифру (остаток от деления на 16) r.append(s % 16) # Отбрасываем последнюю цифру (целочисленное деление на 16) s = s // 16 # Подсчёт и вывод количества цифр F в 16-ричной записи числа print(r.count(15))
Решение руками:
Переведем в систему счисления равную 16 и получим:
Получаем, что количество равно 4.
Ошибка.
Попробуйте повторить позже
Сколько цифр 8 содержится в записи числа в системе счисления равной 9: ?
Решение программой
Для подсчёта количества восмёрок в 9-ричной записи числа необходимо написать алгоритм перевода исходного числа в 9-ричную систему счисления. Для перевода реализуем в программе стандартный алгоритм перевода числа из десятичной системы счисления в другую. Потом подчитаем количество цифр 8 при помощи метода count().
# Исходное выражение a = 9**9 + 9**24 - 8582 # Переменная для хранения числа в 9-ричной системе в виде строки s = ’’ # Перевод числа из десятичной системы в 9-ричную while a > 0: # Получаем последнюю цифру (остаток от деления на 9) и добавляем её в начало строки s = str(a % 9) + s # Отбрасываем последнюю цифру (целочисленное деление на 9) a //= 9 # Подсчёт и вывод количества цифр ’8’ в 9-ричной записи числа print(s.count(’8’))
Решение руками:
Переведем в систему счисления равную 9 и получим:
Ошибка.
Попробуйте повторить позже
Сколько пятерок содержится в шестеричной записи числа ?
Решение программой
Для подсчёта количества цифр 5 в 6-ричной записи числа необходимо написать алгоритм перевода исходного числа в 6-ричную систему счисления. Для перевода реализуем в программе стандартный алгоритм перевода числа из десятичной системы счисления в другую. Потом подсчитаем количество цифр 5 при помощи метода count().
# Исходное выражение a = 6**120 + 36**3 - 160 # Переменная для хранения числа в 6-ричной системе в виде строки s = ’’ # Перевод числа из десятичной системы в 6-ричную while a > 0: # Получаем последнюю цифру (остаток от деления на 6) и добавляем её в начало строки s = str(a % 6) + s # Отбрасываем последнюю цифру (целочисленное деление на 6) a //= 6 # Подсчёт и вывод количества цифр ’5’ в 6-ричной записи числа print(s.count(’5’))
Решение руками:
Для начала стоит отметить, что любое число А в n-ой степени можно записать как единицу и n нулей
в системе счисления с основанием A:
Так как нас просят узнать количество пятерок в шестеричной системе, представим все числа как степени шестерки. Также переведём 160 в шестеричную систему счисления, из чего получим:
Выполним сложение:
Вычтем из полученного 424:
В записи 3 пятёрки.
Ошибка.
Попробуйте повторить позже
Сколько двоек в троичной записи числа
Решение программой
Для подсчёта количества двоек в троичной записи числа необходимо написать алгоритм перевода исходного числа в троичную систему счисления. Для перевода реализуем в программе стандартный алгоритм перевода числа из десятичной системы счисления в другую. Потом подчитаем количество двоек при помощи метода count().
# Исходное выражение a = 3**15 + 9**3 + 81**2 + 17 # Переменная для хранения числа в 3-ричной системе в виде строки s = ’’ # Перевод числа из десятичной системы в 3-ричную while a > 0: # Получаем последнюю цифру (остаток от деления на 3) и добавляем её в начало строки s = str(a % 3) + s # Отбрасываем последнюю цифру (целочисленное деление на 3) a //= 3 # Подсчёт и вывод количества цифр ’2’ в 3-ричной записи числа print(s.count(’2’))
Решение руками:
Для начала стоить отметить, что любое десятичное число A в n-ой степени можно записать как
единицу и n нулей в системе счисления с основанием A:
Так как нас просят узнать количество двоек в троичной системе, представим все числа как степени тройки, а 17, поскольку оно не является степенью тройки, перевдем в троичную систему счисления, получим:
Тогда наше выражение имеет вид:
Так как – это единицы с некоторым количеством нулей, при их сложении получится число,
у которого в конце более трёх нулей, значит, при сложении с
в итоговом числе будет две
двойки.
Ошибка.
Попробуйте повторить позже
Сколько значащих цифр содержится в записи числа, данного ниже, в системе счисления с
основанием
?
Решение программой
Для подсчёта количества цифр C (12 в десятичной) в 13-ричной записи числа необходимо написать алгоритм перевода исходного числа в 13-ричную систему счисления. Для перевода реализуем в программе стандартный алгоритм перевода числа из десятичной системы счисления в другую. Однако важно учесть, что в 13-ричной системе счисления в том числе используются цифры A (10 в десятичной) и B (11 в десятичной), поэтому будем сохранять каждую полученную цифру в отдельной ячейке массива.
# Исходное выражение s = 13**14 + 13**35 - 547 # Список для хранения цифр числа в 13-ричной системе r = [] # Перевод числа из десятичной системы в 13-ричную while s > 0: # Получаем последнюю цифру (остаток от деления на 13) r.append(s % 13) # Отбрасываем последнюю цифру (целочисленное деление на 13) s = s // 13 # Подсчёт и вывод количества цифр С в 13-ричной записи числа print(r.count(12))
Решение руками:
Переведем в систему счисления с основанием и получим:
Ошибка.
Попробуйте повторить позже
Сколько четверок содержится в пятеричной записи числа ?
Решение программой
Для подсчёта количества четвёрок в 5-ричной записи числа необходимо написать алгоритм перевода исходного числа в 5-ричную систему счисления. Для перевода реализуем в программе стандартный алгоритм перевода числа из десятичной системы счисления в другую. Потом подчитаем количество четвёрок при помощи метода count().
# Исходное выражение a = 25**20 + 5**15 - 125**3 # Переменная для хранения числа в 5-ричной системе в виде строки s = ’’ # Перевод числа из десятичной системы в 5-ричную while a > 0: # Получаем последнюю цифру (остаток от деления на 5) и добавляем её в начало строки s = str(a % 5) + s # Отбрасываем последнюю цифру (целочисленное деление на 5) a //= 5 # Подсчёт и вывод количества цифр ’4’ в 5-ричной записи числа print(s.count(’4’))
Решение руками:
Приведем к общему основанию:
Переведем в пятеричную систему счисления и получим:
Ошибка.
Попробуйте повторить позже
Сколько единиц в двоичной записи числа ?
Решение программой
Для подсчёта количества единиц в двоичной записи числа необходимо написать алгоритм перевода исходного числа в двоичную систему счисления. Для перевода реализуем в программе стандартный алгоритм перевода числа из десятичной системы счисления в другую. Потом подсчитаем количество единиц при помощи метода count().
# Исходное выражение a = 2**43 + 2**14 + 2 # Переменная для хранения числа в двоичной системе в виде строки s = ’’ # Перевод числа из десятичной системы в двоичную while a > 0: # Получаем последнюю цифру (остаток от деления на 2) и добавляем её в начало строки s = str(a % 2) + s # Отбрасываем последнюю цифру (целочисленное деление на 2) a //= 2 # Подсчёт и вывод количества единиц ’1’ в двоичной записи числа print(s.count(’1’))
Ошибка.
Попробуйте повторить позже
Сколько единиц в двоичной записи числа ?
Решение программой
Для подсчёта количества единиц в двоичной записи числа необходимо написать алгоритм перевода исходного числа в двоичную систему счисления. Для перевода реализуем в программе стандартный алгоритм перевода числа из десятичной системы счисления в другую. Потом подсчитаем количество единиц при помощи метода count().
# Исходное выражение a = 2**100 + 2**48 + 2**32 + 2**13 + 2**7 + 2 + 1 # Переменная для хранения числа в двоичной системе в виде строки s = ’’ # Перевод числа из десятичной системы в двоичную while a > 0: # Получаем последнюю цифру (остаток от деления на 2) и добавляем её в начало строки s = str(a % 2) + s # Отбрасываем последнюю цифру (целочисленное деление на 2) a //= 2 # Подсчёт и вывод количества единиц ’1’ в двоичной записи числа print(s.count(’1’))
Решение руками:
В двоичной системе счисления, любое число вида имеет вид
, где после единицы идёт
ровно
нулей. Соответственно, сумма
не создаст переполнения ни в
одном разряде, и будет иметь вид
с единицами ровно на 101, 49, 33, 14, 8, 2 и 1
месте.
Ошибка.
Попробуйте повторить позже
Сколько цифр, отличных от нуля, в восьмеричной записи числа ?
Решение программой
Для подсчёта количества цифр, отличных от нуля, в 8-ричной записи числа необходимо перевести это число в 8-ричную систему счисления при помощи функции oct(). Для итогового подсчета количества цифр, отличных от нуля, будем «отсекать» по одной цифре путем нахождения остатка при делении на 10 и проверять, что она не равна 0.
# Исходное выражение, переведённое в 8-ричную систему a = int(oct(2**100 + 2**48 + 2**32 + 2**13 + 2**7 + 2 + 1)[2:]) # Счётчик количества ненулевых цифр в восьмеричной записи числа c = 0 # Пока число больше нуля while a > 0: # Проверяем последнюю цифру (остаток от деления на 10) — если она не равна нулю, увеличиваем счётчик if a % 10 != 0: c += 1 # Отбрасываем последнюю цифру (целочисленное деление на 10) a //= 10 # Вывод количества ненулевых цифр в восьмеричной записи числа print(c)
Решение руками:
Переведём данную сумму в удобную форму для основания 8 нашей системы счисления:
Соответственно, число имеет вид , где 3 стоит в первом разряде, 2 стоит в
третьем разряде, 2 стоит в пятом разряде, 4 стоит в 11 разряде, 1 стоит в 17 разряде, 2 стоит в 34
разряде. Таким образом, ровно 6 цифр отличны от нуля в восьмеричной записи данного
числа.
Ошибка.
Попробуйте повторить позже
Сколько единиц в двочиной записи числа
Решение программой
Для подсчёта количества единиц в двоичной записи числа необходимо написать алгоритм перевода исходного числа в двоичную систему счисления. Для перевода реализуем в программе стандартный алгоритм перевода числа из десятичной системы счисления в другую. Потом подсчитаем количество единиц при помощи метода count().
# Исходное выражение a = 2**1024 + 4**5 + 2 # Переменная для хранения числа в 2-ричной системе в виде строки s = ’’ # Перевод числа из десятичной системы в 2-ричную (двоичную) while a > 0: # Получаем последнюю цифру (остаток от деления на 2) и добавляем её в начало строки s = str(a % 2) + s # Отбрасываем последнюю цифру (целочисленное деление на 2) a //= 2 # Подсчёт и вывод количества единиц ’1’ в двоичной записи числа print(s.count(’1’))
Решение руками:
Для начала стоить отметить, что любое десятичное число A в n-ой степени можно записать как
единицу и n нулей в системе счисления с основанием A:
Так как нас просят узнать количество единиц в двоичной системе, представим все числа как степени
двойки, получим: В двоичной системе счисления эта
запись выглядит так:
Далее выполняем сложение и наглядно получаем ответ:
Ошибка.
Попробуйте повторить позже
Сколько единиц в троичной записи числа ?
Решение программой
Для подсчёта количества единиц в троичной записи числа необходимо написать алгоритм перевода исходного числа в троичную систему счисления. Для перевода реализуем в программе стандартный алгоритм перевода числа из десятичной системы счисления в другую. Потом подсчитаем количество единиц при помощи метода count().
# Исходное выражение a = 3**2019 + 27**7 + 3 # Переменная для хранения числа в троичной системе в виде строки s = ’’ # Перевод числа из десятичной системы в троичную while a > 0: # Получаем последнюю цифру (остаток от деления на 3) и добавляем её в начало строки s = str(a % 3) + s # Отбрасываем последнюю цифру (целочисленное деление на 3) a //= 3 # Подсчёт и вывод количества цифр ’1’ в троичной записи числа print(s.count(’1’))
Решение руками:
Для начала стоить отметить, что любое десятичное число A в -ой степени можно записать как
единицу и
нулей в системе счисления с основанием A:
Так как нас просят узнать количество единиц в троичной системе, представим все числа как степени
тройки, получим: . В троичной системе счисления эта
запись выглядит так:
.
Далее выполняем сложение и наглядно получаем ответ:
Ошибка.
Попробуйте повторить позже
Сколько единиц в троичной записи числа ?
Решение программой
Для подсчёта количества единиц в троичной записи числа необходимо написать алгоритм перевода исходного числа в троичную систему счисления. Для перевода реализуем в программе стандартный алгоритм перевода числа из десятичной системы счисления в другую. Потом подсчитаем количество единиц при помози метода count().
# Исходное выражение a = 3**2051 + 81**6 + 8 # Переменная для хранения числа в троичной системе в виде строки s = ’’ # Перевод числа из десятичной системы в троичную while a > 0: # Получаем последнюю цифру (остаток от деления на 3) и добавляем её в начало строки s = str(a % 3) + s # Отбрасываем последнюю цифру (целочисленное деление на 3) a //= 3 # Подсчёт и вывод количества цифр ’1’ в троичной записи числа print(s.count(’1’))
Решение руками:
Для начала стоить отметить, что любое десятичное число A в -ой степени можно записать как
единицу и
нулей в системе счисления с основанием A:
Так как нас просят узнать количество единиц в троичной системе, представим все числа как степени
тройки, получим: . В
троичной системе счисления эта запись выглядит так:
.
Далее выполняем сложение и наглядно получаем ответ:
Ошибка.
Попробуйте повторить позже
Сколько четверок содержится в пятеричной записи числа ?
Решение программой
Для подсчёта количества четвёрок в 5-ричной записи числа необходимо написать алгоритм перевода исходного числа в 5-ричную систему счисления. Для перевода реализуем в программе стандартный алгоритм перевода числа из десятичной системы счисления в другую. Потом подсчитаем количество четвёрок при помощи метода count().
# Исходное выражение a = 5**50 + 25**3 - 125 # Переменная для хранения числа в 5-ричной системе в виде строки s = ’’ # Перевод числа из десятичной системы в 5-ричную while a > 0: # Получаем последнюю цифру (остаток от деления на 5) и добавляем её в начало строки s = str(a % 5) + s # Отбрасываем последнюю цифру (целочисленное деление на 5) a //= 5 # Подсчёт и вывод количества цифр ’4’ в 5-ричной записи числа print(s.count(’4’))
Решение руками:
Для начала стоить отметить, что любое десятичное число A в -ой степени можно записать как
единицу и
нулей в системе счисления с основанием A:
Так как нас просят узнать количество четверок в пятеричной системе, представим все числа как
степени пятерки, получим: .
Для начала выполним сложение:
Вычтем из полученного :
Примечание: при вычитании в недесятичной системе счисления, мы занимаем не “десяток”, а само основание системы счисления. В данном примере из второй единицы (она стоит в 6 разряде) мы занимаем пять в соседний разряд, и затем из полученной “пятерки” занимаем в следующий разряд, таким образом продолжая до разряда, под которым стоит единица другого числа.