Автор работы: Пользователь скрыл имя, 18 Января 2014 в 09:07, лабораторная работа
Условие задачи: Вычислить значение функции F: ....
Найдем ограничения, накладываемые на аргумент х при вычислении функций у и z.
При вычислении знаменатель должен быть отличен от нуля, а подкоренное выражение больше нуля. Т.к. это значение функции у вычисляется при значении , то следовательно значение функции у будет вычислено в любом случае.
Лабораторная работа №1.
РАЗВЕТВЛЯЮЩИЙСЯ ВЫЧИСЛИТЕЛЬНЫЙ ПРОЦЕСС
Вычислить значение функции F:
Найдем ограничения, накладываемые на аргумент х при вычислении функций у и z.
При вычислении знаменатель должен быть отличен от нуля, а подкоренное выражение больше нуля. Т.к. это значение функции у вычисляется при значении , то следовательно значение функции у будет вычислено в любом случае.
При вычислении знаменатель должен быть отличен от нуля, а следовательно и подкоренное выражение не должно быть равно нулю. Выражение равно нулю, если х=-3 или х=5. Значение переменной х не может быть равно 5, т.к. вычисления по этой формуле происходят, когда x<3.
` Т.о., при выполнении вычислений по второй ветви (при x<3) х не должно равняться -3.
3. Таблица внешних спецификаций
№ |
Имя |
Назначение |
Тип |
Ед. из. |
ОДЗ |
1 |
x |
Значение аргумента |
Вещ. |
- |
x¹-3 |
2 |
y |
Значение функции у |
Вещ. |
- |
|
3 |
z |
Значение функции z |
Вещ. |
- |
|
4 |
F |
Значение функции F |
Вещ. |
- |
|
5 |
s1 |
Сообщение |
строка |
- |
|
6 |
s2 |
Сообщение |
Вещ. |
- |
Таблица сообщений
s1: ' Функцию F вычислить нельзя'
s2: ' Значение функции F ='
4.Алгоритмизация
Блок-схема алгоритма
5. Проектирование тестов
Таблица тестов
№ теста |
Исходные данные |
Результаты |
Примечания | ||
N |
x |
y |
z |
F |
|
1 |
-1 |
0 |
3 |
9 |
|
2 |
5 |
0.0028 |
3.5034 |
12.27381 |
|
3 |
-3 |
- |
- |
- |
Функцию F вычислить нельзя |
6. Запись алгоритма на языке Паскаль
program lab1;
var x,y,z,f:real;
begin
write('Введите значение х: ');
readln(x);
if x<>-3 then
begin
if x>=3 then
begin
y:=sqr(cos(5*x*x+2))/sqrt(3*x*
z:=exp(1/3*ln(8*x+3));
end
else
begin
y:=exp(3*x-16)/exp(1/3*ln(sqr(
z:=3*exp((2+4*x)*ln(abs(x)));
end;
F:=y*y+z*z;
writeln('y = ',y:8:4);
writeln('z = ',z:8:4);
writeln('Значение функции F = ',F:10:5);
end
else
writeln('Функцию F вычислить нельзя');
readln;
end.