Студопедия

КАТЕГОРИИ:


Архитектура-(3434)Астрономия-(809)Биология-(7483)Биотехнологии-(1457)Военное дело-(14632)Высокие технологии-(1363)География-(913)Геология-(1438)Государство-(451)Демография-(1065)Дом-(47672)Журналистика и СМИ-(912)Изобретательство-(14524)Иностранные языки-(4268)Информатика-(17799)Искусство-(1338)История-(13644)Компьютеры-(11121)Косметика-(55)Кулинария-(373)Культура-(8427)Лингвистика-(374)Литература-(1642)Маркетинг-(23702)Математика-(16968)Машиностроение-(1700)Медицина-(12668)Менеджмент-(24684)Механика-(15423)Науковедение-(506)Образование-(11852)Охрана труда-(3308)Педагогика-(5571)Полиграфия-(1312)Политика-(7869)Право-(5454)Приборостроение-(1369)Программирование-(2801)Производство-(97182)Промышленность-(8706)Психология-(18388)Религия-(3217)Связь-(10668)Сельское хозяйство-(299)Социология-(6455)Спорт-(42831)Строительство-(4793)Торговля-(5050)Транспорт-(2929)Туризм-(1568)Физика-(3942)Философия-(17015)Финансы-(26596)Химия-(22929)Экология-(12095)Экономика-(9961)Электроника-(8441)Электротехника-(4623)Энергетика-(12629)Юриспруденция-(1492)Ядерная техника-(1748)

Циклы. Цикл с предусловием while




Do

Begin

Else

End

Begin

Инструкция if

If

Инструкция switch

Краткие итоги

1.Для организации хранения данных и корректного выполнения операций над ними в языках программирования определены типы данных.

2.Типы характеризуются схожим внутренним представлением данных в памяти компьютера; объемом памяти, выделяемым под данные; множеством (диапазоном) принимаемых значений; допустимыми операциями и функциями.

3.В языке С++ типы классифицируются на базовые, производные и классы.

4.Для базовых типов определены их подмножества и расширения, что обеспечивает повышение точности расчетов или экономный расход памяти.

5. Над типами данных определена операция преобразования типов. Ее следует применять с осторожностью при переходе к типу, у которого меньше по модулю границы диапазонов.

Инструкция switch используется для выбора одного из многих путей. Она проверяет, совпадает ли значение выражения с одним из значений, входящих в некоторое множество целых констант, и выполняет соответствующую этому значению ветвь программы:

switch (выражение) {

case константа: инструкции

case константа: инструкции

default: инструкции

}

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

В главе 1 мы написали программу, подсчитывающую число вхождений в текст каждой цифры, символов-разделителей (пробелов, табуляций и новых строк) и всех остальных символов. В ней мы использовали последовательность if...else if...else. Теперь приведем вариант этой программы с инструкцией switch:

Инструкция if позволяет выбрать один из двух возможных вариантов развития программы. Выбор осуществляется в зависимости от выполнения условия.

В общем виде инструкция if записывается так:

if условие then

// здесь инструкции, которые надо выполнить,

// если условие истинно.

// здесь инструкции, которые надо выполнить, // если условие ложно. end;

Обратите внимание, что перед else (после end) точка с запятой не ставится.

Выполняется инструкция if следующим образом:

1. Вычисляется значение условия (условие — выражение логического типа, значение которого может быть равно True или False).

2. Если условие истинно (значение выражения условие равно True), то выполняются инструкции, следующие за словом then (между begin и end). На этом выполнение операции if заканчивается, то есть инструкции, следующие за else, не будут выполнены.

4. Инструкция организации цикла с параметром в языке С++.

1. Цикл с параметром (for) в языке C++

13 Июль 2012 Станислав Лемешаев

Операторы цикла служат для организации повторяющегося процесса. В C++ можно использовать три вида циклов:

 

И в этой статье более подробно хотелось бы разобрать цикл с параметром.

Если цикл с параметром представить в общем виде, то он будет иметь следующий формат:

 

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

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

Выражение – это проверка выполнения цикла. Если у нас имеется какое-то условие и оно ложно, то цикл работает до тех пор, пока условие не станет истинным. Проще говоря, инициализация – это начало с чего должен начинаться цикл, а выражение – это то, чем он должен заканчиваться.

Модификация – это действие, которое осуществляется в процессе работы цикла. У нас имеется начальное значение, называемое инициализацией, и конечное значение, называемое выражением, а правило, по которому мы задаем, чтобы из начального условия прийти в конечное, называется модификацией.

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

Давайте теперь поймем работу цикла с параметром на примере. Нам нужна задача, в которой нужно повторять одно и то же действие несколько раз. Допустим, мы хотим посчитать сумму чисел от 1 до 10. Сначала давайте посчитаем в ручную, а затем попробуем написать программу, которая считает это самостоятельно.

 

5. Цикл с постусловием do... while

Циклом с постусловием называется цикл, в котором истинность условия проверяется каждый раз после выполнения тела цикла.

 

В языке С++ синтаксис цикла с постусловием таков:

оператор;

while ( условие );

Как и для цикла while, условие обязательно ставится в скобки, а если в теле цикла несколько операторов, мы заключаем их в операторные скобки {...}.

Даже если условие сразу окажется ложным, тело цикла мы выполняем еще до его проверки, значит цикл с постусловием обязательно выполнится хотя бы один раз.

Как цикл с предусловием, цикл do...while выполняется до тех пор, пока условие остается истинным. Помните пример из предыдущего раздела? Модифицируем его с другим вариантом цикла:

 

int a=0;

do a++ while ( a<10 ); // цикл №1

do a-- while ( a>10 ); // цикл №2

do a=0 while ( a<10 ); // цикл №3

В этом примере цикл №1 выполнится 10 раз, цикл №2 - один раз (!), а цикл №3 - опять вечный.

Обратите внимание, в Паскале цикл с постусловием выполняется до тех пор, пока условие не станет истинным, а в языке С++ - пока условие остается истинным. Такие мелкие различия между языками здорово портят жизнь программистам-универсалам.

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




Поделиться с друзьями:


Дата добавления: 2015-06-25; Просмотров: 567; Нарушение авторских прав?; Мы поможем в написании вашей работы!


Нам важно ваше мнение! Был ли полезен опубликованный материал? Да | Нет



studopedia.su - Студопедия (2013 - 2024) год. Все материалы представленные на сайте исключительно с целью ознакомления читателями и не преследуют коммерческих целей или нарушение авторских прав! Последнее добавление




Генерация страницы за: 0.011 сек.