Информатика • 11 класс
9

Задачи длинной арифметики. Многоразрядные целые числа (Python)

  • Стандартные типы данных Python позволяют работать с очень большими числами, однако принцип длинной арифметики можно реализовать вручную. Для этого число разбивается на ячейки фиксированного размера.
  • Принцип работы: число разбивается на ячейки фиксированного размера. В примере ниже используется основание 1 000 000 — каждая ячейка хранит до 6 цифр. Это позволяет эффективно умножать, складывать и выводить большие числа без потери точности.
  • Пример. Подсчитать факториал 100 (100!).
    N = 33
    d = 1000000
    mas = [0] * (N + 1)
    mas [0] = 1
    for j in range(2, 101):
    k = 0
    for i in range (N + 1):
    s = mas [i] * j + k
    mas [i] = s % d
    k = s // d
    first = True
    for i in range (N, -1, -1):
    if mas [i] != 0 or not first:
    if first:
    print (mas [i], end="")
    first = False
    else:
    print (f"{mas [i]:06d}", end="")
Было полезно?

Рекомендуем

Вы учитель или ученик?
Познакомьтесь с нашим образовательным онлайн-сервисом с тысячами интерактивных работ
Учителю
Удобно проводить уроки в классе, назначать работы на дом и анализировать результаты всего класса или конкретных учеников
Ученику
Самостоятельно изучать новые и повторять пройденные темы, готовиться по индивидуальной траектории и оценивать результаты на наглядных графиках
Зарегистрироваться в «Облаке знаний»
Логотип облако знаний
+7 (499) 322-07-57
info@oblakoz.ru

Контактный центр

МО, г. Долгопрудный,
Лихачевский проезд, 4, стр. 1

Отдел заботы о пользователях

Политика конфиденциальности

© ООО «Физикон Лаб», 2026

Пользуясь нашим сайтом, вы соглашаетесь с тем, что мы используем cookies 🍪