Что надо знать о числах.
В физике, в эксперименте и в компьютерном моделировании, вы часто будете пользоваться числами и операциями над числами, такими как сложение, вычитание, умножение, деление, возведения в степень и извлечения корня.
Поэтому вам надо знать нижеизложенные основные понятия и законы.
Вы уже знаете, что числа бывают целыми (integer number)и дробными (fractional number). Эти числа могут быть как положительными, так и отрицательными. Поговорим о них подробнее.
Натуральные числа.
Положительные целые числа и ноль, называются натуральными числами. Натуральными они называются потому, что именно их вы чаще всего видите в природе, естественным/натуральным образом. С их помощью обозначают или число предметов, или порядковый номер предмета среди группы других предметов (говорят порядковый номер, или что то же самое, индекс элемента в рассматриваемом множестве). Например число яблок в корзине- это натуральное число, обозначающее сколько всего фруктов в данном множестве яблок. Порядковый номер чека или банковской карты- это тоже натуральное число, указывающий порядковый номер, например, чека в множестве чеков вашей чековой книжки. Номер страницы- это натуральное число, указывающее на порядковой номер страницы среди множества страниц вашей книги. В случае, если можно придать каждому элементу множества порядковый номер, говорят, что множество можно пронумеровать. Например, когда строю солдат дается команда «по порядку рассчитайсь», то солдаты по очереди называют свои порядковые номера и таким образом их пронумеровывают, начиная с первого. Тогда номер последнего в строю получается равным общему числу солдат строя. Или дома на улице пронумеровываются, чтобы можно было пользоваться почтовым адресом.
Но это только начало абстракции. Следующим шагом абстракции является то, что числа сами могут быть элементами множества. И вы уже знакомы с такими примерами. Вы создавали такие множества определения и множества значений функций, когда строили графики в SpreadSheets. Такие множества могут быть использованы для обозначения самых разных предметов, как вы уже знаете. Например, множество Х было представлено в виде следующих чисел: {0, 2, 4, 6, 8, 10}. Обозначать эти числа могли ягоды, или время, или расстояние, или даже порядковый номер. Например, номер заезда гоночных автомобилей. При этом адрес ячеек, где были записаны эти числа, содержит в себе порядковый номер ячеек в данной колонке. Например адрес А6, содержит адрес колонки А и порядковый номер 6 ячейки в этой колонке, который равен номеру строки, в которой находится эта ячейка. Отметим, что само множество чисел может быть и множеством дробных чисел. А вот порядковые номера- только натуральными. С такими примерами дробных множеств вы тоже знакомы. Вы с ними сталкивались при создании множеств значений функций, например при нахождении координат точек окружности.
Остановимся немного на нумерации, или еще говорят, индексировании множеств в Basic. Вы помните, что отдельные листы в SpreadSheets пронумерованы и записываются по умолчанию (default names) так Sheet1, Sheet2, Sheet3, и т.д. В то же время, когда вы пишете программу на Basic, то вы их индексируете согласно правилам Basic. При этом нумерация начинается не с единицы, а с нуля. Т.е. вы присваиваете индекс 0 для Sheet1.
Также вы уже знаете, что в Basic можно обратиться к ячейке двумя разными способами. Первый способ записывается так (допустим мы обращаемся к А1, самой первой ячейке в Sheet1):
ThisComponent.Sheets(0).getCellNameByRange(“A1”)
Второй способ такой:
ThisComponent.Sheets(0).getCellByPosition(0,0)
Как видите, индексация колонок и строк тоже начинается с 0. Например, обращение к ячейке B5, записывается так:
ThisComponent.Sheets(0).getCellByPosition(1,4)
При такой нумерации, число элементов в множестве всегда на единицу больше порядкового номера элемента с самым большим порядковым номером. Т.е. если бы солдаты начинали свою нумерацию с 0, то число всех солдат в строю было бы на 1 больше порядкового номера последнего солдата. С подобной нумерацией мы еще неоднократно столкнемся в Basic. Например, когда будем записывать string переменные и тексты в файлы.
ИЗ вашего опыта построения графиков вы уже знаете, что натуральные числа можно изобразить точками на числовой прямой.
Операции над множеством натуральных чисел.
Сложение.
Натуральные числа можно складывать и умножать. Основные правила для операций сложения определенном на множестве натуральных чисел:
Пусть даны два натуральных числа a, b и c, тогда всегда верно:
a+b= b+a (коммутативный закон сложения)
Коммутативный закон легко понять, если представить его действие на числовой прямой в виде сложения отрезка длиной a и b. Суммарная длина будет такой же и в случае, когда мы отложим сначала а, а потом b, и в случае когда сначала отложим b, а потом а. Или другими словами, сравним два случае. Первый случай. Сначала мы прошли расстояние а, а потом b. Второй случай: сначала прошли расстояние b, а потом расстояние а. В обоих случаях мы пройдем одинаковое суммарное расстояние.
(a+b) +c= a+(b + c) (ассоциативный закон сложения)
О чем говорит этот закон? Во-первых, что означают скобки в математике и везде, где используется математика: физике, химии, программировании и т.д.. Скобки говорят, что сначала выполняется действие в скобках. Во-вторых, о чем этот ассоциативный закон? Вообще-то о том, как можно складывать любое количество чисел. Т.е. коммутативный закон говорит нам, как можно сложить любые два натуральных числа. Но как быть если надо сложить не два, а три, или четыре, или еще больше чисел?
Рассмотрим сначала три числа a, b и c. Мы не умеем пока складывать сразу три числа. Зато мы знаем как складывать два из них. Поэтому можно было бы сложить сначала
a и b. Потом взять полученное число и сложить его с c. Эту последовательность действий можно записать с помошью скобок так:
(a+b) +c
С другой стороны, можно сложить сначала b и c. Потом взять полученное число и сложить его с a. Такую последовательность действий можно записать с помошью скобок следующим образом:
a+(b + c)
Ассоциативный закон гласит, что результат в обоих случаях будет одинаковым:
(a+b) +c= a+(b + c)
Этот закон можно пояснить с помощью трех сосудов с водой. Пусть даны три сосуда с водой. Пусть в среднем есть мерные рисками для измерения объема жидкости. Надо слить в него воду из двух других, чтобы замерить общий объём имеющейся в них воды. Ассоциативный закон утверждает, что без разницы, в какой последовательности мы будем сливать в него воду из двух других сосудов: сначала сольём a в b, а потом добавим c; или сначала сольём c в b, а потом добавим a.
Задача для самостоятельного решения на сообразительность:
1. Пусть есть три стакана с водой и еще один сосуд с мерными рисками для измерения объема жидкости. Надо слить в него воду из трех стаканов, чтобы замерить общий объём имеющейся в них воды. С помощью коммутативного и ассоциативного законов доказать, что без разницы в какой последовательности мы будем сливать в него воду из стаканов:
(a+b) +c= a+(b + c)= (a+c) +b
Примечание: В чем разница между «доказать» и «продемонстрировать очевидность примером»? С точки зрения физики, если показана очевидность утверждения, то этого достаточно, чтобы утверждение считать доказанным. Например, в предыдущих случаях мы поясняли законы с помощью очевидных примеров. Но с математической точки зрения, очевидность не есть доказательство. Доказательством будет, если мы логически выведем равенство :
(a+b) +c= a+(b + c)= (a+c) +b
из законов, которые мы принимаем за истину, не требующую доказательств. Такие законы в математике называются аксиомами. В данном случае такими законами принятыми за истину без доказательств будут коммутативный и ассоциативный законы:
a+b= b+a
(a+b) +c= a+(b + c)
Приз за доказательство: тот кто выведет, тот может считать, что он действительно понял, как пользоваться ассоциативным и коммутативным законами.
Еще немного о доказательствах и спорах: Что значит доказать? Как мы уже говорили в самом начале этого курса, математика и наука появились в Древней Греции. И возникли они из любви древних греков к решению споров с помощью ораторского искусства. Древние Греки были великие спорщики. Искусство споров, ораторское искусство, умение ораторов доказывать правоту своих взглядов с помощью логических выводов ценились очень высоко. Одним из основных видов соревнований на олимпиадах были именно соревнования ораторов. Что это такое- выведем логически? На бытовом языке- это означает абсолютно честно. Например, когда мы утверждаем, что нет разницы между тем, что сначала прошли расстояние а затем b, и сначала b затем а, - это выглядит очевидным. Но это не доказательство, поскольку на вопрос, «а из чего это следует?» ответа нет. Значит мы будем лукавить, если признаем, что мы доказали данное утверждение. Почему так важно показать из чего это следует?
Например, можно придумать такой частный контр-пример, когда пешеход идёт внутри здания по эскалатору, который движется со скоростью пешехода. Но некоторое время эскалатор движется вперед, а потом назад. Допустим пешеход всегда проходит первое расстояние, потом останавливаемся отдохнуть, и затем проходит второе расстояние. Пусть существует робот, который следит за пешеходами на эскалаторе и переключает направление движения эскалатора, как только идущий по нему человек останавливается. Тогда можно подобрать такие расстояния a, b и такую длину эскалатора L, что:
1) если пешеход сначала пройдёт а, затем остановится отдохнуть, то он еще будет на эскалаторе, когда тот поедет назад. При этом,
2) если он пройдет сначала расстояние b, то он остановится отдыхать уже пройдя весь эскалатор и сойдя с него.
В первом случае, вторую часть пути он будет идти по эскалатору движущемуся навстречу ему со скоростью равной скорости пешехода. Т.е. пешеход продолжит идти относительно эскалатора, но он будет стоять на месте относительно здания. В этом случае его полный пройденный путь относительно здания будет равен 2*a . Во втором случае, его полный путь пройденный относительно здания будет больше 3*а. (Объясните откуда взялись 2*a и 3*а):
О чем говорит этот частный придуманный пример? Что несмотря на всю очевидность, мы не оговорили чётко условия задачи, мы не приняли исходные утверждения, с которыми будут все согласны без доказательств. В такой ситуации, всегда может найтись кто-то, кто может найти такие условия, что утверждение a+b= b+a, несмотря на всю очевидность, будет неверным. Значит нам надо договорится об основах, о том, во что все согласны верить, что это правда. Верить без доказательств. Т.е. надо принять аксиомы. А вот доказывать мы будем уже ссылаясь на эти аксиомы.
В данном случае мы принимаем само утверждение a+b= b+a, как одну из аксиом. Почему именно это утверждение берется за аксиому? Именно потому, что оно очевидно. Потому что, на только что приведенный частный пример, мы можем возразить и сказать, что уравнение подразумевает, что движение происходит всегда в одной системе отсчета. А в приведенном примере движение изначально характеризуется в разных системах отсчета, да ещё и движущимся относительно друг друга с переменной скоростью. Если в данном случае рассматривать результат в одной системе, например связанной с зданием, надо учесть движение эскалатора, его скорость и время в течении которого пешеход шел по нему. И тогда в итоге мы опять получим a+b= b+a. Конечно такие рассмотрения частных случаев не являются доказательством, что утверждение a+b= b+a верно всегда, но мы можем договориться и принять его за истину, считать его неотъемлемым свойством операции сложения натуральных чисел, в силу его очевидности. А для случаев, когда a+b не равно b+a, мы будем просто считать, что операция сложения в этих случаях не определена.
Не правда ли это очень напоминает, как люди делятся на православных христиан и остальных? На тех, кто верит в Символ Веры, и тех , кто нет. В данном случае, Символ Веры- это тоже аксиома для нас. И если человек не верит, ему бессмысленно что-либо доказывать. Доказывать и обсуждать что-то касающееся Веры, имеет смысл только с верующими людьми. Тогда у нас есть общая отправная точка наших рассуждений- наши аксиомы: Символ Веры, Евангелие, церковные каноны, которые мы принимаем без доказательств. И все наши умозаключения и выводы будут логическими следствиями этих аксиом. Именно эти логические умозаключения могут быть объектом обсуждений. Они могут быть правильными или ошибочными. Примеры правильных умозаключений: мнения о пользе воскресных школ, о пользе преподавании Закона Божия. Примеры ошибочных умозаключений: мнение о необходимости обновления церковных канонов. Обновленцы были популярны в начале 20-го столетия и стали во многом причиной революций, и последовавшей смуты в России. История богословия в России знает много других примеров, оказавших большое влияние на судьбу страны. Что же касается неверующих, то им можно и нужно рассказывать про церковь, приводить примеры, можно демонстрировать отсутствие противоречий между православием и наукой, и т.д. . Но спорить с ними бессмысленно, потому что заранее можно сказать, что этот спор рано или поздно придет к вопросу, в какие аксиомы мы верим.
Задача для самостоятельного решения:
2. Надо сложить пять произвольных чисел a, b, c, d и e:
a+b+c+d+e=
Как и раньше предполагается, что мы знаем, как складывать два любых числа.
А. Покажите сколькими разными способами это можно сделать, расставив соответствующим образом скобки, но не переставляя местами слагаемые.
Пример одного из возможных способов : a+b+c+d+e= ((a+(b+c))+d)+e
Б. Приведите три примера разного порядка выполнения сложений, расположив соответствующим образом скобки, в случае, когда слагаемые переставляются местами.
Например: a+b+c+d+e= e + ((a+b)+(c+d))
Умножение.
Вы уже знаете, что если число натуральное число a сложить b раз, то такое сложение будет являться умножением b*a. Для умножения натуральных чисел выполняются следующие законы:
a*b= b*a (коммутативный закон умножения)
(a*b) *c= a*(b *c) (ассоциативный закон умножения)
a*(b+c)= a*b + a*c (дистрибутивные законы)
а*1=a (закон существования единичного элемента, который при умножении на любое число дает то же самое число).
Задачи для самостоятельного решения на сообразительность:
4. Мы с вами уже разбирали понятие площадей и объемов геометрических фигур, как сумм квадратов с единичной площадью и кубов с единичным объёмом. С помощью понятия площадей прямоугольника, объема прямоугольного параллелепипеда и площади прямоугольника состоящего из двух прямоугольников докажите коммутативный, ассоциативный законы умножения и дистрибутивный закон для натуральных чисел:
.
Пример доказательства коммутативного закона умножения:
Площадь прямоугольника со сторонами а и b равна числу единичных квадратов, на которые можно разбить данный прямоугольник. Их число можно посчитать так. Такие квадраты можно объединить в колонки. В каждой колонке будет по а квадратов. Таких колонок будет b. Теперь мы их сложим. Получим
Но мы можем объединить квадраты и в строки. Тогда в каждой строке будет b квадратов. А таких строк будет а . Значит верно:
Поскольку при этом мы считаем площадь одной и той же фигуры, то следовательно верно равенство a*b= b*a. Что и требовалось доказать.
5. Докажите верность следующего закона, используя коммутативный закон умножения и дистрибутивный закон:
(b+c)*a = b*a + c*a
6. Дистрибутивный закон еще называется правилом раскрытия скобок. С помощью дистрибутивного закона раскройте скобки следующего произведения двух и трёх скобок произвольных натуральных чисел:
(a+b)*(c+d) =
(a+b)*(c+d)*(e+f)=
Целые числа.
Вы уже знаете, что для многих функций существуют обратные функции, производящие обратное преобразование элементов множества значений в элементы области определения исходной функции. Для сложения, обратной функцией является вычитание.
Т.е. по данному определению, если прямая функция сложение x+a=y, то обратная функция будет x=y-a, и называться обратная функция будет вычитание. На числовой прямой вычитание произвольно взятого числа b из числа a будет означать откладывание сначала отрезка длиной a от точки 0 в положительном направлении (т.е. направо от 0), а затем откладывание от точки a, отрезка длиной b в отрицательном направлении (т.е. налево).
Длина получившегося отрезка ОК будет равна OK= a-b. Понятно если, длина b больше длины а, то точка К окажется слева от 0 и величина a-b будет отрицательной:
В этом случае, нам будет недостаточно натуральных чисел, чтобы записать разницу a-b. Нам потребуются отрицательные числа. Отрицательными числами будем называть числа стоящие налево от 0. Они как и положительные числа будет расти по абсолютной величине (или говорят по модулю) по мере удаления от 0, только они будут так расти по модулю налево. А по определению числовой прямой, из двух произвольных чисел этой числовой прямой больше то, которое стоит справа. Поэтому например, если для положительных 9 > 8, то для отрицательных -9 < -8. Натуральные числа и отрицательные целые числа вместе образуют множество целых чисел. На множестве отрицательных чисел определены как операции сложения и умножения, так и операция обратная сложению- вычитание.
Обобщим, что нового мы ввели с использованием целых положительных и отрицательных чисел. Во первых, мы стали говорить о двух направлениях: о положительном и об отрицательном. Поэтому теперь надо не только говорить какой длины отрезок мы откладываем на числовой прямой, но и в каком направлении: в положительном (вправо) или в отрицательном (влево). Поэтому вместо отрезка удобнее пользоваться вектором. Вектор- это отрезок со стрелкой, показывающий в каком направлении этот отрезок откладывается. Вы уже с ними сталкивались. Когда играли в автогонки на клетчатой бумаге вы с его помощью откладывали скорость вашей машины.
В общем случае векторы, как в игре автогонки, могут быть направлены в любом направлении, а не только вдоль числовой прямой. Но числовая прямая- это одномерное пространство, и на ней есть только два направления: положительное и отрицательное. Поэтому на числовой прямой наши вектора будут всегда направлены только вдоль числовой прямой.
Длина вектора будет называться его длиной или модулем. Т.е. во-вторых, мы ввели понятие модуля. Обозначать вектор будем или с помощью двух букв как отрезок, но со стрелочкой наверху. Например, ОК или [ОК] означает отрезок ОК на рисунке числовой прямой. Его длина обозначается так |OK|. Вектор ОК обозначается так: ОК . Длина (модуль) вектора ОК обозначается аналогично | ОК |. Или вектор будем обозначать с помощью одной буквы. Например на предыдущем рисунке изображены векторы a и b. Поскольку любое число числовой прямой задаёт соответствующий вектор с началом в начале числовой прямой и концом-стрелкой указывающей на это число, то по аналогии с вектором вводится понятие модуля числа. Например |8|=8, и модуль -8 тоже равен 8 (ведь длина таких векторов одинакова, только сами вектора имеют противоположные направления): |-8|=8. Однако обозначения типа 8 или -8 не приняты. Вектора, как и отрезки, обозначаются только буквами, но не числами. Например в обозначении вектора OK мы немного лукавим принимая цифру 0 за букву О из-за схожести их написания. В данном случае правильно было бы обозначать точку 0 еще и буквой О.
На множестве целых чисел определены операции сложения, вычитания и умножения. Но что такое умножить отрицательное число на любое другое? Приняты следующее правила:
При умножении чисел их модули умножаются как натуральные числа. Ведь модуль- это натуральное число. К полученному произведению модулей добавляется знак, по следующему правилу:
1. произведение двух положительных чисел есть тоже число положительное;
2. произведение отрицательного числа на положительное; также как и произведение положительного на отрицательное, всегда отрицательное число (первое является следствием закона о существовании единичного элемента, а последнее есть его следствие в силу коммутативного закона умножения). Отсюда следует, что умножение на -1 даёт противоположное число по знаку, но с тем же модулем.
3. произведение двух отрицательных чисел- есть число положительное (это следствие закона умножения на -1).
Дробные и рациональные числа.
Введем теперь операцию обратную умножению. Как вы уже знаете- это деление:
Прямая функция умножение: Y= a*X
Обратная функция деление: Y/a= X, или такая запись Y:a=X, или такая запись
Добавим только, что делить можно на любое число, кроме нуля. Что является следствием неоднозначности функции деления на ноль. Ведь она обратна умножению на ноль. А любое число умноженное на 0 дает ноль: Х*0 = 0. T.e. Даже для деления 0 на 0 нет однозначного значения, а для других чисел результата деления на 0 вообще не существует.
Понятно, что одного множества целых числе недостаточно для введения операций деления. Например 3/2 не является целым числом. Поэтому вводится множество рациональных чисел, включающее в себя целые и дробные числа. На множестве рациональных чисел определены операции сложения, вычитания, умножения и деления. Знак при делении положительных и отрицательных чисел определяется на основе правил умножения. Т.е. любое число может быть представлено в виде произведения модуля числа на +1 или -1 в зависимости от знака самого числа. Например -8=|-8|*(-1)=8*(-1). Затем при деление сначала определяется модуль конечного числа. Потом используют правило нахождения знака на основе правил умножения:
1*1=1 => 1/1=1
1*(-1)= -1 => -1/(-1)=1
(-1)*1= -1 => -1/1= -1
Правило (-1)*(-1)= 1 дает уже полученный результат 1/(-1)=-1
Говоря о дробных числах необходимо напомнить, наиболее важные понятия и правила, которые пригодятся нам:
1. общий вид дробного числа: m/n, где m и n - целые числа, и n не может быть равен нулю. m- называется числителем, n- знаменателем.
2. общий вид записи сложения дробных чисел: (m/n )+ (k/p)= (mp +kn)/(n*p)
3. общий вид записи вычитания дробей (m/n )- (k/p)= (mp – kn)/(n*p)
4. общий вид записи умножения дробей: (m/n)* (k/p)=(m*k)/(n*p)
5. общий вид записи деления одной дроби на другую: (m/n)/(k/p)=(m*p)/(n*k)
6. правила сложения, вычитания, умножения , деления, когда одно из двух чисел -целое число, легко получить из приведенных правил, если принять для одной из дробей, что её знаменатель равен 1.
Если знаменатель дроби равен 10 или кратен 10 (кратен 10 - значит равен 10, или 100, или 1000, или 10000 и т.д.), то это дробь называется десятичной.
В программировании чаще используют десятичные дроби, которые записываются с использованием точки. Например, 1.2357 или 6.842. Если число цифр после запятой фиксировано, то число называется десятичным дробным числом с фиксированным числом знаков после запятой. В Basic используются десятичные дроби с плавающей запятой- float, single, double . В них число знаков после запятой не фиксировано и определяется при подсчете выражения.
Иррациональные и вещественные числа.
Если мы теперь будем рассматривать все точки числовой прямой, то кроме рациональных чисел, на ней окажутся иррациональные числа. Кто это такие иррациональные числа? Примером иррациональных чисел будет например квадратный корень из 2. Т.е. если задать функции возведения в степень, например, в квадрат: а*а=a2, можно на множестве рациональных чисел. То обратная функция, например квадратный корень потребует уже рациональных и иррациональных чисел. т.е всей числовой прямой. Рациональные и иррациональные числа образуют множество действительных или вещественных чисел (real numbers). Как вы видите на примере числовой прямой, действительные числа являются одномерными числами.
Про действительные числа можно сказать, что каждый человек встречается с ними в его повседневной жизни. Поэтому они известны человечеству со времен Древней Греции. Кроме одномерных чисел существуют многомерные со своими специфическими операциями определенными на множествах таких многомерных чисел. Эти числа возникли сначала в математике, а затем нашли применение и в других науках. В дальнейшем мы познакомимся с одним из представителей многомерных чисел- двумерными числами, которые обычно называются комплексными числами.
В физике, в эксперименте и в компьютерном моделировании, вы часто будете пользоваться числами и операциями над числами, такими как сложение, вычитание, умножение, деление, возведения в степень и извлечения корня.
Поэтому вам надо знать нижеизложенные основные понятия и законы.
Вы уже знаете, что числа бывают целыми (integer number)и дробными (fractional number). Эти числа могут быть как положительными, так и отрицательными. Поговорим о них подробнее.
Натуральные числа.
Положительные целые числа и ноль, называются натуральными числами. Натуральными они называются потому, что именно их вы чаще всего видите в природе, естественным/натуральным образом. С их помощью обозначают или число предметов, или порядковый номер предмета среди группы других предметов (говорят порядковый номер, или что то же самое, индекс элемента в рассматриваемом множестве). Например число яблок в корзине- это натуральное число, обозначающее сколько всего фруктов в данном множестве яблок. Порядковый номер чека или банковской карты- это тоже натуральное число, указывающий порядковый номер, например, чека в множестве чеков вашей чековой книжки. Номер страницы- это натуральное число, указывающее на порядковой номер страницы среди множества страниц вашей книги. В случае, если можно придать каждому элементу множества порядковый номер, говорят, что множество можно пронумеровать. Например, когда строю солдат дается команда «по порядку рассчитайсь», то солдаты по очереди называют свои порядковые номера и таким образом их пронумеровывают, начиная с первого. Тогда номер последнего в строю получается равным общему числу солдат строя. Или дома на улице пронумеровываются, чтобы можно было пользоваться почтовым адресом.
Но это только начало абстракции. Следующим шагом абстракции является то, что числа сами могут быть элементами множества. И вы уже знакомы с такими примерами. Вы создавали такие множества определения и множества значений функций, когда строили графики в SpreadSheets. Такие множества могут быть использованы для обозначения самых разных предметов, как вы уже знаете. Например, множество Х было представлено в виде следующих чисел: {0, 2, 4, 6, 8, 10}. Обозначать эти числа могли ягоды, или время, или расстояние, или даже порядковый номер. Например, номер заезда гоночных автомобилей. При этом адрес ячеек, где были записаны эти числа, содержит в себе порядковый номер ячеек в данной колонке. Например адрес А6, содержит адрес колонки А и порядковый номер 6 ячейки в этой колонке, который равен номеру строки, в которой находится эта ячейка. Отметим, что само множество чисел может быть и множеством дробных чисел. А вот порядковые номера- только натуральными. С такими примерами дробных множеств вы тоже знакомы. Вы с ними сталкивались при создании множеств значений функций, например при нахождении координат точек окружности.
Остановимся немного на нумерации, или еще говорят, индексировании множеств в Basic. Вы помните, что отдельные листы в SpreadSheets пронумерованы и записываются по умолчанию (default names) так Sheet1, Sheet2, Sheet3, и т.д. В то же время, когда вы пишете программу на Basic, то вы их индексируете согласно правилам Basic. При этом нумерация начинается не с единицы, а с нуля. Т.е. вы присваиваете индекс 0 для Sheet1.
Также вы уже знаете, что в Basic можно обратиться к ячейке двумя разными способами. Первый способ записывается так (допустим мы обращаемся к А1, самой первой ячейке в Sheet1):
ThisComponent.Sheets(0).getCellNameByRange(“A1”)
Второй способ такой:
ThisComponent.Sheets(0).getCellByPosition(0,0)
Как видите, индексация колонок и строк тоже начинается с 0. Например, обращение к ячейке B5, записывается так:
ThisComponent.Sheets(0).getCellByPosition(1,4)
При такой нумерации, число элементов в множестве всегда на единицу больше порядкового номера элемента с самым большим порядковым номером. Т.е. если бы солдаты начинали свою нумерацию с 0, то число всех солдат в строю было бы на 1 больше порядкового номера последнего солдата. С подобной нумерацией мы еще неоднократно столкнемся в Basic. Например, когда будем записывать string переменные и тексты в файлы.
ИЗ вашего опыта построения графиков вы уже знаете, что натуральные числа можно изобразить точками на числовой прямой.
Операции над множеством натуральных чисел.
Сложение.
Натуральные числа можно складывать и умножать. Основные правила для операций сложения определенном на множестве натуральных чисел:
Пусть даны два натуральных числа a, b и c, тогда всегда верно:
a+b= b+a (коммутативный закон сложения)
Коммутативный закон легко понять, если представить его действие на числовой прямой в виде сложения отрезка длиной a и b. Суммарная длина будет такой же и в случае, когда мы отложим сначала а, а потом b, и в случае когда сначала отложим b, а потом а. Или другими словами, сравним два случае. Первый случай. Сначала мы прошли расстояние а, а потом b. Второй случай: сначала прошли расстояние b, а потом расстояние а. В обоих случаях мы пройдем одинаковое суммарное расстояние.
(a+b) +c= a+(b + c) (ассоциативный закон сложения)
О чем говорит этот закон? Во-первых, что означают скобки в математике и везде, где используется математика: физике, химии, программировании и т.д.. Скобки говорят, что сначала выполняется действие в скобках. Во-вторых, о чем этот ассоциативный закон? Вообще-то о том, как можно складывать любое количество чисел. Т.е. коммутативный закон говорит нам, как можно сложить любые два натуральных числа. Но как быть если надо сложить не два, а три, или четыре, или еще больше чисел?
Рассмотрим сначала три числа a, b и c. Мы не умеем пока складывать сразу три числа. Зато мы знаем как складывать два из них. Поэтому можно было бы сложить сначала
a и b. Потом взять полученное число и сложить его с c. Эту последовательность действий можно записать с помошью скобок так:
(a+b) +c
С другой стороны, можно сложить сначала b и c. Потом взять полученное число и сложить его с a. Такую последовательность действий можно записать с помошью скобок следующим образом:
a+(b + c)
Ассоциативный закон гласит, что результат в обоих случаях будет одинаковым:
(a+b) +c= a+(b + c)
Этот закон можно пояснить с помощью трех сосудов с водой. Пусть даны три сосуда с водой. Пусть в среднем есть мерные рисками для измерения объема жидкости. Надо слить в него воду из двух других, чтобы замерить общий объём имеющейся в них воды. Ассоциативный закон утверждает, что без разницы, в какой последовательности мы будем сливать в него воду из двух других сосудов: сначала сольём a в b, а потом добавим c; или сначала сольём c в b, а потом добавим a.
Задача для самостоятельного решения на сообразительность:
1. Пусть есть три стакана с водой и еще один сосуд с мерными рисками для измерения объема жидкости. Надо слить в него воду из трех стаканов, чтобы замерить общий объём имеющейся в них воды. С помощью коммутативного и ассоциативного законов доказать, что без разницы в какой последовательности мы будем сливать в него воду из стаканов:
(a+b) +c= a+(b + c)= (a+c) +b
Примечание: В чем разница между «доказать» и «продемонстрировать очевидность примером»? С точки зрения физики, если показана очевидность утверждения, то этого достаточно, чтобы утверждение считать доказанным. Например, в предыдущих случаях мы поясняли законы с помощью очевидных примеров. Но с математической точки зрения, очевидность не есть доказательство. Доказательством будет, если мы логически выведем равенство :
(a+b) +c= a+(b + c)= (a+c) +b
из законов, которые мы принимаем за истину, не требующую доказательств. Такие законы в математике называются аксиомами. В данном случае такими законами принятыми за истину без доказательств будут коммутативный и ассоциативный законы:
a+b= b+a
(a+b) +c= a+(b + c)
Приз за доказательство: тот кто выведет, тот может считать, что он действительно понял, как пользоваться ассоциативным и коммутативным законами.
Еще немного о доказательствах и спорах: Что значит доказать? Как мы уже говорили в самом начале этого курса, математика и наука появились в Древней Греции. И возникли они из любви древних греков к решению споров с помощью ораторского искусства. Древние Греки были великие спорщики. Искусство споров, ораторское искусство, умение ораторов доказывать правоту своих взглядов с помощью логических выводов ценились очень высоко. Одним из основных видов соревнований на олимпиадах были именно соревнования ораторов. Что это такое- выведем логически? На бытовом языке- это означает абсолютно честно. Например, когда мы утверждаем, что нет разницы между тем, что сначала прошли расстояние а затем b, и сначала b затем а, - это выглядит очевидным. Но это не доказательство, поскольку на вопрос, «а из чего это следует?» ответа нет. Значит мы будем лукавить, если признаем, что мы доказали данное утверждение. Почему так важно показать из чего это следует?
Например, можно придумать такой частный контр-пример, когда пешеход идёт внутри здания по эскалатору, который движется со скоростью пешехода. Но некоторое время эскалатор движется вперед, а потом назад. Допустим пешеход всегда проходит первое расстояние, потом останавливаемся отдохнуть, и затем проходит второе расстояние. Пусть существует робот, который следит за пешеходами на эскалаторе и переключает направление движения эскалатора, как только идущий по нему человек останавливается. Тогда можно подобрать такие расстояния a, b и такую длину эскалатора L, что:
1) если пешеход сначала пройдёт а, затем остановится отдохнуть, то он еще будет на эскалаторе, когда тот поедет назад. При этом,
2) если он пройдет сначала расстояние b, то он остановится отдыхать уже пройдя весь эскалатор и сойдя с него.
В первом случае, вторую часть пути он будет идти по эскалатору движущемуся навстречу ему со скоростью равной скорости пешехода. Т.е. пешеход продолжит идти относительно эскалатора, но он будет стоять на месте относительно здания. В этом случае его полный пройденный путь относительно здания будет равен 2*a . Во втором случае, его полный путь пройденный относительно здания будет больше 3*а. (Объясните откуда взялись 2*a и 3*а):
О чем говорит этот частный придуманный пример? Что несмотря на всю очевидность, мы не оговорили чётко условия задачи, мы не приняли исходные утверждения, с которыми будут все согласны без доказательств. В такой ситуации, всегда может найтись кто-то, кто может найти такие условия, что утверждение a+b= b+a, несмотря на всю очевидность, будет неверным. Значит нам надо договорится об основах, о том, во что все согласны верить, что это правда. Верить без доказательств. Т.е. надо принять аксиомы. А вот доказывать мы будем уже ссылаясь на эти аксиомы.
В данном случае мы принимаем само утверждение a+b= b+a, как одну из аксиом. Почему именно это утверждение берется за аксиому? Именно потому, что оно очевидно. Потому что, на только что приведенный частный пример, мы можем возразить и сказать, что уравнение подразумевает, что движение происходит всегда в одной системе отсчета. А в приведенном примере движение изначально характеризуется в разных системах отсчета, да ещё и движущимся относительно друг друга с переменной скоростью. Если в данном случае рассматривать результат в одной системе, например связанной с зданием, надо учесть движение эскалатора, его скорость и время в течении которого пешеход шел по нему. И тогда в итоге мы опять получим a+b= b+a. Конечно такие рассмотрения частных случаев не являются доказательством, что утверждение a+b= b+a верно всегда, но мы можем договориться и принять его за истину, считать его неотъемлемым свойством операции сложения натуральных чисел, в силу его очевидности. А для случаев, когда a+b не равно b+a, мы будем просто считать, что операция сложения в этих случаях не определена.
Не правда ли это очень напоминает, как люди делятся на православных христиан и остальных? На тех, кто верит в Символ Веры, и тех , кто нет. В данном случае, Символ Веры- это тоже аксиома для нас. И если человек не верит, ему бессмысленно что-либо доказывать. Доказывать и обсуждать что-то касающееся Веры, имеет смысл только с верующими людьми. Тогда у нас есть общая отправная точка наших рассуждений- наши аксиомы: Символ Веры, Евангелие, церковные каноны, которые мы принимаем без доказательств. И все наши умозаключения и выводы будут логическими следствиями этих аксиом. Именно эти логические умозаключения могут быть объектом обсуждений. Они могут быть правильными или ошибочными. Примеры правильных умозаключений: мнения о пользе воскресных школ, о пользе преподавании Закона Божия. Примеры ошибочных умозаключений: мнение о необходимости обновления церковных канонов. Обновленцы были популярны в начале 20-го столетия и стали во многом причиной революций, и последовавшей смуты в России. История богословия в России знает много других примеров, оказавших большое влияние на судьбу страны. Что же касается неверующих, то им можно и нужно рассказывать про церковь, приводить примеры, можно демонстрировать отсутствие противоречий между православием и наукой, и т.д. . Но спорить с ними бессмысленно, потому что заранее можно сказать, что этот спор рано или поздно придет к вопросу, в какие аксиомы мы верим.
Задача для самостоятельного решения:
2. Надо сложить пять произвольных чисел a, b, c, d и e:
a+b+c+d+e=
Как и раньше предполагается, что мы знаем, как складывать два любых числа.
А. Покажите сколькими разными способами это можно сделать, расставив соответствующим образом скобки, но не переставляя местами слагаемые.
Пример одного из возможных способов : a+b+c+d+e= ((a+(b+c))+d)+e
Б. Приведите три примера разного порядка выполнения сложений, расположив соответствующим образом скобки, в случае, когда слагаемые переставляются местами.
Например: a+b+c+d+e= e + ((a+b)+(c+d))
Умножение.
Вы уже знаете, что если число натуральное число a сложить b раз, то такое сложение будет являться умножением b*a. Для умножения натуральных чисел выполняются следующие законы:
a*b= b*a (коммутативный закон умножения)
(a*b) *c= a*(b *c) (ассоциативный закон умножения)
a*(b+c)= a*b + a*c (дистрибутивные законы)
а*1=a (закон существования единичного элемента, который при умножении на любое число дает то же самое число).
Задачи для самостоятельного решения на сообразительность:
4. Мы с вами уже разбирали понятие площадей и объемов геометрических фигур, как сумм квадратов с единичной площадью и кубов с единичным объёмом. С помощью понятия площадей прямоугольника, объема прямоугольного параллелепипеда и площади прямоугольника состоящего из двух прямоугольников докажите коммутативный, ассоциативный законы умножения и дистрибутивный закон для натуральных чисел:
.
Пример доказательства коммутативного закона умножения:
Площадь прямоугольника со сторонами а и b равна числу единичных квадратов, на которые можно разбить данный прямоугольник. Их число можно посчитать так. Такие квадраты можно объединить в колонки. В каждой колонке будет по а квадратов. Таких колонок будет b. Теперь мы их сложим. Получим
Но мы можем объединить квадраты и в строки. Тогда в каждой строке будет b квадратов. А таких строк будет а . Значит верно:
Поскольку при этом мы считаем площадь одной и той же фигуры, то следовательно верно равенство a*b= b*a. Что и требовалось доказать.
5. Докажите верность следующего закона, используя коммутативный закон умножения и дистрибутивный закон:
(b+c)*a = b*a + c*a
6. Дистрибутивный закон еще называется правилом раскрытия скобок. С помощью дистрибутивного закона раскройте скобки следующего произведения двух и трёх скобок произвольных натуральных чисел:
(a+b)*(c+d) =
(a+b)*(c+d)*(e+f)=
Целые числа.
Вы уже знаете, что для многих функций существуют обратные функции, производящие обратное преобразование элементов множества значений в элементы области определения исходной функции. Для сложения, обратной функцией является вычитание.
Т.е. по данному определению, если прямая функция сложение x+a=y, то обратная функция будет x=y-a, и называться обратная функция будет вычитание. На числовой прямой вычитание произвольно взятого числа b из числа a будет означать откладывание сначала отрезка длиной a от точки 0 в положительном направлении (т.е. направо от 0), а затем откладывание от точки a, отрезка длиной b в отрицательном направлении (т.е. налево).
Длина получившегося отрезка ОК будет равна OK= a-b. Понятно если, длина b больше длины а, то точка К окажется слева от 0 и величина a-b будет отрицательной:
В этом случае, нам будет недостаточно натуральных чисел, чтобы записать разницу a-b. Нам потребуются отрицательные числа. Отрицательными числами будем называть числа стоящие налево от 0. Они как и положительные числа будет расти по абсолютной величине (или говорят по модулю) по мере удаления от 0, только они будут так расти по модулю налево. А по определению числовой прямой, из двух произвольных чисел этой числовой прямой больше то, которое стоит справа. Поэтому например, если для положительных 9 > 8, то для отрицательных -9 < -8. Натуральные числа и отрицательные целые числа вместе образуют множество целых чисел. На множестве отрицательных чисел определены как операции сложения и умножения, так и операция обратная сложению- вычитание.
Обобщим, что нового мы ввели с использованием целых положительных и отрицательных чисел. Во первых, мы стали говорить о двух направлениях: о положительном и об отрицательном. Поэтому теперь надо не только говорить какой длины отрезок мы откладываем на числовой прямой, но и в каком направлении: в положительном (вправо) или в отрицательном (влево). Поэтому вместо отрезка удобнее пользоваться вектором. Вектор- это отрезок со стрелкой, показывающий в каком направлении этот отрезок откладывается. Вы уже с ними сталкивались. Когда играли в автогонки на клетчатой бумаге вы с его помощью откладывали скорость вашей машины.
В общем случае векторы, как в игре автогонки, могут быть направлены в любом направлении, а не только вдоль числовой прямой. Но числовая прямая- это одномерное пространство, и на ней есть только два направления: положительное и отрицательное. Поэтому на числовой прямой наши вектора будут всегда направлены только вдоль числовой прямой.
Длина вектора будет называться его длиной или модулем. Т.е. во-вторых, мы ввели понятие модуля. Обозначать вектор будем или с помощью двух букв как отрезок, но со стрелочкой наверху. Например, ОК или [ОК] означает отрезок ОК на рисунке числовой прямой. Его длина обозначается так |OK|. Вектор ОК обозначается так: ОК . Длина (модуль) вектора ОК обозначается аналогично | ОК |. Или вектор будем обозначать с помощью одной буквы. Например на предыдущем рисунке изображены векторы a и b. Поскольку любое число числовой прямой задаёт соответствующий вектор с началом в начале числовой прямой и концом-стрелкой указывающей на это число, то по аналогии с вектором вводится понятие модуля числа. Например |8|=8, и модуль -8 тоже равен 8 (ведь длина таких векторов одинакова, только сами вектора имеют противоположные направления): |-8|=8. Однако обозначения типа 8 или -8 не приняты. Вектора, как и отрезки, обозначаются только буквами, но не числами. Например в обозначении вектора OK мы немного лукавим принимая цифру 0 за букву О из-за схожести их написания. В данном случае правильно было бы обозначать точку 0 еще и буквой О.
На множестве целых чисел определены операции сложения, вычитания и умножения. Но что такое умножить отрицательное число на любое другое? Приняты следующее правила:
При умножении чисел их модули умножаются как натуральные числа. Ведь модуль- это натуральное число. К полученному произведению модулей добавляется знак, по следующему правилу:
1. произведение двух положительных чисел есть тоже число положительное;
2. произведение отрицательного числа на положительное; также как и произведение положительного на отрицательное, всегда отрицательное число (первое является следствием закона о существовании единичного элемента, а последнее есть его следствие в силу коммутативного закона умножения). Отсюда следует, что умножение на -1 даёт противоположное число по знаку, но с тем же модулем.
3. произведение двух отрицательных чисел- есть число положительное (это следствие закона умножения на -1).
Дробные и рациональные числа.
Введем теперь операцию обратную умножению. Как вы уже знаете- это деление:
Прямая функция умножение: Y= a*X
Обратная функция деление: Y/a= X, или такая запись Y:a=X, или такая запись
Добавим только, что делить можно на любое число, кроме нуля. Что является следствием неоднозначности функции деления на ноль. Ведь она обратна умножению на ноль. А любое число умноженное на 0 дает ноль: Х*0 = 0. T.e. Даже для деления 0 на 0 нет однозначного значения, а для других чисел результата деления на 0 вообще не существует.
Понятно, что одного множества целых числе недостаточно для введения операций деления. Например 3/2 не является целым числом. Поэтому вводится множество рациональных чисел, включающее в себя целые и дробные числа. На множестве рациональных чисел определены операции сложения, вычитания, умножения и деления. Знак при делении положительных и отрицательных чисел определяется на основе правил умножения. Т.е. любое число может быть представлено в виде произведения модуля числа на +1 или -1 в зависимости от знака самого числа. Например -8=|-8|*(-1)=8*(-1). Затем при деление сначала определяется модуль конечного числа. Потом используют правило нахождения знака на основе правил умножения:
1*1=1 => 1/1=1
1*(-1)= -1 => -1/(-1)=1
(-1)*1= -1 => -1/1= -1
Правило (-1)*(-1)= 1 дает уже полученный результат 1/(-1)=-1
Говоря о дробных числах необходимо напомнить, наиболее важные понятия и правила, которые пригодятся нам:
1. общий вид дробного числа: m/n, где m и n - целые числа, и n не может быть равен нулю. m- называется числителем, n- знаменателем.
2. общий вид записи сложения дробных чисел: (m/n )+ (k/p)= (mp +kn)/(n*p)
3. общий вид записи вычитания дробей (m/n )- (k/p)= (mp – kn)/(n*p)
4. общий вид записи умножения дробей: (m/n)* (k/p)=(m*k)/(n*p)
5. общий вид записи деления одной дроби на другую: (m/n)/(k/p)=(m*p)/(n*k)
6. правила сложения, вычитания, умножения , деления, когда одно из двух чисел -целое число, легко получить из приведенных правил, если принять для одной из дробей, что её знаменатель равен 1.
Если знаменатель дроби равен 10 или кратен 10 (кратен 10 - значит равен 10, или 100, или 1000, или 10000 и т.д.), то это дробь называется десятичной.
В программировании чаще используют десятичные дроби, которые записываются с использованием точки. Например, 1.2357 или 6.842. Если число цифр после запятой фиксировано, то число называется десятичным дробным числом с фиксированным числом знаков после запятой. В Basic используются десятичные дроби с плавающей запятой- float, single, double . В них число знаков после запятой не фиксировано и определяется при подсчете выражения.
Иррациональные и вещественные числа.
Если мы теперь будем рассматривать все точки числовой прямой, то кроме рациональных чисел, на ней окажутся иррациональные числа. Кто это такие иррациональные числа? Примером иррациональных чисел будет например квадратный корень из 2. Т.е. если задать функции возведения в степень, например, в квадрат: а*а=a2, можно на множестве рациональных чисел. То обратная функция, например квадратный корень потребует уже рациональных и иррациональных чисел. т.е всей числовой прямой. Рациональные и иррациональные числа образуют множество действительных или вещественных чисел (real numbers). Как вы видите на примере числовой прямой, действительные числа являются одномерными числами.
Про действительные числа можно сказать, что каждый человек встречается с ними в его повседневной жизни. Поэтому они известны человечеству со времен Древней Греции. Кроме одномерных чисел существуют многомерные со своими специфическими операциями определенными на множествах таких многомерных чисел. Эти числа возникли сначала в математике, а затем нашли применение и в других науках. В дальнейшем мы познакомимся с одним из представителей многомерных чисел- двумерными числами, которые обычно называются комплексными числами.