Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
ЛР9-С++-17-апреля-2012.doc
Скачиваний:
28
Добавлен:
15.09.2019
Размер:
1.15 Mб
Скачать

2.5.1.2. Пример для варианта 30

Составить программу для табуляции функции двух переменных f(х,у) вида

,

содержащей вложенные циклы, при х = -2 (1) 2; у = -10 (5) 10 и z = -4 (2) 4.

2.5.1.3. Программа

//Лабораторная работа № 9

//Задание 9-1d

//Вложенный цикл для трех параметров

//Вариант 30

//Автор Петрова Мария гр. ИНФО-101

// 16.04.2012

//= = = = = = = = = = = = == = = = == = = = ==

#include <conio.h> // подключение библиотеки функций ввода-вывода

#include <iostream.h> // подключение библиотеки потокового ввода-вывода

#include <math.h> // подключение библиотеки математических функций

#include <iomanip.h> // подключение библиотеки средств манипулирования потоками

int main ()

{

// Объявление переменных

float x, xn, xk, dx, y, yn, yk, dy, z, zn, zk, dz, bxyz;

// Ввод значений для переменных хn, xk, dx, yn, yk, dy

cout << "Bвeдите хn: " , cin >> xn;

cout << "Введите xk: ", cin >> xk;

cout << "Bвeдите шаг dx: ", cin >> dx;

cout << "Bвeдите yn: " , cin >> yn;

cout << "Введите yk: ", cin >> yk;

cout << "Bвeдите шаг dy: ", cin >> dy;

cout << "Bвeдите zn: " , cin >> zn;

cout << "Введите zk: ", cin >> zk;

cout << "Bвeдите шаг dz ", cin >> dz;

// вывод заголовка и шапки таблицы

cout << " Та6лица значений функции b = f (х,y,z) " << endl

<< " |------------------------------------------------------------------|" << endl

<< " | х | y | z | b = f(х,y,z) |" << endl

<< " |-------------|------------|------------|--------------------------|" << endl;

// Табуляция функции b = f(x,y,z)

for(x=xn;x<=xk;x+=dx)

{

for(y=yn;y<=yk;y+=dy)

{

for(z=zn;z<=zk;z+=dz)

{

if (y ==0) continue;

// Вычисление значения функции fxy

bxyz=(sin(x)+sqrt(fabs(z-y)))/(y+(x-2)+x*x);

// Вывод очередной строки таблицы

// Вывод аргумента x

cout << " I " << "x= "<< setw(3) << x << setw(7) << " I ";

// Вывод аргумента y

cout << "y= "<< setw(4) << y << " I ";

// Вывод аргумента z

cout << "z= "<< setw(4) << z << " I ";

// Вывод значения функции bxyz

cout << " " << setw(4) << "f(x,y,z) = " << setw(10)<<bxyz << " I " << endl;

}//Конец цикла по z

}//Конец цикла по y

}//Конец цикла по x

cout << " |-------------|------------|------------|--------------------------|" << endl;

cout << "Нажмите любую клавишу..." ;

getch();

return 0;

}

2.5.1.4. Тестирование

………………………………………………………………………………………….

2.5.2. Задание 2. Двойной вложенный цикл

2.5.2.1. Условие задания

Вывести на экран таблицу значений функции y(x) для x, изменяющегося от a = 0,1 до b = 1,2 с шагом h = 0,1.

Варианты задания приведены в табл. 9.6. Вариант соответствует номеру в журнале группы.

Таблица 9.6

Индивидуальные варианты задания

Вид функции

k

Вид функции

n

1

20

16

25

2

15

17

20

3

20

18

15

4

16

19

20

5

20

20

18

6

15

21

20

7

20

22

16

8

12

23

20

9

20

24

14

10

16

25

20

11

20

26

20

12

12

27

18

13

20

28

20

14

16

29

20

15

20

30

18

31

20