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

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

Составить программу для табуляции функции вида

,

где аргументы х и у изменяются одновременно (синхронно): х = -5 (1) 5; у = -20 (4) 20.

2.4.1.3. Программа

Ниже представлена программа табулирования функции с использованием цикла for:

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

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

//Цикл с одновременноменяющимися параметрами

//Вариант 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, fxy;

// Ввод значений для переменных х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 << " Та6лица значений функции у = f (х,y) " << endl

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

<< " | х | y | у = f (х,y) |" << endl

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

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

y = yn;//Начальное значение для синхронной переменной y

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

{

if (x==0) continue; //Исключаем особую точку

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

fxy=pow((x*x+y*y)/fabs(sin(x*y)), 1.0/5.0);

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

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

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

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

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

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

cout << " " << setw(4) << "fxy = " << setw(10) <<fxy << " I " << endl;

y = y + dy;//подготовка значения синхронной переменной y для следующего

//цикла

}

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

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

getch();

return 0;

}

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

2.4.2. Задание 2. Вложенные цвп

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

Задание заключается в составлении программы, содержащей вложенные циклы, которая рассчитывает и выводит на экран таблицу функции двух переменных f(х,у) при x = xнач (Dx) xкон и y = yнач (Dy) yкон.

Замечание: аргументы х и у являются вложенными, не путать со случаем когда аргументы функции изменяются одновременно (синхронно).

Примечание. Запись вида z = zнач (Dz) zкон означает, что переменная z изменяется от zнач до zкон с шагом Dz.

Результаты вычислений следует представить в виде таблицы с шапкой и делением на графы. Если некоторые из значений f(x,y) оказываются неопределенными (например, возникает деление на нуль или аргументы элементарных функций, входящих f(x,y), выходят за допустимые пределы), то следует воспользоваться оператором continue и исключить эту особую точку из расчетов.

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

Таблица 9.3

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

Вид функции

Аргумент x

Аргумент y

1

x = 0 (0,1) 0,5

y = 0,1 (0,05) 0,75

2

x = 0 (0,1) 0,5

y = -1 (0,2) +1

3

х = 0 (0,25) 2

у = 0 (0,1) 1

4

х = -1 (0,25) + 1

у = 0 (0,1) 2

5

х = 0 (0,25) 2

у = -0,5 (0,1) + 0,5

6

х = 1 (1) 5

у = 0 (0,25) 2

7

х = -1 (0,25) 1

у = -1 (0,1) 1

8

х = -1 (0,25) 1

у = 0 (0,2) 2

9

х = -1 (0,2) 1

у = 0 (1) 10

10

х = -1 (0,2) + 1

у = -1 (0,1) 1

11

х = 0 (/10) 

у = -0 (/10) 

12

х = 0 (/5) 2

у = - (/10) 

13

х = 0(0,5)5;

у = -1(1)3.

14

х = 0 (/10) 2

у = 0 (/3) 2

15

х = -1(0,2)1;

у = -2(0,5)2.

16

х = 0 (/8) 

у = 0 (/16) 

17

х = - (/4) 

у = -2 (/4) 2

18

х= 1 (0,1) 2

у = -2 (0,5) 2

19

х= 1 (0,1) 2

у = -2 (0,5) 2

20

х = - (/4) 

у = -2 (/4) 2

21

х = 0 (0,1) 1

у = -3 (0,5) 3

22

х = 0 (0,2) 2

у = -5 (1) 5

23

х= 0 (0,1) 1

у = 1 (0,1) 2,5

24

х = 0 (0,1) 1

у = -3 (0,5) 3

25

х = 0 (0,25) 2

у = -0,5 (0,1) + 0,5

26

х = 0 (0,25) 2

у = -0,5 (0,1) + 0,5

27

х = 0 (0,25) 2

у = -0,5 (0,1) + 0,5

28

х = - (/4) 

у = -2 (/4) 2

29

х= 1 (0,1) 2

у = -2 (0,5) 2

30

х = 0 (0,1) 1

у = -3 (0,5) 3