pin_1206_pribylyh_m.v._laboratornaya_rabota_no2

advertisement
МИНОБРНАУКИ РФ
Федеральное Государственное Бюджетное
Образовательное Учреждение
Высшего профессионального образования
Кафедра программного обеспечения
Лабораторная работа по курсу: Информатика и программирование
Вариант №12
Выполнил: студент группы ПИН-1206
Прибылых Михаил Владимирович
Проверил: Мальков Александр Анатольевич
Тверь 2012 г.
Лабораторная работа №2
Постановка задачи
Разработать алгоритм для вычисления значений функции (разветвляющийся вычислительный
процесс) и реализовать его в Excel
 1
 tg 2 x , x  5


12. y   x 2 , 10  x  20

 205  x , x  40


Реализация задачи
В задаче требуется вычислить функцию, вид которой зависит от значения аргумента. Поэтому
разобьем числовую ось значениями, указанными в формуле на несколько промежутков, указав при
этом, какой должен быть результат вычислений на каждом промежутке:
1
𝑦 =tg2x
НФЗ
НФЗ
𝑦 = 𝑥2
5
10
y=√205 − 𝑥
20
40
При разработке алгоритма будем рассматривать промежутки числовой оси слева направо.
Обозначения в алгоритме: ФНЗ – функция не задана; ФНО – функция не определена.
Записывая основной алгоритм решения задачи, вместо вычислений каждой части функции для
упрощения будем писать блок1, блок2 и блок3. Поставим в соответствие каждому блоку алгоритм
вычисления конкретной функции с учетом её области определения. Последний этап разработки
алгоритма решения исходной задачи – подстановка в основной алгоритм вместо блоков 1,2,3
соответствующих вычислительных алгоритмов.
Сделаем небольшое замечание относительно записи текста алгоритма. Рекомендуется
записывать текст алгоритма «ступеньками», т.е. новый блок «если – иначе» нужно записывать с
отступом относительно предыдущего блока «если – иначе» и т.д. Так же следует поступать и при
записи текста программы, соответствующей алгоритму. Одной из причин этого является то, что
структура алгоритма и программы хорошо просматривается, что может помочь при обнаружении
синтаксических ошибок.
Основной алгоритм:
ввод х
если х<5
блок1
иначе
если x<10
«ФНЗ»
иначе
если x<20
блок2
иначе
если х<=40
«ФНЗ»
иначе
блок3
все_если
все_если
все_если
все_если
Рассмотрим вычисления в каждом из блоков 1, 2 и 3 отдельно.
1
Блок1. Требуется вычислить функцию 𝑦 = 𝑡𝑔2𝑥. Здесь никаких ограничений на вычисления
нет. Таким образом, получаем:
1
𝑦 = 𝑡𝑔2𝑥
печать у
Блок2. Требуется вычислить функцию 𝑦 = 𝑋 2 . Здесь никаких ограничений на вычисления нет.
Таким образом, получаем:
𝑦 = 𝑋2
печать у
Блок3. Требуется вычислить функцию𝑦 = √205 − 𝑥. При вычислении учитываем, что
подкоренное выражение должно быть больше или равно. Таким образом, получаем:
если 205-х>=0
печать у
иначе
«ФНО»
все_если
В основной алгоритм вместо блоков 1,2,3 подставим алгоритмы вычисления соответствующих
частей функции. В итоге получаем алгоритм решения исходной задачи.
ввод х
если х<5
1
𝑦 = 𝑡𝑔2𝑥
печать у
иначе
если x<10
«ФНЗ»
иначе
если x<20
𝑦 = 𝑋2
печать у
иначе
если х<=40
«ФНЗ»
иначе
если 205-х>=0
𝑦 = √205 − 𝑥
печать у
иначе
«ФНО»
все_если
все_если
все_если
все_если
все_если
Для построения функции Excel необходимо использовать логическую функцию ЕСЛИ(),
которая устроена следующим образом.
Эта функция может в качестве аргументов использовать другие функции ЕСЛИ().
Таким образом, при условии, что в ячейке А2 будет вводиться значение переменной х, то в
ячейку В2 можно ввести формулу Excel для вычисления значения заданной функции.
Download