Студопедия Главная Случайная страница Обратная связь

Разделы: Автомобили Астрономия Биология География Дом и сад Другие языки Другое Информатика История Культура Литература Логика Математика Медицина Металлургия Механика Образование Охрана труда Педагогика Политика Право Психология Религия Риторика Социология Спорт Строительство Технология Туризм Физика Философия Финансы Химия Черчение Экология Экономика Электроника

Лабораторная работа № 3. Использование циклов





 

Цель работы: овладеть практическими навыками использования итеративных конструкций С++ для повторения одного или нескольких операторов.

 

Краткие теоретические сведения

При разработке циклического алгоритма следует иметь в виду, что в нем практически всегда явно или неявно присутствуют следующие этапы: инициализация (начальные установки) цикла; тело цикла (что повторять?); условие продолжения цикла (до каких пор повторять?). В цикле с параметром надо предусмотреть модификацию параметра.

Общий формат оператора for:

for (инициализация; проверка; увеличение)

{

операторы;

}

Инициализирующее выражение выполняется только один раз в начале выполнения цикла и, как правило, инициализирует счетчик цикла. Условие содержит операцию отношения, которая выполняется в начале каждого цикла. Если условие выполняется, то цикл повторяется, иначе выполняется следующий за телом цикла оператор. Инкрементирующее выражение предназначено для изменения значения счетчика цикла. Модификация счетчика происходит после каждого выполнения тела цикла. Оператор for не обязывает увеличиватьуправляющую переменную на 1 или использовать именно увеличение. Из-за ошибок в программах в некоторых случаях цикл никогда не достигает своего завершающегося условия и зацикливается навсегда. Такие циклы называются бесконечными.

По мере усложнения программ понадобиться выполнять группы связанных операторов, пока не реализуется заданное условие. В таких случаях необходимо использовать оператор С++ while, общий формат которого:

while (условие)

{

тело цикла

}

Сталкиваясь с оператором while, программа будет оценивать условие цикла. Если условие истинно, программа выполняет операторы цикла while. После выполнения последнего оператора цикла программа снова проводит проверку условия. Если условие ложно, программа продолжит свое выполнение с первого оператора, который следует за оператором while.

Оператор цикла с постусловием имеет общий вид:

do {

тело цикла

}

while (условие);

Когда программа встречает оператор do while, она сразу же выполняет операторы, содержащиеся в цикле. Затем программа исследует условие цикла. Если условие истинно, программа повторяет операторы цикла и процесс продолжается. Если условие становится ложным, программа продолжает свое выполнение с первого оператора, следующего за оператором do while.

 

Задание

1. Составить блок-схему алгоритма и программу циклического вычислительного процесса в соответствии с заданным вариантом.

2. Составить отчет о проделанной работе (аналогично отчету для лабораторной работы №1).

 

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

Условие: Вывести на экран таблицу значений функции и ее разложения в ряд для x, изменяющегося от 0, 1 до 1 с шагом h=(b-a)/10, при n=80.

Блок схема алгоритма изображена на рисунке 4.

Рис. 4 Блок схема алгоритма

 

#include < iostream.h>

#include < iomanip.h>

#include < math.h>

#include < conio.h>

 

void main(void)

{

double a, b, h, x, y, s, p;

int n, i;

cout < < " Vvedite a "; cin > > a;

cout < < " Vvedite b "; cin > > b;

cout < < " Vvedite h "; cin > > h;

cout < < " Vvedite n "; cin > > n;

x=a;

do

{

p=s=x;

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

{

p*=(pow(x, 2))/(2*n*(2*n+1));

s+=p;

}

y=(exp(x)-exp(-x))/2;

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

x+=h;

}

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

cout < < endl;

cout < < " Vvedite a, b, h, n" < < endl;

getch ();

}

 

Задания для самостоятельного выполнения

Задано натуральное n, вещественное x. Вычислить значение выражения

1.  
2.  
3.
4.
5.    
6.    
7.  
8.

 

Составить программу приближенного вычисления площади фигуры, ограниченной заданными линиями. В вариантах № 9–13 использовать метод прямоугольников. Для построения прямоугольника использовать левый конец отрезка.

