Помощь в написании студенческих работ
Антистрессовый сервис

Представление основных структур программирования: итерация, ветвление, повторение. 
Основные структуры составления программ. 
Операторы if, case, for, while и. т. д

Реферат Купить готовую Узнать стоимостьмоей работы

Учтено, что конструкция языка активно используется тогда, когда она не только изящно записывается на нем, но и вполне по средствам обычным программам. В проекте С++ особое внимание уделяется структурированию программы. Это вызвано увеличением размеров программ со времени появления С. Небольшую программу (скажем, не более 1000 строк) можно заставить из упрямства работать, нарушая все правила… Читать ещё >

Представление основных структур программирования: итерация, ветвление, повторение. Основные структуры составления программ. Операторы if, case, for, while и. т. д (реферат, курсовая, диплом, контрольная)

Содержание

  • 1. Представление основных структур программирования: итерация, ветвление (условие), повторение (цикл)
    • 1. 1. Ветвение (условие)
    • 1. 2. Повторение (цикл)
    • 1. 3. Итерация
  • 2. Операторы
    • 2. 1. Условный оператор if… else
    • 2. 2. Оператор выбора switch
    • 2. 3. Операторы цикла
  • Заключение
  • Список используемой литературы

Оценивается выражение условия. Если оно истинно, выполняется оператор тела цикла; если условие ложно, происходит выход из цикла и управление передается следующему оператору.

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

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

Простейшей и самой популярной конструкцией на основе цикла for является цикл с управляющей переменнои-счетчиком:

int i;

for (i =0; i < REPEAT; i++)

DoSomething (i);

Счетчик инициализируется значением 0. В начале каждого прохода цикла проверяется, не достиг ли он значения REPEAT. Как только i станет равным REPEAT, тело цикла пропускается и управление передается следующему оператору. В конце каждого прохода i увеличивается на единицу. Как нетрудно подсчитать, тело цикла выполняется для значений i от О до REPEAT-1, т. е. REPEAT раз.

Примечание Любую конкретную структуру повторения, требуемую для решения некоторой задачи, можно реализовать на основе любого из циклов С, однако всегда какой-то из них подходит к данному случаю наилучшим образом, позволяя написать более ясный и компактный код. Так, если необходимое число итераций цикла известно заранее (как при обработке массива), проще всего применить цикл for. Если же число итераций заранее определить нельзя, как в нашем примере обработки команд (момент завершения цикла определяется пользователем) или при операциях поиска в списке, применяют цикл while или do.. .while.

У структур повторения в ряде ситуаций есть альтернатива. Это рекурсия, заключающаяся в том, что функция вызывает саму себя. Естественно, такой вызов должен быть условным, т. е. обязательно должен наступить такой момент, когда на очередном шаге рекурсивного вызова не происходит. Есть классический пример рекурсии — вычисление факториала:

unsigned Fac (unsigned n)

{

if (n)

return n * Fac (n — 1);

else

return 1;

}

Когда аргумент в очередном вызове оказывается равен 0, рекурсия завершается — функция возвращает 1. До этого момента не происходило, по существу, реальных вычислений (умножений). На стеке накапливались вызовы Fac () с последовательно уменьшающимися аргументами. Теперь стек начинает «разматываться», и возвращаемые на каждом шаге значения умножаются на последовательно увеличивающиеся n. Глубина рекурсии ограничивается только размером стека программы.

Факториал, конечно, вообще никто никогда не вычисляет, во всяком случае, подобным образом. Однако существуют задачи, для которых метод рекурсии оказывается естественным решением и реализуется намного проще, чем это можно было бы сделать с помощью циклов. Таковы, прежде всего/ различные операции над древовидными структурами данных.

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

Заключение

Программы, которые мы пишем, имеют два основных аспекта: набор алгоритмов и набор данных, которыми оперируют. Эти два аспекта оставались неизменными за всю недолгую историю программирования, зато отношения между ними (парадигма программирования) менялись.

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

Программирование на С++ по сути сводится к определению универсальных или зависящих от области приложения типов. Хорошо продуманный пользовательский тип отличается от встроенного типа только способом определения, но не способом применения. Из языка исключались возможности, которые могут привести к накладным расходам памяти или времени выполнения, даже если они непосредственно не используются в программе. Например, было отвергнуто предложение хранить в каждом объекте некоторую служебную информацию. Если пользователь описал структуру, содержащую две величины, занимающие по 16 разрядов, то гарантируется, что она поместится в 32-х разрядный регистр.

Язык С++ проектировался для использования в довольно традиционной среде, а именно: в системе программирования С операционной системы UNIX. Но есть вполне обоснованные доводы в пользу использования С++ в более богатой программной среде. Такие возможности, как динамическая загрузка, развитые системы трансляции и базы данных для хранения определений типов, можно успешно использовать без ущерба для языка. Типы С++ и механизмы упрятывания данных рассчитаны на определенный синтаксический анализ, проводимый транслятором для обнаружения случайной порчи данных. Они не обеспечивают секретности данных, и защиты от умышленного нарушения правил доступа к ним. Однако, эти средства можно свободно использовать, не боясь накладных расходов памяти и времени выполнения программы.

Учтено, что конструкция языка активно используется тогда, когда она не только изящно записывается на нем, но и вполне по средствам обычным программам. В проекте С++ особое внимание уделяется структурированию программы. Это вызвано увеличением размеров программ со времени появления С. Небольшую программу (скажем, не более 1000 строк) можно заставить из упрямства работать, нарушая все правила хорошего стиля программирования. Однако, действуя так, человек уже не сможет справиться с большой программой. Если у вашей программы в 10 000 строк плохая структура, то вы обнаружите, что новые ошибки появляются в ней так же быстро, как удаляются старые.

С++ создавался с целью, чтобы большую программу можно было структурировать таким образом, чтобы одному человеку не пришлось работать с текстом в 25 000 строк. В настоящее время можно считать, что эта цель полностью достигнута.

Список используемой литературы Герберт Шилдт «Искусство программирования на С++» — СПб Питер, 2005 г.

Бьерн Страуступ «Язык программирования С++» — СПб Питер, 2007 г.

А.Б. Крупник «Изучаем С++» — Москва, 2003 г.

Круглински Д., Уингоу С, Шеферд Дж. «Программирование на Visual С++ для профессионалов».

Джордж Шеферд «Программирование на Microsoft Visual C++ .NET».

[Джордж Шеферд «Программирование на Microsoft Visual C++ .NET», стр. 67]

[Круглински Д., Уингоу С, Шеферд Дж. «Программирование на Visual С++ для профессионалов», стр. 54]

[Бьерн Страуступ «Язык программирования С++» — СПб Питер, 2007 г, стр. 124]

Показать весь текст

Список литературы

  1. Герберт Шилдт «Искусство программирования на С++» — СПб Питер, 2005 г.
  2. Бьерн Страуступ «Язык программирования С++» — СПб Питер, 2007 г.
  3. А.Б. Крупник «Изучаем С++» — Москва, 2003 г.
  4. Д., Уингоу С, Шеферд Дж. «Программирование на Visual С++ для профессионалов».
  5. Джордж Шеферд «Программирование на Microsoft Visual C++ .NET».
Заполнить форму текущей работой
Купить готовую работу

ИЛИ