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

2. Задание

2.1. Изучить теоретические сведения.

2.1.1. Изучить понятие итерационного циклического вычислительного процесса.

2.1.2. Изучить правила накопления сумм и произведений в цикле.

2.1.3. Изучить понятие рекуррентной формулы и ее использование в циклических вычислениях

2.1.4. Изучить методику вывода рекуррентных формул.

2.1.5. Изучить методику уточнения корней алгебраических и трансцендентных уравнений методом итераций.

2.1.6. Изучить средства языка С++ для реализации ИЦВП.

2.2. Разобрать и выполнить примеры к данной лабораторной работе.

2.3. Написать и отладить восемь программ на языке С++.

2.4. Задания для выполнения на занятиях

2.4.1. Задание 1. Накопление сумм в цикле

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

Составить программу для вычисления суммы (табл. 8.8) .

Результаты и исходные данные вывести на экран дисплея.

Таблица 8.8

Варианты заданий

Сумма

Произведение

1

2

3

4

5

6

7

8

9

10

11

12

13

14

15

16

17

18

19

20

21

22

23

24

25

26

27

28

29

30

2.4.1.2. Пример

Составить программу для вычисления суммы вида

где х = 0,534; k = 0,9; n = 20.

2.4.1.3. Программа

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

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

//Накопление сумм в цикле

//Вариант 30

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

// 10.04.2012

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

# include <stdio.h>

# include <conio.h>

#include <iostream.h>

# include <math.h>

int main()

{

int i, n;

// i - счетчик членов ряда

// n - число членов ряда

float x, k, s, y;

// s - сумма членов ряда

// y - очередное слагаемое суммы

// k - коэффициент

cout << "Введите x, k, n :" << endl;

cin >>x >> k >> n;

s=0;

for (i=1; i<=n; i+=1)

{

y = pow(x, i); // можно заменить одним

s = s + y; // оператором s = s + pow(x, i);

}

s = s*k;

/* вывод результата */

cout << "\n Результаты решения:" << endl;

cout << " Значение x = " << x << endl;

cout << " Число членов ряда n = " << n << endl;

cout << " Коэффициент k = " << k << endl;

cout << " Значение суммы S = " << s << endl;

getch();

return 0;

}

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

2.4.2. Задание 2. Вычисление произведений в цикле

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

Составить программу для вычисления произведения (табл. 8.8).

Результаты и исходные данные вывести на экран дисплея.

2.4.2.2. Пример 8.4

Вычислить значение функции

Расчеты провести для n = 20 и  = 0,75.

2.4.2.3. Программа

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

//Задание 8-2k

//Накопление произведений в цикле

//Вариант 30

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

// 10.04.2012

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

# include <stdio.h>

# include <conio.h>

#include <iostream.h>

# include <math.h>

int main()

{

int i, n;

// i - счетчик членов ряда

// n - число членов ряда

float alpha, beta, y;

// alpha - произведение членов ряда

// y - очередной сомножитель произведения

// beta- коэффициент

cout << "Введите beta, n:" << endl;

cin >> beta >> n;

alpha = 1;

for (i=1; i<=n; i+=1)

{

y = (n + i)/i; // Можно заменить одним

alpha = alpha * y; // оператором alpha = alpha *(n + i)/i;

}

alpha = alpha* beta;

/* вывод результата */

cout << "\n Результаты решения:" << endl;

cout << " Число членов ряда n = " << n << endl;

cout << " Коэффициент beta = " << beta << endl;

cout << " Значение произведения alpha = " << alpha << endl;

getch();

return 0;

}