Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
Навроцкий, А. А. Основы_алгоритм_Программир_в_среде_VISUAL C++_Лаб_практикум_1_2_курсы_заоч.pdf
Скачиваний:
126
Добавлен:
16.03.2016
Размер:
1.06 Mб
Скачать

Лабораторная работа №3 ПРОГРАММИРОВАНИЕ ЦИКЛИЧЕСКИХ АЛГОРИТМОВ

3.1. Оператор цикла с параметром for

Общий вид оператора:

for (инициализирующее_выражение; условие; инкрементирующее_выражение)

{

Инициализирующее_выражение выполняется только одинРраз в начале выполнения цикла и, как правило, инициализирует счетчик цикла.

тело цикла;

}

Условие содержит операцию отношения, которая выполняется в начале

каждого цикла. Если условие равно true (1), то цикл повторяется, иначе вы-

полняется следующий за телом цикла оператор.

 

И

Инкрементирующее_выражение, как правило,Упредназначено для из-

 

 

 

 

 

 

 

 

 

 

Г

 

 

 

 

 

 

 

 

 

 

Б

 

менения значения счетчика цикла. Модификация счетчика происходит после

каждого выполнения тела цикла.

 

 

 

 

 

 

 

 

3.2. Оператор ци ла с предусловием while

Общий вид оператора:

 

 

 

а

 

 

while (условие)

 

 

 

 

 

 

 

к

 

 

 

 

 

{

 

 

 

 

 

 

 

 

 

}

тело цикла;

е

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

Операторы тела цикла по

 

оряю ся до тех пор, пока условие истинно.

 

 

 

 

вт

 

 

 

 

 

 

 

 

3.3. Опе

тор цикла с постусловием do

 

Общий вид оператора:

 

 

 

 

 

 

 

do {

 

и

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

те о цикла;

 

 

 

 

 

 

 

л}

 

 

 

 

 

 

 

 

 

 

while (условие);

 

 

 

 

 

б

 

 

 

 

 

 

 

 

 

Операторы тела цикла повторяются до тех пор, пока условие истинно.

и

 

 

 

3.4. Операторы перехода

 

БОператор break прекращает выполнение ближайшего к нему цикла или

оператора switch.

Оператор continue передает управление на проверку условия циклов while и do while, либо на инкрементирующее_выражение цикла for.

14

3.5. Отладка программы

Для поиска логических ошибок используется встроенный отладчик.

Для пошагового выполнения программы необходимо нажимать клавишу F10. При каждом нажатии выполняется текущая строка. Если необходимо по- шагово проверить код вызываемой функции, то следует нажать F11. Для дос- рочного выхода из функции нажать Shift+F11. Если необходимо начать отлад- ку с определенного места программы, то надо установить курсор в соответст- вующую строку программы и нажать Ctrl+F10.

Другим способом отладки является установка точек прерывания програм- мы. Для этого следует поместить курсор в нужную строку и нажать F9. Точка прерывания обозначается красным кружком на специальном поле, расположен-

дующей точки прерывания) или используются клавиши для пошаговой отладки.

ном слева от окна кода программы. Для удаления точки прерывания следует в

 

 

 

 

Р

необходимой строке повторно нажать F9. Количество точек прерывания в про-

грамме может быть любым.

 

 

И

 

 

 

Для выполнения программы до точки прерывания необходимо нажать F5. Для

