
- •Предисловие
- •Введение
- •Раздел I основания математики Глава 1. Элементы теории множеств
- •1.1. Понятие множества
- •1.2. Операции над множествами
- •1.3. Аксиомы и теоремы алгебры множеств
- •Глава 2. Числа
- •2.1. Системы счисления
- •2.2. Классы чисел
- •2.3. Элементы статистической обработки данных
- •2.4. Алгоритмы решения вычислительных задач
- •Глава 3. Элементы математической логики
- •3.1. Понятие высказывания
- •3.2. Операции над высказываниями
- •2.3. Аксиомы и теоремы алгебры логики
- •Раздел II основы математического анализа Глава 4. Функции
- •4.1. Понятие функции
- •4.2. Аппроксимация функций
- •4.3. Предел функции
- •Глава 5. Основы дифференциального исчисления
- •5.1. Производная функции
- •5.2. Свойства дифференцируемых функций
- •5.3. Дифференциал функции
- •Глава 6. Основы интегрального исчисления
- •6.1. Определенный интеграл
- •6.2. Машинные алгоритмы вычисления определенных интегралов
- •Раздел III основы теории вероятностей Глава 7. Понятие вероятности
- •7.1. Элементы комбинаторики
- •7.2. Случайные события
- •7.3. Классическое определение вероятности
- •7.4. Теорема умножения вероятностей
- •7.5. Основные формулы теории вероятностей
- •Глава 8. Случайные величины
- •8.1. Понятие случайной величины
- •8.2. Законы распределения случайных величин
- •8.3. Числовые характеристики случайных величин
- •8.4. Канонические распределения случайных величин
- •8.5. Энтропия и информация
- •Раздел IV. Основные способы и методы защиты информации Глава 9. Основы криптографической защиты информации
- •9.1. Принципы и основные понятия криптографической защиты информации
- •9.2. Основные понятия и определения
- •Глава 10. Методы криптографической защиты информации
- •10.1. Методы перестановки
- •10.2. Метод гаммирования
- •Ответы к задачам
- •Раздел I.
- •Глава 1. Элементы теории множеств
- •Глава 2. Числа
- •Глава 3. Элементы математической логики
- •Раздел II. Основы математического анализа
- •Глава 4. Функции
- •Глава 5. Основы дифференциального исчисления
- •Глава 6. Основы интегрального исчисления
- •Раздел III. Основы теории вероятностей
- •Глава 7. Понятие вероятности
- •Глава 8. Случайные величины
- •Глава 9. Основы криптографической защиты информации
- •Глава 10. Методы криптографической защиты информации
- •Приложение тесты
- •Тест 1. Элементы теории множеств
- •Тест 4. Функции
- •Тест 5. Основы дифференциального исчисления
- •Определенный интеграл
- •Тест 7. Понятие вероятностй
- •Тест 8. Случайные величины
- •Тест 10. Методы криптографической защиты информации
- •Литература
- •Сведения об авторах
- •Королёв Владимир Тимофеевич, Ловцов Дмитрий Анатольевич,
- •Математика и информатика Часть первая
2.2. Классы чисел
Как мы знаем, все числа разделены на четыре класса:
натуральные числа – множество N,
целые числа – множество Z,
рациональные числа – множество Q,
вещественные числа – множество R.
При этом имеет место такая цепочка включений одного множества в другое:
NZQR.
Вещественные числа. Из перечисленных классов это самый широкий класс чисел. Например, с глубокой древности известно число , которое выражает отношение длины окружности к ее диаметру. Еще одно широко известное в математике вещественное число e – основание натуральных логарифмов.
Вещественные (действительные) числа образуют сплошной массив точек на числовой прямой. Расстояние между числами (точками на прямой) бесконечно мало. Поэтому каждое вещественное число должно было бы представлять записью с бесконечно длинной дробной частью.
Любая арифметическая операция над вещественными операндами имеет результатом вещественное же число. Говорят, что класс вещественных чисел замкнут относительно всех арифметических операций.
Укажем на такой математический феномен. Бесконечная цепь девяток в записи числа, начинающаяся с разряда номер k, равна единице в соседнем старшем разряде номер k1:
0.00000099990.0000010000 (k7, k16),
09999999.99910000000.000 (k6, k17).
Действительно, записи из бесконечной цепочки девяток отвечает сумма бесконечной геометрической прогрессии со знаменателем 10-1:
9k9k-19k-29k10k9k-110k-19k-210k-2
10k+11k+110k+1.
Рациональные числа. На практике работать с вещественными числами невозможно хотя бы потому, что для записи чисел отводится ограниченное место. Числа, записи которых имеют конечную длину, образуют класс рациональных чисел. И этот класс чисел тоже замкнут относительно всех арифметических операций.
В общем случае рациональное число A изображается такой записью:
Aanan-1a0.a-1a-2a-ka-k-1a-k-2a-m .
Здесь anan-1a0 – целая часть числа, a-1a-2a-ka-k-1a-k-2a-m – его дробная часть. Как видим, все разряды записи числа (и дробной части тоже) пронумерованы по степеням десятки (разряд номер (1) имеет вес 10-1, разряд номер (2) – вес 10-2 и т.д.). Обычно целая часть числа отделяется от его дробной части запятой. В компьютерной математике (с которой мы будем иметь дело на практике) разделителем является десятичная точка. Этим разделителем мы и пользуемся.
На числовой прямой рациональные числа представлены точками, которые разделены расстоянием в 10-m, где m – номер младшего разряда в записи чисел. Другими словами, расстояние между двумя соседними рациональными числами на числовой оси равно 110m, а именно, единице младшего разряда в из записях.
Бесконечные записи вещественных чисел, да и просто длинные записи рациональных чисел приходится укорачивать. Делается это по правилу округления десятичных дробей. Сформулируем это правило.
Пусть m-разрядную десятичную дробь
A0.a-1a-2a-k a-k-1a-k-2a-m (2.2)
требуется округлить до k разрядов после точки.
Самое простое – это отбросить содержимое лишних младших разрядов (в записи (2.2) они залиты серым цветом):
AAусеч0.a-1a-2a-k .
Однако просто не всегда хорошо. В худшем случае во всех отброшенных разрядах могут оказаться девятки:
Amaxa-k-1a-k-2a-m9-k-19-k-29-m10-k1-k10-k .
Значит, этот способ округления характеризуется такой максимальной абсолютной погрешностью
Amax1-k10-k0.0-10-21-k
(говорят, что Amax равна единице младшего из оставшихся разрядов в записи числа Aусеч).
Для уменьшения погрешности округления действуют так: отбрасывают содержимое лишних младших разрядов и анализируют значение первой из отброшенных цифр a-k-1a-k-2a-m.
Если a-k-15 (первая из отброшенных цифр меньше пяти), то
AAокрAусеч0.a-1a-2a-k.
Если же a-k-15 (первая из отброшенных цифр больше четырех), то
AAокр |
0.a-1a-2a-k |
Aусеч |
|
|
|
0.0-10-21-k |
|
Максимальная абсолютная погрешность такого округления вдвое меньше и составляет половину единицы младшего числа Aокр:
Amax4-k-19-k-29-m10-k5-k-10-k-20-m0.510-k ,
На практике применяют именно этот алгоритм округления десятичных дробей. Округлим для примера число e сначала до пяти знаков после запятой, затем до двух, до одного, а потом и до целых:
2.718281828459045…2.718282.722.73.
Точно так округляют и большие числа. Например, число
B428169807482786156493820170
округлим до двух старших цифр:
B4300000000.
Зачастую
в одном наборе данных собраны числа,
существенно различающиеся по абсолютной
величине. В этих случаях удобно бывает
каждое число A
представлять в стандартной
форме, а
именно, в виде произведения мантиссы
MA
и масштабного множителя
(здесь PA
– порядок числа A):
AMA
.
При этом 1MA9, то есть целая часть мантиссы занимает один разряд и в этом разряде записан не нуль. Запишем, к примеру, числа 234507 и 0.01385462 в стандартной форме с мантиссой, округленной до двух разрядов после точки:
2345072.345071052.35105,
0.013854621.38546210-21.3910-2.
Стандартная форма записи чисел удобна для выполнения операций умножения и деления. Мантисса произведения (частного) вычисляется путем умножения (деления) мантисс исходных чисел, а порядок результата вычисляют путем сложения (вычитания) их порядков. Например,
2345070,013854622.351051.3910-23.27103.
0.01385462234507(1.3910-2)(2.35105)0.59110-7.
При необходимости результат приводится к стандартной форме. Так, в последнем примере
0.59110-75.9110-8.
Отметим, что для выполнения операций сложения и вычитания числа в стандартной форме должны быть преобразованы к обычному виду. А результаты этих операций снова преобразуются к стандартной форме.
Натуральные и целые числа. Натуральные числа – один, два, три и т.д. используют для счета предметов и для обозначения их количества. Например, двести сорок пять студентов первого курса РАП, тридцать четвертая страница учебника по математике. В практике вычислений, как мы уже отметили, оперируют не с самими предметами в заданном количестве (студентами, страницами), а с записями соответствующих чисел (245, 24).
Над натуральными числами можно выполнять все арифметические операции. Однако эти операции неравноценны. Результаты операций сложения и умножения натуральных чисел оказываются тоже натуральными. При этом результат не зависит от порядка слагаемых и сомножителей. Что касается операции вычитания натуральных чисел, то здесь ситуация такая. Если уменьшаемое больше вычитаемого, то разность – число натуральное: 532. Если же уменьшаемое меньше вычитаемого, то разность уже не натуральное число: 352. Это число отрицательное. Числа 2 и 2 называют противоположными. Очевидно, что каждое натуральное число имеет противоположное отрицательное. Число, противоположное отрицательному, называют положительным. Запись положительного числа начинают знаком плюс . Запись отрицательного числа начинают знаком минус . Между противоположными числами 1 и 1 стоит число 0 (нуль), которое противоположного не имеет. Нуль предметов означает, что таких предметов нет (например, количество неудовлетворительных оценок на экзамене по математике). Число нуль относят к положительным, хотя знаком обычно не снабжают. Остальные положительные числа тоже чаще всего записывают без знака .
Отрицательные и положительные числа в совокупности образуют множество целых чисел. На числовой прямой целые числа представлены точками, которые разделены отрезками длиною в 1. Между этими точками целых чисел нет.
На множестве целых чисел устраняется недостаток операции вычитания натуральных чисел. Результатом вычитания целых чисел будет целое число. А вот операция деления целых чисел не всегда дает целое число.
Таким образом, класс натуральных чисел замкнут только относительно операций сложения и умножения, класс целых чисел замкнут относительно операций сложения, вычитания и умножения.
Опишем еще одну операцию над целыми числами.
Пусть A и M – два произвольных целых положительных числа, причем M1. Тогда A можно представить такой суммой:
AMD(A)mod M,
где (A)mod M – остаток от деления A на M нацело (то есть D – тоже целое, оно показывает, сколько раз M укладывается в A),
0(A)mod MM1.
Говорят, что найти (A)mod M значит представить число A по модулю M:
(A)mod MAMD.
Например, M{20 ,31}, A{120, 155, 13}.
(120)mod 3127, (155) mod 310, (13)mod 3113,
(120)mod 200, (155) mod 2015, (13)mod 2013.
Ради интереса отметим, что (A)mod 10 есть младшая цифра в записи A. В самом деле, остаток от деления любого A на 10 всегда меньше десяти, а значит, равен тому элементу множества {0,1,2,3,4,5,6,7,8,9}, который и стоит в младшем разряде А.