Задача (с курса наших пикабушных нубкодеров):
Напишите программу, в которой пользователь вводит с клавиатуры три числа. Программа должна вывести минимальное значение из представленных. При написании кода учитывайте, что числа могут быть одинаковыми. Необходимо писать общее решение для всех случаев.
Задача эта даётся на втором уроке, поэтому следует ожидать, что студенты без опыта программирования знают не больше, чем на этих первых уроках было дано (типы данных, переменные, ввод/вывод, арифметические операции, логический тип данных и условные операторы).
Я три дня придумывал, как найти все возможные комбинации, чтобы потом просто затолкать их в циклы if - else if через логическое умножение. Сначала попробовал записать их чисто по наитию, но что-то да пропускал, из-за чего каждый раз при отправке решения видел ошибку "числа могут быть равны". В конце концов, догадался построить таблицу.
Опираясь на неё, объединил все возможные варианты в пары через вышеупомянутое умножение.
Спустя час ввода и неистового дебага всех описок.
Наконец, курс засчитал верное выполнение.
Посмотрел, как решили другие участники курса, долго истерически ржал и матерился...
И следующая задача. Представляю, если бы я решал её тем же макаром. XD Было бы 300+ строк кода.
Напишите программу, в которой пользователь вводит с клавиатуры 4 числа. Программа должна вывести наибольшее число и наименьшее число.