Хабр Курсы для всех
РЕКЛАМА
Практикум, Хекслет, SkyPro, авторские курсы — собрали всех и попросили скидки. Осталось выбрать!
Однако, вопрос о делении на ноль ни разу не относится к числу сложных вопросов, и для меня остается загадкой, почему с ним возникает столько проблем.
Однако, вопрос о делении на ноль ни разу не относится к числу сложных вопросов, и для меня остается загадкой, почему с ним возникает столько проблем.Я думаю, потому, что в курсе математического анализа для обозначения бесконечно малых величин используется символ ноля. И там же рассматривается вопрос деления на бесконечно малые, где повсеместно встречаются разнообразные «деления на ноль». К сожалению, при выходе из школы забывается, что там речь шла о бесконечно малых, в памяти отпечатывается только то, что в начальной школе учителя бесстыдно врали на уроках арифметики и на ноль делить всё же можно, ведь в десятом классе показывали! В качестве аргументов приводятся калькуляторы и IEEE 754.
свойство будет инициализировано в момент создания объекта, а так как тип у него будет число, то инициализировано нулем.Будет ли там сущность, а будет ли момент создания… Ладно, допустим, будет. Кто вам сказал, что числа инициализируются нулем? Даже если не говорить о моем собственном языке, где я могу инициализировать рандомом, в С++ (к примеру) примитивные типы-данные инициализируются тем, что было на в этом месте памяти до создания объекта (то есть мусором).
Я: А теперь, если у нас есть 4 яблока, но мы решили их никому не раздавать, сколько у этого «никого» будет яблок?
Он: Не знаю.
Я: Именно, вопрос о том, сколько яблок будет у «никого» (==0) некорректен при такой постановке задачи. Т.е. посчитать это невозможно в принципе.
делят не на число, а на части
После деления не должно появляться другой размерности в конечном результате.
Детские вопросы обычно очень сложны
Если яблоко разделить на две части, то каждая из частей уже не будет яблоком. Если табуретку разделить на две части, то каждая из частей не будет табуреткой. Можно разделить песок на части, потому что каждая из частей будет песком. Но всё равно — делят на части, а не на число. Можно разделить какое-то свойство предмета на части.
Почему же мы не можем сказать, что 1/x=∞ — есть некоторое число?
Вторая: отказаться от некоторых привычных правил умножения. В частности, от аксиомы 0⋅x=0. Говорят, что это возможно (см. en.wikipedia.org/wiki/Wheel_theory). Разумеется, этот вариант гораздо интереснее первого, но и он представляет собой такое изменение правил игры, которое сразу выводит нас за рамки классической арифметики.
j на ^0^(2*0) * ^0^ = 0 * ^0^ = 12 * (0*^0^) = 2 * 1 = 2мы можем выдумать число «анти ноль» (ну или «гипер ноль», чтобы попонтовее), равное 1/0.
Обозначим его, как "^0^" (такая летучая мышко :)
И проблема решается:
x/0 = x * ^0^.
Почему нельзя делить на ноль, даже если очень хочется?
В частности, с одной стороны должно быть верно соотношение 0⋅∞=1, а с другой стороны поскольку 0=1−1 должно быть выполнено 0⋅∞=1⋅∞−1⋅∞=0. Таким образом, имеем 1=0,
0⋅∞=1
Почему нельзя делить на ноль, даже если очень хочется?