лабы для 28 варианта / Лабораторная работа№2
.docxСанкт-Петербургский государственный университет телекоммуникаций им. проф. М.А. Бонч-Бруевича
ПРОГРАММИРОВАНИЕ
Отчёт по Лабораторной Работе №2
тема: программирование разветвляющихся процессов
Санкт-Петербург 2020
Постановка задачи(28 вариант)
Требуется составить программу вычисления значения следующей функции:
для заданного значения аргумента “x” и выполнить вычисления на компьютере.
Таблица идентификаторов
Обозначение в задаче |
Идентификатор |
Назначение |
X |
x |
Аргумент функции |
Y |
y |
Значение функции |
Схема алгоритма
Контрольный расчет
Для тестирования необходимо подготовить четыре теста. Количество тестов определяется числом расчетных формул.
Для проверки первой формулы (ветви) функции y = f(x) выбираем контрольный набор данных: x = 10, а для проверки второй, третьей и четвертой ветвей выберем соответственно x = 1, x = -2 и x = -5.
Результаты вычислений соответствующих значений функции y = f(x) приведены ниже в таблице вычислений.
Назначение набора данных |
Набор данных |
Результаты вычислений |
|
ручных |
Машинных |
||
x |
y |
y |
|
Контрольный |
10 |
0 |
0.00 |
1 |
0.84 |
0.84 |
|
-2 |
0 |
0.00 |
|
-5 |
9 |
9 |
|
Рабочий |
6.9 |
- |
0.00 |
Программа на языке Си
#include<stdio.h>
#include<conio.h>
#include<math.h>
int main(void)
{
float x, y;
printf("x=");
scanf("%f", &x);
if(x >=M_PI)
y = 0;
else if(x >=0)
y = sin(x);
else if(x >=-2)
y = 0;
else
y = (x+2)*(x+2);
printf("y=%6.2f\n", y);
getch();
return 0;
}
Выводы
Тот факт, что результаты контрольных расчетов, выполненных вручную, достаточно совпадают с результатами контрольных расчетов, выполненных на ЭВМ, свидетельствуют о том, что программа составлена правильно.