Введение в длинную арифметику 0:01 Лекция посвящена длинной арифметике, которая используется для работы с большими числами. В питоне для этого используется модуль "fractions", а на C++ можно реализовать вручную.
Структура и класс C++ 2:22 В C++ используются структуры и классы для работы с большими числами. Структура имеет публичный доступ к полям, а класс - приватный.
Реализация длинной арифметики 7:48 В C++ можно использовать массив или вектор для хранения чисел. Вторая запись чисел лучше, так как позволяет складывать и вычитать числа по разрядам. Для вывода числа используется функция reverse_iterator.
Подключение библиотек 14:36 Для работы с большими числами можно использовать библиотеку "bitset". Она подключается автоматически при компиляции и работает только на GNU.
Введение в программирование 15:35 Автор объясняет, как работает код, используя различные функции и структуры. Он также объясняет, что такое "конст" и почему важно использовать его в определенных местах кода.
Вопросы и ответы 17:46 Автор отвечает на вопросы зрителей о том, что такое "конст", "паблик" и "приват". Он также объясняет, почему некоторые поля должны быть "публичными" или "приватными".
Обсуждение кода 21:57 Автор объясняет, что такое "конструктор" и как он используется в данном коде. Он также обсуждает, почему важно форматировать вывод чисел и какие операции и сравнения хотелось бы иметь в числе.
Сложение двух чисел 25:10 Объяснение процесса сложения двух чисел с использованием структуры и функции. Обсуждение использования ссылок и векторов для оптимизации памяти.
Проблемы с функцией суммы 36:05 Функция доступна только внутри структуры, что может быть проблемой. Обсуждение идеи дружественных функций и их использования для реализации сложных операций.
Вынесение функции плюс за пределы структуры 40:43 Объяснение необходимости выноса функции плюс за пределы структуры для реализации сложных операций. Обсуждение преимуществ дружественных функций для реализации пользовательских операций.
Обсуждение структуры и функций 42:41 Обсуждение структуры, которая должна быть "черным ящиком" и не должна быть доступна для прямого доступа. Обсуждение возможности переопределения функций и методов в структуре.
Автоматическое преобразование 51:58 Обсуждение возможности автоматического преобразования типов в C. Обсуждение использования стандартных классов больших чисел в C++.
Вычитание без возвращаемого значения 55:43 Обсуждение работы с большими числами без отражательных чисел. Вычитание чисел с использованием большего разряда.
Обсуждение умножения и деления 59:25 Автор объясняет, что умножение и деление на ноль не допускается, так как результат будет отрицательным. Он также обсуждает, как можно использовать цикл для выполнения сложения в столбик.
Бинарное умножение 1:08:11 Автор объясняет, что бинарное умножение - это умножение двух чисел, каждое из которых представлено в двоичной форме. Он приводит пример умножения двух чисел, используя цикл для сложения в столбик.
Разложение числа на разряды 1:10:07 Автор объясняет, что число можно разложить на ноль умножить на п в степени ноль плюс на один умножить на п в степени один. Он также упоминает, что человечество до сих пор не знает, как выполнить бинарное умножение для больших чисел.
Умножение в двоичной системе счисления 1:12:41 Объясняется, что умножение в двоичной системе счисления - это перемножение чисел, где каждый разряд умножается на соответствующий разряд другого числа. Приводится пример умножения числа 100 на 101.
Деление в двоичной системе счисления 1:24:12 Обсуждается алгоритм деления в двоичной системе счисления, основанный на переборе возможных значений делителя. Объясняется, как реализовать меньше и равно в двоичной системе счисления.
Реализация алгоритма деления 1:29:11 Реализуется алгоритм деления в двоичной системе счисления на примере деления числа 1024 на 7. Обсуждаются сложности реализации и возможные оптимизации.
Сравнение и деление 1:34:28 Обсуждение сравнения чисел и деления. Ответы на вопросы о делении и делении с остатком.
Наибольший икс и итераторы 1:36:25 Обсуждение итераторов и указателей. Ответы на вопросы о равенстве итераторов и элементов, на которые они указывают.
Симптоматика и время работы 1:38:27 Обсуждение времени работы и сравнения питона и плюсов. Вывод о том, что питон быстрее в умножении, но плюсы быстрее в нормальном умножении. Обсуждение использования умножения в делении и взятии корня.