Лб инф передел / C++ / Алиса / Информатика / 2 / two
.docРоссийский государственный гидрометеорологический университет
Кафедра морских информационных систем
Лабораторная работа №2
Разветвляющиеся программы. Циклы
Таблицы значений функции
Вариант №4
Работу выполнила
Студентка группы ИС-147
Зорина А.А.
Работу принял
Доцент кафедры МИС
Неклюдова С.А.
СПб
2013
1). Условие задачи
Вычислить и вывести на экран в виде таблицы значения функции F на интервале от Хнач до Хкон с шагом dХ
где a,b,c – действительные числа
Функция F должна принимать действительное значение, если выражение Ац ИЛИ Вц ИЛИ Сц
не равно нулю, и целое значение в противном случае. Через Ац, Вц и Сц обозначены целые части значений a,b,c, операция ИЛИ – поразрядная. Значения a,b,c Хнач, Хкон, dХ ввести с клавиатуры.
2). Таблица имён
Имя в задаче. |
Имя в программе. |
Тип данного. |
Содержательный смысл. |
a |
A |
Вещ. |
Исходное данное |
b |
B |
Вещ. |
Исходное данное |
c |
C |
Вещ. |
Исходное данное |
x |
X |
Вещ. |
Исходное данное |
z1 |
Вещ. |
Расчётная переменная |
|
z2 |
Вещ. |
Расчётная переменная |
3
4).Трассировочная таблица
№ |
№ блока |
Результат вычислений |
1 |
1 |
Ввод a=30 |
2 |
2 |
|
3 |
3 |
|
4 |
4 |
Вывод |
5 |
5 |
Конец |
5). Код программы
#include <iostream>
#include <math.h>
int main()
{
using namespace std;
double a,z1,z2;
cout <<"a=";
cin >> a;
z1=(sin(2*a)+sin(5*a)-sin(3*a))/(cos(a)-cos(3*a)+cos(5*a));
z2=sin(3*a)/cos(3*a);
cout<<"z1="<<z1;
cout ("\n");
cout<<"z2="<<z2;
system("pause");
return 0;
}
6). Результаты и выводы
Так как результат трассировки совпадает с результатом выполнения программы, алгоритм разработан верно.