Добавил:
... Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
Скачиваний:
0
Добавлен:
25.06.2024
Размер:
355.42 Кб
Скачать

Лабораторная работа №5

Тема: Разработка программ с использованием функций.

Цель: Разработка программ с использованием функций.

Задание:

5.2. Составить программу согласно задания 4.3 и выполнить ее в среде программирования. При разработке программы для выполнения задач согласно пунктов (b) и (c) использовать функции.

Задание 5.2(11)

ArrX()

x = a + i*h

x

Рисунок 1.1 – Блок схема функции ArrX()

ArrY()

y = (ArrX(i)*ArrX(i)*ArrX(i))/(cos(ArrX(i)))

y

Рисунок 1.2 – Блок схема функции ArrY()

yMin()

i=0; i<=n; i++

+

-

ArrY(i) < yMin

yMin = i

yMin

Рисунок 1.3 – Блок схема функции yMin()

Конец

i=0; i<=n; i++

yMax

yMax()

-

+

ArrY(i) > yMax

yMax = i

Рисунок 1.4 – Блок схема функции yMax()

i=0; i<=n; i++

Sum()

ySum += ArrY(i)

ySum

Рисунок 1.5 – Блок схема функции Sum()

Sr()

ySr=ySum/(n+1)

ySr

Рисунок 1.6 – Блок схема функции Sr()

Начало

Ввод: a, b, h

Вывод: ”a=”,”b=”,”h=”

-

+

b<a||h>(b-a)

Вывести: “bug!”

n=(b-a)/h

Вывод: "x[" << n << "] = {"

i=0; i<=n; i++

ArrX()

Вывод: ArrX(i) << ", "

Вывод: "}" y[i] << ", ";

Вывод: "y[" << n << "] = {"

A

i=0; i<=n; i++

A

ArrY()

abs(ArrY(i)-2)>0.001

-

+

Вывод: ArrY(i) << ", ";

Вывод: “}”

yMin()

Вывод: "yMin = " << ArrY(Min()) << " npu x = " << ArrX(Min())

yMax()

Вывод: "yMax = " << ArrY(Max()) << " npu x = " << ArrX(Max())

Sum()

B

B

Вывод: "Sum = " << Sum()

Sr()

Вывод: "Sr = " << Sr()

Рисунок 1.7 – Блок схема программы

Конец

Листинг 1 – Фрагмент программы.

#include <iostream>

#include <cmath>

using namespace std;

int a, b, h, n;

float x, y, yMin, yMinX, yMax, yMaxX, ySum, ySr;

int ArrX(int);

float ArrY(int);

float Min();

float Max();

float Sum();

float Sr();

int main()

{

cout<<"a=";

cin>>a;

cout<<"b=";

cin>>b;

cout<<"h=";

cin>>h;

if(b<a||h>(b-a)) cout<<"bug!";

else{n=(b-a)/h;

cout << "x[" << n << "] = {";

for (int i=0; i<=n; i++){

cout << ArrX(i) << ", ";}

cout << "}\n";

cout << "y[" << n << "] = {";

for (int i=0; i<=n; i++){

if(abs(ArrX(i)-2)>0.001){

cout << ArrY(i) << ", ";}}

cout << "}\n";

cout << "yMin = " << ArrY(Min()) << " npu x = " << ArrX(Min()) << endl;

cout << "yMax = " << ArrY(Max()) << " npu x = " << ArrX(Max()) << endl;

cout << "Sum = " << Sum() << endl;

cout << "Sr = " << Sr() << endl;

return 0;

}}

int ArrX(int i)

{

x = a + i*h;

return x;

}

float ArrY(int i)

{

y = (ArrX(i)*ArrX(i)*ArrX(i))/(cos(ArrX(i)));

return y;

}

float Min()

{

for (int i=0; i<=n; i++){

if (ArrY(i) < yMin){

yMin = i;}}

return yMin;

}

float Max()

{

for (int i=0; i<=n; i++){

if (ArrY(i) > yMax){

yMax = i;}}

return yMax;

}

float Sum()

{

for (int i=0; i<=n; i++){

ySum += ArrY(i);}

return ySum;

}

float Sr()

{

ySr=ySum/(n+1);

return ySr;

}

Рисунок 1.8 – Результаты выполнения программы.

Вывод: Я научился создавать функции.

141.1361.11.05

Зм.

Аркуш

№ документа

Підпис

Дата

Літ.

Аркуш

Аркушів

Студент

У

1

9

НУК

ім. адм. Макарова

Викладач

Павленко А.Ю.

Соседние файлы в папке Інформатика