Ни одна программа, которая чуть сложнее, чем Hello World, не обходится без условных операторов типа if…else. И когда их достаточно много, да ещё они вложены друг в друга, то можно легко в них заблудиться и допустить труднонаходимую ошибку, которую не увидит компилятор (интерпретатор). Приведу один из примеров. Пример будет на JavaScript, но он точно также подходит и для С/С++ и других подобных языков, ну а по сути вообще не привязан к языку. Этот пример будет работать не так, как, возможно, ожидал программист. Дело в том, что сбивают с толку отступы - создаётся ощущение, что else относится к первому if, хотя на самом деле оно относится ко второму (вложенному). То есть отступы выставлены неправильно. Правильно было бы так: Хотя синтаксически первый вариант тоже правильный. Второй вариант будет более правильный с точки зрения логики, и программа становится более понятной. Правда, при этом она незаметно потеряла первоначальный смысл - вывод сообщения, если х не равен 2, по-прежнему не раб