dowhile;
В языке C++ этот оператор отличается от классической реализации цикла с постусловием тем, что при истинности выражения происходит продолжение работы цикла, а не выход из цикла.
Оператор пошагового цикла.
for ([];
[];
[])
Тело оператора forвыполняется до тех пор, пока условное выражение не станет ложным (равным 0).Начальное выражение и выражение приращения обычно используются для инициализации и модификации параметров цикла и других значений. Любое из трех выражений заголовка цикла, и даже все три могут быть опущены.
Если опущено условное выражение, то оно считается истинным, и цикл становится бесконечным.
Оператор безусловного перехода
break;
Оператор безусловного перехода прерывает выполнение операторов while, do, forи switch. Он может содержаться только в теле этих операторов. Управление передается оператору программы, следующему за прерванным. Если оператор безусловного перехода записан внутри вложенных операторов while, do, for, switch, то он завершает только непосредственно охватывающий его оператор.
Оператор продолжения.
continue;
Оператор продолжения передает управление на следующую итерацию в операторах цикла while, do, for. Он может содержаться только в теле этих операторов. В операторах doи whileследующая итерация начинается с вычисления условного выражения. В операторе forследующая итерация начинается с вычисления выражения приращения, а затем происходит вычисление условного выражения.
Оператор возврата
return [];
Оператора возврата заканчивает выполнение функции, в которой он содержится, и возвращает управление в вызывающую функцию. Управление передается в точку вызывающей функции, непосредственно следующую за оператором вызова. Значение выражения, если она задано, вычисляется, приводится к типу, объявленному для функции, содержащей оператор возврата, и возвращается в вызывающую функцию. Если выражение опущено, то возвращаемое функцией значение не определено.
С формальной точки зрения операторы break, continueи returnне являются операторами структурного программирования. Однако их использование в ограниченных количествах оправдано, когда они упрощают понимание программы и позволяют избегать больших вложенных структур. Например, мы проверяем входные данные на аномалии. Если не использовать эти операторы, то всю обработку придется вложить в условный блок, что ухудшает читабельность программы. Вместо этого можно написать небольшой условный блок, который организует выход из функции при неверных исходных данных.
Ввод/выводне является частью языка С++, а осуществляется функциями, входящими в состав стандартной библиотеки.
В С++ отсутствуют операторы ввода-вывода, так как все операции ввода-вывода реализуются с помощью функций, которые находятся в библиотеке С++, поддерживающей три уровня ввода-вывода: потоковый ввод-вывод;
Описание объектов для управления вводом-выводом содержится в файле iostream.h.При подключении этого файла с помощью директивы #includeв программе автоматически создаются виртуальные каналы связи cinдля ввода с клавиатуры и coutдля вывода на экран, а также операции помещения в поток « и чтения из потока »
С помощью объекта cin и операции можно присвоить значение любой переменной. Например, если переменная x описана как целочисленная, то команда cin»x;означает, что в переменную xбудет записано некое целое число, введенное с клавиатуры. Если необходимо ввести несколько переменных, то следует написать cin»x»y»z;.
Объект coutи операция позволяет вывести на экран значение любой переменной или текст. Текст необходимо заключать в двойные кавычки. Запись cout»x;означает вывод на экран значения переменной x.
Практическая часть
Циклические алгоритмы
Задание 1
Вычислить и вывести на экран в виде таблицы значения функции F на интервале от xнач. до xкон. с шагом dx.
где a,b,c – действительные числа
Решение:
1)Спецификация
Входные данные:
xn – x начальная
xk – x конечная
dx – шаг цикла
a,b,c – действительные числа
x – значение аргумента
F- значение функции
Выходные данные: x,F
2)Блок-схема
![]() |
![]() | |||
да |
да
![]() | |||||
![]() | |||||
![]() |
3) Текст программы:
#include
#include
using namespace std;
int main ()
{float x,xn,xk,dx,a,b,c;
double F;
cout
cinxnxkdxabc;
cout
x=xn;
while(x
{if(x==0b!=0) F=a*(x+c)*(x+c)-b; else
if(x==0b==0)
F=(x-a)/-c; else F=a+(x/c);
cout
}
4) Отладка программы:
5)Результат:
Задание 2.
Вычислить и вывести на экран в виде таблицы значения функции, заданной с помощь ряда Тейлора, на интервале от х.нач до х.кон с шагом dx с точностью ?.
1)Спецификация
Входные данные: x,ln,eps,MaxIter
Выходные данные: y,x,n
ln- промежуточная переменная
x- исходные данные
y- выходные данные
n- выходные данные
eps- точность
MaxIter — максимальное количество итерация
Решение:
сh*=
2)Блок-схема
![]() | |||
![]() |
3)Текстпрограммы:
#include
#include
#include
using namespace std;
int main()
{
const int MaxIter=500;
double x,eps=DBL_EPSILON; int n;
coutx;
double ch=1,y=ch;
for(n=0; fabs(ch)epsn
{ch*=((x-1)*(x-1)*2*n+1)/((x+1)*(x+1)*(2*n+3));
y+=ch;}
if(n
{cout
cout
else cout
}
4)Отладка программы:
5)Результат:
![]() |
Массивы
Задание 1.
В одномерном массиве, состоящем из n вещественных элементов вычислить:
1) Количество отрицательных элементов массива
2) Сумму модулей элементов массива расположенных после минимального по модулю элемента
3)Упорядочить массив по убыванию его элементов
1)Спецификация
Входные данные: arr[i],m
Выходные данные: n
n- выходные данные
2)Блок-схема
![]() | |||||||||||
![]() | |||||||||||
![]() | |||||||||||
![]() | |||||||||||
![]() | |||||||||||
![]() |
![]() |
m:=arr[i] |
![]() | ||||||
![]() | ||||||
![]() | ||||||
![]() |
![]() | |||
![]() |
Текст программы:
#include
#include
using namespace std;
int main()
{
int n,arr[50],m=0,z,sum=0;
coutn;
for (int i=0; i
coutarr[i];
}
int min=fabs(arr[0]);
for (int i=0; i
if (arr[i]
if (fabs(arr[i])
}
for (int i=z+1; i
sum+=fabs(arr[i]);
}
cout
cout
cout
return 0;
}
Отладка программы:
Результат программы:
Заключение
В ходе учебной практики по МДК 01.02 «Прикладное программирование» закрепил теоретические знания, приобрёл практические навыки и умения работы в среде программирования Dev-C++.
Выполнил индивидуальные задания по следующим темам:
•Циклические алгоритмы.
•Массивы.
•Функции пользователя.
-Во время прохождения учебной практики приобрёл практический опыт в разработке алгоритма поставленной задачи и реализации его средствами среды программирования Dev-C++, а также в проведении тестирования программного модуля по определенному сценарию.
Научился:
-осуществлять разработку кода программного модуля на языке программирования C++;
-создавать программу по разработанному алгоритму как отдельный модуль;
-выполнить отладку и тестирование программы на уровне модуля;
-оформлять документацию на программные средства;
-использовать инструментальные средства для автоматизации оформления документации.
Статьи к прочтению:
16 Цикл с постусловием
Похожие статьи:
-
Операторы цикла с предусловием
Контрольные вопросы: 1. Каков тип выражения в операторе цикла с предусловием? 2. Верно ли, что в теле цикла с предусловием должен находится один…
-
Оператор цикла с предусловием имеет вид
Содержание Рабочая программа……………………………………………….. 3 Программирование на Паскале……………………………. 4…