9. y = 0, y = 5 xx 2 +14.

10. y = x 2 + 2 x + 2, y = x 2 + 4 x + 5, y =1.

11. y = − x 2 + 2 x + 2, y = − x 2 − 4 x − 1, y = 3.

12. y = 3 x 2 − 4 x + 2, y = 20 − x.

13. y = − 2 x 2 + 3 x + 6, y = x + 2.

В вариантах № 14–17 использовать метод прямоугольников. Для построения прямоугольника использовать правый конец отрезка.

14. y = 0, y = − 2(x − 1)2 + 8.

15. y = 0, y = − 2(x − 3)2 + 2.

16. y = x, x − 3 y + 2 = 0.

17. y = − 2 x 2 + 3 x + 6, y = x + 2.

Контрольные вопросы

1. Что такое итерационный циклический процесс? Его отличия от цикла с заданным числом повторений.

2. В чем заключается сущность метода итераций при вычислении интеграла? Как определить число итераций, необходимых для получения значения интеграла с требуемой точностью?

3. Почему при программировании итерационных процессов не используются индексированные переменные для обозначения последовательных приближений к корню? Сколько соседних приближений одновременно используются в вычислениях?

4. Как смоделировать цикл while циклом for?

5. Как смоделировать цикл while циклом do-while?

6. Как открытый цикл for может эмулировать циклы while и do-while?

7. Ограничивает ли С++ вложение циклов разных типов?

8. Представить общий формат инструкции for.

9. Если цикл включает инструкцию switch, то приведет ли к завершению этого цикла инструкция break, принадлежащая инструкции switch?

10. Пояснить назначение инструкции break в цикле.

 







Дата добавления: 2014-11-10; просмотров: 2446. Нарушение авторских прав; Мы поможем в написании вашей работы!




Обзор компонентов Multisim Компоненты – это основа любой схемы, это все элементы, из которых она состоит. Multisim оперирует с двумя категориями...


Композиция из абстрактных геометрических фигур Данная композиция состоит из линий, штриховки, абстрактных геометрических форм...


Важнейшие способы обработки и анализа рядов динамики Не во всех случаях эмпирические данные рядов динамики позволяют определить тенденцию изменения явления во времени...


ТЕОРЕТИЧЕСКАЯ МЕХАНИКА Статика является частью теоретической механики, изучающей условия, при ко­торых тело находится под действием заданной системы сил...

Психолого-педагогическая характеристика студенческой группы   Характеристика группы составляется по 407 группе очного отделения зооинженерного факультета, бакалавриата по направлению «Биология» РГАУ-МСХА имени К...

Общая и профессиональная культура педагога: сущность, специфика, взаимосвязь Педагогическая культура- часть общечеловеческих культуры, в которой запечатлил духовные и материальные ценности образования и воспитания, осуществляя образовательно-воспитательный процесс...

Устройство рабочих органов мясорубки Независимо от марки мясорубки и её технических характеристик, все они имеют принципиально одинаковые устройства...

Правила наложения мягкой бинтовой повязки 1. Во время наложения повязки больному (раненому) следует придать удобное положение: он должен удобно сидеть или лежать...

ТЕХНИКА ПОСЕВА, МЕТОДЫ ВЫДЕЛЕНИЯ ЧИСТЫХ КУЛЬТУР И КУЛЬТУРАЛЬНЫЕ СВОЙСТВА МИКРООРГАНИЗМОВ. ОПРЕДЕЛЕНИЕ КОЛИЧЕСТВА БАКТЕРИЙ Цель занятия. Освоить технику посева микроорганизмов на плотные и жидкие питательные среды и методы выделения чис­тых бактериальных культур. Ознакомить студентов с основными культуральными характеристиками микроорганизмов и методами определения...

САНИТАРНО-МИКРОБИОЛОГИЧЕСКОЕ ИССЛЕДОВАНИЕ ВОДЫ, ВОЗДУХА И ПОЧВЫ Цель занятия.Ознакомить студентов с основными методами и показателями...

Studopedia.info - Студопедия - 2014-2026 год . (0.008 сек.) русская версия | украинская версия