Простое математическое выражение поставило в тупик американских юзеров

Программист всегда знает последовательность арифметических операций. Не знай он этого, ни одна из его программ, в которой используются арифметические операции, работать не будет. Хороший тест на профпригодность. Не нужно придумывать сложные задачи, простое выражение "6:2(1+3)=?" определит, кто находится перед вами.

Каков вопрос, таков ответ

Программирование - уникальное занятие. Для многих оно является жизнью. В программировании все имеет строго определенное значение. Все конструкции любого языка имеют строгую семантику и точный синтаксис. Это обстоятельство заставляет программиста манипулировать жесткими конструкциями, но таков мир современных информационных технологий. Неопределенности здесь нет, там где есть малейшая неточность, живет баг, то есть ошибка.

Программист на автомате даст точный ответ = 1. Других вариантов нет. Сначала действие внутри скобок, затем вне их и только потом все прочее.

  • 1+2 = 3
  • 2*3 = 6
  • 6:6 = 1

Другого варианта нет.

Сколько юзеров, столько вариантов

Лагерь юзеров очень многогранен.

Есть мудрые и умные.

Есть игроки, есть общительные, есть всякие другие прочие. В данном случае в решении приняли участие две группы американцев. Одна утверждала: правильный ответ - 9, другая склонялась к 1.

Если решать выражение последовательно, то можно действительно получить 9:

  • 6:2 = 3
  • 1+2 = 3
  • 3*3 = 9

Как решать правильно, было показано выше. В программировании всякая последовательность - это четко обозначенный алгоритм.

Эксперимент от пользователя Twitter с ником @iambuterastann четко показал, что хорошие вопросы позволяют получить достоверные ответы, кому быть программистом, а кому остаться по жизни юзером.

Комментарии