- •16. Работа с файлами и папками в os Windows: общие положения.
- •Создание папки
- •Перемещение и копирование папки, файла
- •Переименование папки, файла
- •Удаление папок, файлов
- •Принципы работы службы dns.
- •32. Создание блок-схемы алгоритма решения задачи.
- •Печать с заданием ширины поля и точности представления.
- •48. Оператор цикла do … while. Операторы break, continue.
- •56. Заполнение массива при помощи датчика случайных чисел.
- •37 Ввод/Вывод в с. Стандартные потоки.
48. Оператор цикла do … while. Операторы break, continue.
do...while - это цикл с постусловием.
Цикл do ... while - цикл с неизвестным числом повторений. В отличие от цикла while условие проверяется в конце цикла. Поэтому тело цикла выполняется хотя бы один раз
do
{блок из одного или нескольких операторов}
while (условие)
Пример 1.
char ans 'Y';
longint a=l;
do
{a*=a+l;
cout <<"\n" << a;
cout << "\n\t" <<" Для продолжения введите Y, для окончания N " ;
cin>> ans;
}
while ((ans ='Y') || (ans='y') ) ;
Операторы exit(). break continue
В C++ предусмотрена возможность досрочного выхода из программы до ее нормального завершения с помощью функции exit().
Формат:
exit(статус);
где статус - переменная или константа типа int - код завершения. В соответствии с кодом завершения устанавливается переменная окружения, уровень ошибки (ERRORLEVEL) операционной системы. Этот код завершения может проверяться в командных файлах.
Обычно оператор exit ставиться в теле оператора if, чтобы закончить программу, в зависимости от результата проверки условия. При использовании exit необходимо указывать заголовочный файл stdlib.h
Команда break используется для выхода из текущего цикла.
Команда break может находиться в любом месте программы, однако обычно break ставиться в теле операторов while или do... while.
Пример 1.
#include < iostream.h >
#include < stdlib.h >
main()
{exit(0); //заставляет программу завершиться в этом месте
cout <<" С помощью C++ можно составлять высоко эффективные программы. \n";
cout <<" Удачи Вам. \n";
return 0;
}
На первый взгляд кажется, что эта программа выдаст на экран несколько сообщений.
Но это заблуждение, т.к. функция exit в начале программы приведет к ее прерыванию.
Пример 2.
#include <iostream.h>
#include <stdlib.h>
// Проверка пароля, пользователю предоставляется 3 попытки.
main()
{
int nash_p=4321; // пароль int k=0; // количество попыток
int ego_p; // пароль введенный пользователем
do
{
cout <<"Введите пароль \n";
cin>> ego_p;
k++;
if (ego_p=nash_p)
{
cout <<"\n\nДобро пожаловать в программу !! ";
exit(0);
}
else
{
(k<3) ? (cout <<"\n Пароль не верен !!\n Попробуйте еще раз !! ");
(cout <<"\n Пароль не верен !!");
}
}
while (k<3);
return 0;
}
Если пользователь ввел верный пароль, программа заканчивает свою работу с кодом завершения 0. В противном случае выдается сообщение о неверном пароле.
Оператор continue прерывает выполнение очередного шага цикла и заставляет компьютер начать выполнять новый шаг цикла. Если Вы поместите оператор continue в цикл for или while, компьютер будет игнорировать все операторы, следующие в теле цикла после continue.
Формат оператора:
continue;
Обычно оператор continue используется, если данные, обрабатываемые в теле цикла неверны, выходят за допустимые пределы или имеют непредвиденные значения. Вместо обработки некорректных данных, вы можете захотеть вернуться к началу цикла, чтобы получить другое значение
Пример.
// Вычисление средней зарплаты, зарплаты меньше 500 не учитываются
#include < iostream.h >
main()
{
float sr_zarp=0,zarp; // средняя заработная плата, текущая заработная плата
int kol=0; // количество
do
{
cout<<"Введите зарплату \n";
cout<<"(для окончания введите значение -1) :\n";
cin>> zarp;
if ( zarp<0 )
break;
if ( zarp<500 )
continue;
else
{
sr_zarp+=zarp;
kol++;
}
while (1= =1); // Бесконечный цикл
s_zarp/=floa_kol;
cout <<"Средняя зарплата=" << sr_zarp;
}
