- •Лекции по курсу «Информатика» Раздел «программирование обработки данных в электронных таблицах» Тема «Программирование решений»
- •Логические Функции. Алгебра логики
- •Принятие решения в формулах
- •I. Простые логические условия
- •II. Сложные логические условия
- •III. Логическая функция если для принятия решения
- •IV. Вложенная функция если
III. Логическая функция если для принятия решения
Пример 3.1. Продолжим пример 1.2. Введем в ячейку E2 формулу
=ЕСЛИ(A2>A1; A2; A1).
В ячейке Е2 будет выведено значение, если ложь (значение в ячейке А1). Какие результаты выполнения функции ЕСЛИ() при других данных в ячейке A2? Если поверяемое логическое условие A2>A1 имеет значение ИСТИНА, то в ячейке Е2 выводится значение, если истина (A2), иначе выводится значение, если ложь (A1).
Пример 3.2. Продолжим пример 1.3. Ввести в ячейку F1 текст: “Значение x является корнем функции f(x)”, а в ячейку F2 текст: “Значение f(x) не равно нулю”. В ячейку Е4 ввести формулу
=ЕСЛИ(ABS(A4)<=C4); F1;F2)
В ячейке E4 будет выведено значение, если истина (текст, введенный в ячейку F1). Какие результаты выполнения функции ЕСЛИ() при других данных в ячейке A4? Если поверяемое логическое условие =ABS(A4)<=C4 имеет значение ИСТИНА, то в ячейке E4 выводится значение, если истина (текст, введенный в ячейку F1), иначе выводится значение, если ложь (текст, введенный в ячейку F2).
Пример 3.3. Продолжим пример 2.3. Ввести в ячейку F3 текст: “Имеется корень (Да)”, а в ячейку F5 текст: “Корня нет (Нет)”. В ячейку F6 ввести формулу
=ЕСЛИ(И(В5*В6<0;C5*C6>0); F3;F5)
В ячейке F6 будет выведено значение, если истина (текст, введенный в ячейку F3). Какие результаты выполнения функции ЕСЛИ() при других данных в ячейках B5,B6 и C5,C6? A4? Если поверяемое логическое условие И(В5*В6<0;C5*C6>0) имеет значение ИСТИНА, то в ячейке F6 выводится значение, если истина (текст, введенный в ячейку F3), иначе выводится значение, если ложь (текст, введенный в ячейку F5).
В аргументе функции ЕСЛИ() можно непосредственно ввести в качестве значение, если истина и значение, если ложь текстовую константу в кавычках, например, “Да”, “Нет”.
IV. Вложенная функция если
Логическое выражение функции ЕСЛИ(логическое выражение; значение, если истина; значение, если ложь) можно расширить за счет вложенной функции ЕСЛИ() вместо аргумента значение, если ложь. Функция ЕСЛИ() с двумя вложенными функциями ЕСЛИ(), в которой проверяется два логических условия, имеет вид:
ЕСЛИ(логическое условие1; значение, если истина;
ЕСЛИ(логическое условие2; значение, если истина; значение, если ложь))
Структура функции ЕСЛИ() с вложениями соответствует варианту «выбор‑иначе» базовой структур «ветвление».
Пример 4.1. Составить логическое выражение для вычисления в электронной таблице значения функции y(x), заданной в виде
y=
Числовые значения величин x и a введены в ячейки А7 и В7, соответственно
Для программирования решения задачи применим функцию ЕСЛИ() с вложением. Введем в ячейку С7 логическое выражение вида (рис.2.1).
=ЕСЛИ (А7>B7; A7*СТЕПЕНЬ(A7-B7;1/3);
ЕСЛИ (A7<B7;EXP(-B7*A7)*COS(B7*A7); A7*SIN(B7*A7)
В основной функции ЕСЛИ проверяется логическое условие А7>B7. Если проверяемое условие имеет значение ИСТИНА, то вычисляется значение y по первой ветви (значение возвращается в ячейку С7) и управление передается на конец логического выражения. Если проверяемое условие А7>B7 имеет значение ЛОЖЬ, то проверяется логическое условие A7<B7 во вложенной функции ЕСЛИ. Если проверяемое условие имеет значение ИСТИНА, то вычисляется значение y по третьей ветви (значение возвращается в ячейку С7) и управление передается на конец логического выражения, иначе вычисляется значение y по второй ветви (значение возвращается в ячейку С7), что соответствует логическому условию A7=B7. Таким образом применение логического выражения с функцией ЕСЛИ с вложениями позволило создать программу вычислений для электронной таблицы, в которой после выполнения логического условия в одной из ветвей вычисляется значение функции в этой ветви и управление передается на конец выражения без проверки выполнения других логических условий.
При вводе формулы в ячейку С7 следует руководствоваться следующими рекомендациями.
В вод функции ЕСЛИ производить с помощью диалогового окна Мастер функций.
Первым аргументом функции ЕСЛИ (значение, если ИСТИНА) является вложенная функция СТЕПЕНЬ, которая выбирается в меню вложенных функций. После ввода функции СТЕПЕНЬ для продолжения набора выражения нужно вернуться в окно Аргументы функции ЕСЛИ. Для этого следует щелкнуть на имени функции ЕСЛИ в окне формул.
Вторым аргументом функции ЕСЛИ (значение, если ЛОЖЬ) является вложенная функция ЕСЛИ(), которая также выбирается в меню вложенных функций.
После ввода вложенных функций EXP(), COS(), SIN() нужно возвращаться в окно Аргументы функции вложенной функции ЕСЛИ(), щелкнув по ее имени в строке формул.
Завершать ввод логического выражения рекомендуется в окне Аргументы функции основной функции ЕСЛИ(),которое вызвать, щелкнув по ее имени в строке формул.