продолжения отладки применяется клавиша F5 (выполнение программы до сле-

 

 

У

 

 

Г

 

 

 

Б

 

 

 

Желтая стрелка на поле слева от окна кода программы указывает на строку, которая будет выполнена на следующем ш отладки.

сколько секунд. На экране рядом с им н агем переменной появится окно, содер-

Для контроля за значениями переменных удобно использовать следующий

способ: подвести указатель мыши к нужной переменной и задержать его на не-

жащее текущее значение этой п р м нной. Кроме этого, значения переменных

 

 

 

 

 

 

 

 

 

 

к

будут отображаться в окнах, располож нных снизу. В левом нижнем окне отобра-

жаются значения последних использованныхе

программой переменных. В правом

нижнем окне (Watch) м

зада ь имена переменных, значения которых необ-

ходимо контролировать.

т

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

3.6. Пример выполнения работы

 

 

 

 

 

 

 

 

жно

 

 

 

 

Написать программу

вывода

на экран таблицы значений функции

20

 

2x

k

 

 

и

 

 

 

å

 

 

для x, изменяющегося от a = 0,1 до b = 1 с шагом h = 0,1.

 

n

 

k =0 cos

 

(x)

л

 

 

 

 

 

 

 

 

 

б

 

 

Код программы

 

#include <iostream.h>

 

 

 

 

 

 

и

 

 

 

 

 

 

 

#include <iomanip.h>

 

 

 

 

#include <math.h>

 

 

 

 

Б

 

 

 

 

 

 

 

 

int main()

 

 

 

 

 

 

 

{

 

 

 

 

 

 

 

 

 

 

 

double s, x, a, b, h;

 

 

 

 

 

int

 

k, i;

 

 

 

 

 

 

 

 

cout << "Vvedite a, b, h, k:" << endl;

// Ввод значений: 0.1 1 0.1 20

 

 

cin >> a >> b >> h >> k;

 

 

 

 

 

 

 

 

 

 

 

 

15

x = a;

// Начало цикла по x

do

{

 

 

s = 2;

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

// Начальное значение при k=0

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

20

 

2x

k

 

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

 

 

 

 

// Вычисление суммы å

 

 

 

 

 

 

 

 

 

n

(x)

 

 

s += 2*pow(x, i) / pow(cos(x), i);

 

 

 

 

 

 

 

 

 

 

 

 

 

k =1 cos

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

cout << setw(15) << x << setw(15) << s << endl;

 

 

// Вывод таблицы

 

x += h;

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

// Изменение значения x на величину шага h

 

}

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

// Проверка условия продолжения цикла по x

 

while (x <= b + h/2);

 

 

cout << endl;

 

 

 

 

 

 

 

 

 

 

 

 

 

// Переход на новую строку

 

 

 

 

 

 

 

Р

return 0;

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

И

 

 

 

}

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

У

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

3.7. Индивидуальные задания

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

Г

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

Вывести на экран таблицу значений функции y(x) для x, изменяющегося от

a = 0,1 до b = 1,2 с шагом h = 0,1.

 

 

Б

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

20

 

 

x

n −1

 

 

 

 

 

 

 

 

 

 

 

 

 

 

20

(2x)

n

 

 

 

 

 

 

 

 

 

 

 

1.

y = å

 

 

 

.

 

 

 

 

 

 

 

 

 

 

 

 

 

2.

y = å

 

.

 

 

 

 

 

 

 

 

2n +1

 

 

 

 

 

 

 

 

 

 

 

 

n +1

 

 

 

 

 

 

 

 

 

 

n=1

 

 

 

 

 

 

 

 

 

 

 

 

 

а

 

n=0

 

 

 

 

 

 

 

 

 

 

 

 

 

 

20

 

 

xn −1

 

 

 

 

 

 

 

 

 

 

 

 

к

 

 

20

n2 +1æ x

ön

 

 

 

3.

y = å

 

 

 

 

 

 

.

 

 

 

 

 

 

 

е

 

4.

y = å

 

 

 

 

 

ç

 

 

 

÷ .

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

n=1 sin(nx)

 

 

 

 

 

 

 

 

 

 

 

 

n=1

 

n

 

 

 

è 2

ø

 

 

 

 

 

 

 

 

 

 

 

æ

 

×

 

p

ö

 

 

 

 

 

т

 

 

 

 

 

x2n − 2

 

 

 

 

 

 

 

 

 

 

 

 

 

 

20

 

 

cosç n

 

 

 

÷

 

 

 

 

 

 

 

 

 

20

 

 

 

 

 

 

 

 

 

 

 

5.

y = å

 

 

 

è

 

 

 

4

ø

x

n

.

 

 

6.

y = å

 

 

 

 

 

 

 

.

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

2n +1

 

 

 

 

 

 

 

 

 

 

 

 

n +1

 

 

 

 

 

 

 

 

 

 

n=1

 

 

 

 

 

 

 

 

 

 

 

 

n=1

 

 

 

о

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

7.

 

 

20

 

 

 

x2n и

 

 

 

 

8.

 

20

2n2 +1

x

2n − 2

.

 

 

y = å

 

 

 

 

 

 

.

 

 

 

 

 

 

 

 

 

 

y = å

 

2n

 

 

 

 

 

 

 

 

 

 

 

n=0 cos(nx)

 

 

 

 

 

 

 

 

 

 

 

 

 

 

n=1

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

20

 

 

л

 

 

 

 

 

 

 

 

 

 

 

 

20

 

 

n

 

 

 

 

 

 

 

 

 

 

 

 

9.

y =бå 2n +1

 

xn −1 .

 

 

 

 

 

10.

y = åcos

 

 

(x) .

 

 

 

 

 

 

 

 

n=1 sin(nx)

 

 

 

 

 

 

 

 

 

 

 

 

 

 

n=0

 

2n +1

 

 

 

 

 

 

 

 

и20

 

n × xn −1

 

 

 

 

 

 

 

 

 

 

 

 

20

(1+ x)n −1

 

 

 

11.

y

=

 

 

 

 

 

 

 

 

 

 

 

 

 

 

.

 

 

 

 

 

 

12.

y = å

 

 

 

 

 

 

 

 

 

 

 

.

 

 

 

 

åsin(2n + x)

 

 

 

 

 

 

 

sinn (x)

 

 

 

 

 

Б

 

 

 

 

 

 

 

 

 

 

n 1

 

 

 

 

 

 

 

 

n=1

 

 

2n − 2

 

 

 

 

 

 

 

 

 

 

 

 

 

=

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

20

 

 

 

x

 

 

 

 

 

 

 

 

 

 

 

 

 

20

 

n

2

 

 

 

 

 

 

 

 

 

 

 

13.

y = å

 

 

 

 

 

 

 

 

.

 

 

 

 

 

 

 

14.

y = å

 

 

 

 

 

 

 

xn −1 .

 

 

4cos(nx

2

)

 

 

 

 

 

 

 

(2n +

1)

 

 

 

 

 

n=1

 

 

 

 

 

 

 

 

 

 

 

 

n=1

 

 

 

 

 

 

 

 

 

 

 

 

 

 

æ

 

p ö

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

15.

 

 

20

 

 

cosç n

4

÷

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

y = å

 

 

è

 

ø

xn .

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

2

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

n=0

 

n

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

16