К компьютерным программам вообще и к exel в частности я не имею никаких претензий. И даже на простенький калькулятор, учащий меня жизни, я не обижаюсь. Потому как написаны эти программы человеком (группой людей) и для удобства человека (другой группы людей). Но
С моей точки зрения в делении на ноль ничего страшного нет, просто в результате получается бесконечность и в математике даже есть соответствующий символ - ∞.
То есть формально мы можем любое рациональное число r разделить на 0 и в итоге получим:
r/0 = ∞ (687.1)
Всего и делов-то!!!
Сейчас не будем останавливаться на тонкостях определения рационального числа r, ноля и бесконечности, просто отметим тот факт, что делить на ноль вполне можно.
Из-за чего же так ругаются компьютерные программы и еще не вымершие учители математики при делении на ноль?
А тут все просто:
Деление на ноль вносит бесконечно большую неопределенность в решение задачи, точнее предполагает бесконечно большое количество правильных ответов.
Попробую пояснить.
1. Когда число r отрицательное и мы его делим на 0 то в итоге:
- r/0 = ∞ или - r/0 = - ∞? (687.2)
Ну то есть формально, если есть положительная бесконечность, то должна быть и отрицательная бесконечность. Но с другой стороны, отрицательная бесконечность - это и есть ноль? И тогда - r/0 = - 0 или - r/0 = 0. Или нет? В общем непонятно...
2. Когда мы делим 0/0, то все еще сложнее
2.1. Если просто сократить одинаковые числитель и знаменателль, то:
0/0 = 1 (687.3.1)
2.2. Если вспомнить правило, что при делении ноля будет ноль, то:
0/0 = 0 (687.3.2)
2.3. А если напирать на бесконечность, то:
0/0 = ∞ (687.3.3)
Но проблема даже не в этом. Ладно бы было только три варианта ответа. Вон в квадратных уравнениях 2 корня, т.е. два варианта ответа и ничего, никого это не напрягает.
2.4. А тут дело в том, что при делении 0/0 теоретически возможен любой вариант ответа и любой из них будет правильным!
0/0 = r (687.3.4)
где r - любое возможное число, включая 0, 1, ∞.
Ну и что, скажете вы, вон в тригонометрии тоже возможно бесконечно большое количество вариантов ответа, потому как угол теоретически может иметь любое значение?
Формально все так, только в данном случае мы имеем дело с разными бесконечностями. В тригонометрии количество вариантов решений на один круг (360 градусов) ограничено, т.е. четко детерминировано и является положительным натуральным числом n и как правило n < 100. То есть получается, что при решении тригонометрических уравнений количество возможных ответов:
Ктр = n·∞ (687.3.5)
А вот при делении 0/0:
К0 = ∞·∞ (687.3.6)
Чувствуете, разницу?
Если нет, то посмотрим на соотношение количеств:
Ктр/К0 = n∞/∞∞ = n/∞ (687.3.8)
Т.е. формально по методу нынешних математиков решением уравнения (687.3.8) будет ноль, потому что отношение например 100 к бесконечности - ноль да и дело с концом. Но как мы видим, это не совсем так.
Но самое интересное это то, что к такому положению вещей привели сами математики. Сначала допускающие, что 4·0 = 0 = 0/4, а потом зависающие при делении на 0. Хотя даже невооруженным глазом видно, что в уравнении:
50·0 = 0 = 0/50 (687.4.1)
что-то не так с логикой. Нет, ну поначалу-то все хорошо. Математики говорят, что 0 - это настолько малая величина, что на сколько ее не раздели или умножь, все равно в итоге будет ноль. Не стоит заморачиваться.
Но вот пример из жизни: у вас в кармане нет денег, пустота, 0. Вы полезли в карман и выяснили, что денег у вас нет (1 операция), там 0. Но вы человек забывчивый, и залезали к себе в карман 50 раз (50 операций). С точки зрения конечного результата ничего не изменилось (ну как минимум потому, что деньги зарабатываются другими способами), у вас как был 0, так и остался. Но с точки зрения выполненных операций 1 операция и 50 операций - это очень большая разница.
Идем дальше. Если мы разделим все члены уравнения (687.4.1) на 0, то получим:
50·0/0 = 0/0 = 0/(50·0) (687.4.2)
50 = 1 = 1/50 (687.4.3) (по правилу сокращения одинаковых числителя и знаменателя)
0 = 0 = 0 (687.4.4) (по правилу деления ноля)
∞ = ∞ = ∞ (687.4.5) (по правилу, вытекающему из общей логики)
И если с уравнениями (687.4.4) и (687.4.5) все более-менее нормально, равенство хотя бы формально соблюдается, то уравнение (687.4.3) - это явно не уравнение, а неравенство. Потому что в обычном мире:
50 ≠ 1 ≠ 1/50 (687.4.3.2)
А если быть более точным, то:
50 > 1 > 1/50 (687.4.3.3)
На приведенных выше примерах мы наглядно увидели, что при столь легкомысленном отношении к умножению на ноль и к делению ноля и возникает проблема деления на ноль.
Ну типа, сначала мы от всех этих бесконечно малых величин вроде 50·0 или 0/50 избавились, чтобы упростить расчет. А когда приходит время делить на 0, то никто уже и не помнит, чего там было в самом начале, в итоге, когда мы любое рациональное число делим на ноль (уравнение (687.1)), то:
r/0 = 0; r/0 = r; r/0 = k; r/0 = ∞ (687.5)
Где k - вот вообще какое угодно число, не равное r. И все эти ответы могут быть правильными! Вот поэтому математики и роботы ругаются при делении на ноль.
На мой взгляд, решить эту проблему достаточно просто, нужно только более четко определить понятия 0 и ∞.
Например, 0 - это не просто 0, а десятичная периодическая дробь, но в конце - единичка, и записывается эта дробь так:
0 = 0.(0)1 (687.6)
Ну то есть в этой дроби получается бесконечное количество нолей после запятой, а потому значение последней цифры уже вроде как и не имеет принципиального значения, ноль это или единица, для стороннего наблюдателя. А вот для расчетов имеет очень большое значение. Потому что вот эта последняя единичка и не позволяет так вольно обращаться с нулем при расчетах.
С бесконечностью примерно такая же ситуация, ее можно выразить как:
∞ = 1/0.(0)1 (687.7)
И если бы разного рода калькуляторы и расчетные программы вместо менторского утверджения типа: "Деление на ноль невозможно" просто выдавали результат: 1/0.(0)1, то это было бы намного лучше. Ну вот хотя бы с чисто психологической точки зрения.
А то детский сад получается, честное слово! "Нельзя!, Невозможно!" Да вы дайте человеку результат, а уж он пусть делает с этим результатом, что захочет.
Ну и один пример расчета из реальной жизни. Так сказать, прикладная математика.
При расчете стержней ферм часто используется метод вырезания узлов. И если у фермы нет консолей, она опирается концами на опоры, то при рассмотрении приопорных стержней фермы и отсутствии распределенной нагрузки на верхний и нижний пояса фермы возникает следующая ситуация:
В рассматриваемом узле действует только одна внешняя сила - опорная реакция А (или В). Исходя из условий равновесия системы сначала определяются сжимающие напряжения в наклонном стержне верхнего пояса. Значение этих напряжений зависит от угла наклона стержня верхнего пояса по отношению к стержню нижнего пояса. Т.е.
Nв.с. = А/sina
а затем определяются растягивающие напряжения в горизонтальном стержне нижнего пояса:
Nн.с. = Nв.с.cosa
Когда нейтральные оси стержней параллельны, более того совпадают в горизонтальной плоскости, то sina = 0, а cosa = 1. А значит и напряжения в этих стержнях равны бесконечности. С одной стороны это очень странно, ну вот как может вполне определенная сила А, приложенная вертикально, вызвать такой беспредел в горизонтальных стержнях?
А оказывается может. Вот просто потому, что она не может одновременно растягивать один стержень и сжимать другой при нулевом угле наклона между стержнями. Тут не только компьютер, тут и человек надолго зависнет, не говоря уже о простой силе.
Вообще-то ответ тут достаточно прост, если угол между стержнями верхнего и нижнего пояса равен 0, то это - не ферма и рассчитывать ее нужно по другой методике, когда в обоих стержнях будет растяжение в нижней зоне сечения и сжатие в верхней зоне сечения.
Но это уже проблема человека, а не компьютера.
И да, тут можно было бы еще порассуждать на тему абсолютного ноля и абсолютной бесконечности. Ну типа 0 - это просто 0, а вот 0, умноженный на 0, это уже ноль второго порядка, ну или 02. Соответственно абсолютный ноль - это 0∞. С бесконечностью такая же ситуация, т.е. бесконечность - это просто бесконечность (хотя для меня бесконечность - это совсем не просто, более того, я до сих пор эту самую бесконечность осмыслить не могу), а бесконечность, умноженная на бесконечность это уже бесконечность второго порядка. Соотвественно абсолютная бесконечность это бесконечность в бесконечной степени. А чего стесняться? Ведь это для нас ∞ = ∞∞, а для бесконечности все может быть далеко не так... |