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

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

Лабораторная работа № 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. Нарушение авторских прав; Мы поможем в написании вашей работы!




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


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


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


Теория усилителей. Схема Основная масса современных аналоговых и аналого-цифровых электронных устройств выполняется на специализированных микросхемах...

Мотивационная сфера личности, ее структура. Потребности и мотивы. Потребности и мотивы, их роль в организации деятельности...

Классификация ИС по признаку структурированности задач Так как основное назначение ИС – автоматизировать информационные процессы для решения определенных задач, то одна из основных классификаций – это классификация ИС по степени структурированности задач...

Внешняя политика России 1894- 1917 гг. Внешнюю политику Николая II и первый период его царствования определяли, по меньшей мере три важных фактора...

ТЕОРИЯ ЗАЩИТНЫХ МЕХАНИЗМОВ ЛИЧНОСТИ В современной психологической литературе встречаются различные термины, касающиеся феноменов защиты...

Этические проблемы проведения экспериментов на человеке и животных В настоящее время четко определены новые подходы и требования к биомедицинским исследованиям...

Классификация потерь населения в очагах поражения в военное время Ядерное, химическое и бактериологическое (биологическое) оружие является оружием массового поражения...

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