http://www.sendspace.com/file/a8l80j (65 Кб)
Формула:
Код
=IF(B5:B9<12;2;IF(B5:B9<16;3;IF(B5:B9<20;4;5)))
Логика та же, что и в первой задаче: в условном операторе сравнивается количество набранных студентом баллов с пороговым значением для оценки «2», если баллов меньше, то ставится двойка, в противном случае — сравнение с порогом для «3» и т.д.
Так как, условный оператор, по сути, приводит к разветвлению, то, например переход сразу после сравнения с двойкой к сравнению с четверкой невозможен. Выполнение каждого последующего условного оператора осуществляется ТОЛЬКО в случае ложного результата сравнения во всех предыдущих операторах, т.е., чтобы произощло сравнение с четверкой, необходимо выяснить, что количество баллов больше, чем необходимо как для двойки, так и для тройки.
Замечание: В приведенной формуле оценка 12 — это «2»; 16 — «3»; 20 — «4». Чтобы «3» ставилась уже при 12 баллах, а «4» — с 16, нужно в формуле уменьшить все пороговые значения на единицу.

Это происходит из-за того, что в программе операция сравнения «<» (меньше) означает то, что в цивилизованном мире обозначает операция «<=» (меньше либо равно). Эта фича остается на совести разработчиков. (в Excel может быть по другому и менять ничего не придется.)

/* вытирает окровавленный скальпель, нажимает кнопочку */
Следующий ...