ПРАКТИКУМ
по EXCEL 2007
Логические выражения и условные функции EXCEL
Логические выражения используются для записи условий, в которых сравниваются
числа, функции, формулы, текстовые или логические значения. Любое логическое
выражение должно содержать по крайней мере один оператор сравнения, который
определяет отношение между элементами логического выражения. Ниже представлен
список операторов сравнения Excel:
= Равно
> Больше
< Меньше
>= Больше или равно
<= Меньше или равно
<> Не равно
Результатом логического выражения является логическое значение:
ИСТИНА (1) или ЛОЖЬ (0).
Функция ЕСЛИ имеет следующий синтаксис:
=ЕСЛИ(логическое_выражение;значение_если_истина;значение_если_ложь)
Логическое выражение обычно состоит из адресов ячеек, чисел и операторов
сравнения.
Упражнение для самостоятельной работы.
1. Откройте Microsoft Office Excel 2007.
2. Самостоятельно заполните таблицы и выполните примеры используя логические
выражения.
Пример 1. Во время обучения студент должен выполнять контрольные работы. Если
все работы сданы и среднее значение больше или равно 4, то он получает зачет
автоматически.
Заполните электронную таблицу по образцу. В ячейке I2 введите формулу для
получения Итога.
Формула примет вид:
=ЕСЛИ(H2>=4;"Зачет";"Не зачет")
Формулу можно составить вручную или выполнить по алгоритму:
1. Выделите ячейку I2, выберите вкладку Формулы в группе Библиотека функций
команду Вставить функцию. Затем в появившемся окне диалога Мастер функций –
шаг 1 из 2 выберите Категорию: Логические, Выберите Функцию: ЕСЛИ,
нажмите ОК.
2. В появившемся окне Аргумент функции заполните поля:
Лог_выражение: H2>=4
Значение_если_истина: Зачет
Значение_если_ложь: Не зачет
Как показано на образце, нажмите ОК, в ячейке I2 появиться результат Зачет.
3. Скопируйте формулу до ячейки I4. В результате Иванов и Сидоров получили Зачет, а
Петров Не зачет.
Функции И, ИЛИ позволяют создавать сложные логические выражения.
=И(логическое_значение1;логическое_значение2…)
=ИЛИ(логическое_значение1;логическое_значение2…)
Пример 2. Во время обучения студент должен выполнять контрольные работы и не
пропускать занятия. Если все работы сданы и среднее значение больше 4, и нет
пропусков, то он получает зачет автоматически.
Заполните электронную таблицу по образцу. В ячейке I2 введите формулу для
получения Итога.
Формула примет вид:
=ЕСЛИ(И(H2>4;G2=0);"Зачет";"Не зачет")
Формулу можно составить вручную или выполнить по алгоритму:
1. Выделите ячейку I2, выберите вкладку Формулы в группе Библиотека функций
команду Вставить функцию. Затем в появившемся окне диалога Мастер функций –
шаг 1 из 2 выберите Категорию: Логические, Выберите Функцию: ЕСЛИ,
нажмите ОК.
2. В появившемся окне Аргумент функции заполните поля:
Лог_выражение: И(H2>4;G2=0)
Значение_если_истина: Зачет
Значение_если_ложь: Не зачет
Как показано на образце, нажмите ОК, в ячейке I2 появиться результат Не зачет.
3. Скопируйте формулу до ячейки I4. В результате Иванов и Сидоров получили Не
зачет, а Петров Зачет.
Не смотря на то, что функция ИЛИ имеет те же аргументы, что и И, результаты
получаются совершенно разные.
Измените в предыдущей формуле функцию И на ИЛИ, и студент получит зачет, если
выполняется хотя бы одно из условий (средний балл более 4 или нет пропусков занятий).
Таким образом, функция ИЛИ даст значение ИСТИНА, если хотя бы одно из
логических выражений истинно, а функция И даст значение ИСТИНА, только если все
логические выражения истинны.
Вложенные функции ЕСЛИ
Иногда бывает очень трудно решить логическую задачу только с помощью операторов
сравнения и функций И, ИЛИ. В этих случаях можно использовать вложенные функции
ЕСЛИ.
Пример 3. Во время сдачи зачета студент должен выполнить тест. Тест состоит из 25
вопросов. Для оценивания на «Отлично» надо ответить правильно на 23 вопроса, на
«Хорошо» 17, на «Удовлетворительно» 12, меньше 12 результат «Плохо».
Заполните электронную таблицу по образцу. В ячейке D2 введите формулу для
получения Итога.
Формула примет вид:
=ЕСЛИ(C2<12;"Плохо";ЕСЛИ(C2<17;"Удовлетворительно";ЕСЛИ(C2<23;"Хорошо";"Отлично")))
Формулу можно составить вручную или выполнить по алгоритму:
1. Выделите ячейку D2, выберите вкладку Формулы в группе Библиотека функций
команду Вставить функцию. Затем в появившемся окне диалога Мастер
функций — шаг 1 из 2 выберите Категорию: Логические, Выберите Функцию:
ЕСЛИ, нажмите ОК.
2. В появившемся окне Аргументы функции заполните поля:
Лог_выражение: C2<12
Значение_если_истина: Плохо
Для Значение_если_ложь, чтобы вложить еще одну функцию ЕСЛИ нажмите в поле
ИМЯ на надпись ЕСЛИ как показано на образце.
Появится следующее окно Аргументы функции заполните поля:
Лог_выражение: C2<17
Значение_если_истина: Удовлетворительно
как показано на образце.
Для Значение_если_ложь, надо вложить еще функцию ЕСЛИ.
Появится следующее окно Аргументы функции заполните поля:
Лог_выражение: C2<23
Значение_если_истина: Хорошо
Значение_если_ложь: Отлично
как показано на образце и нажмите ОК.
В ячейке D2 появиться результат «Плохо».
Скопируйте формулу с ячейки D2 до ячейки D8.
В результате Зотов — Плохо.
Котов, Попов — Удовлетворительно.
Козлов, Сидоров — Хорошо.
Иванов, Петров — Отлично.
Задание для контроля
Задача 1.
При сдачи вступительных экзаменов, абитуриенту надо набрать проходной балл не
ниже 13 для зачисления на первый курс.
Заполните таблицу по образцу, в столбце «Зачислен» введите логическое выражение,
так чтобы напротив фамилии было либо «да» либо «нет».
Проходной балл: 13
Фамилия Физика Химия Биология Сумма Зачислен
Иванов 4 5 4 13
Малышев 5 4 5 14
Петров 3 5 5 13
Сидоров 3 5 4 12
Соколов 5 4 3 12
Федоров 5 5 5 15
В результате напротив фамилий:
Иванов, Малышев, Петров, Федоров - «да».
Сидоров, Соколов - «нет».
Задача 2.
Если проехать на автобусе не больше 5 остановок, то надо заплатить 10 руб, если не
больше 10 остановок 20 руб, если больше 10 остановок, то 30 руб.
Заполните таблицу по образцу, в столбце «Заплатил» введите логическое выражение,
так чтобы напротив фамилии была показана стоимость поездки.
Фамилия Остановок Заплатил
Иванов 4
Малышев 12
Петров 6
Сидоров 5
Соколов 9
Федоров 8
В результате напротив фамилий:
Иванов, Сидоров - оплата проезда составит 10 руб.
Петров, Соколов, Федоров - оплата проезда составит 20 руб.
Малышев - оплата проезда составит 30 руб.