Задать вопрос
Пользователь пока ничего не рассказал о себе

Наибольший вклад в теги

Все теги (2)

Лучшие ответы пользователя

Все ответы (1)
  • 6/2(1+2) =? (простой вопрос по школьной программе)

    @Why_Me
    Поставлю точку что ли. Проблема вытекает из математической неточности при записи деления "в столбик" при использовании горизонтальной черты. Ведь если в примере переписать 6 в числителе, а всё остальное в знаменателе - сомнений ни у кого не возникнет. Ответ будет однозначно 1 и это будет правильный ответ.

    Теперь, допустим, перед нами задача запихнуть наш пример в строку. Очевидно что для компутера не существует никаких вертикальных черт. Также допустим что мы не очень внимательны и просто тупо заменяем черту делением, т.е. "/" или "*" в зависимости от парсера. Считаем в любом калькуляторе и с некоторой вероятностью (в зависимости от ответа на вопрос топика разрабочиком калькулятора) получаем 9. И это тоже правильный ответ.

    Получаем 2 разных правильных результата для, как мы уверены, идентичного выражения. И проблема собственно в том, выражения в этих случаях нифига не идентичны. Напоминаю про порядок операций: скобки, умножение(то же самое что и деление), сумма. И вот когда мы пишем дробь с вертикальной чертой, на числитель и знаменатель неявно накладываются скобки, а между ними ставится знак деления. И вот про знак деления почему-то все помнят, когда избавляются от черты, а про скобки забывают. Либо намеренно вкладывают в "слеш" смысл вертикальной черты. Но единого стандарта по слешу нет, кто-то интерпретирует его как знак деления, а кто-то как знак деления со скобками для числителя со знаменателем. Проблему ещё создает то, что иногда они взаимозаменяемы, но это не общий случай, о чем многие забывают.

    Иными словами:
    1) a/b != a:b
    2) a/b == (a):(b)
    Из чего кстати следует что 2*2+2 != (2)*(2+2).
    Ответ написан
    1 комментарий