русс | укр

Языки программирования

ПаскальСиАссемблерJavaMatlabPhpHtmlJavaScriptCSSC#DelphiТурбо Пролог

Компьютерные сетиСистемное программное обеспечениеИнформационные технологииПрограммирование

Все о программировании


Linux Unix Алгоритмические языки Аналоговые и гибридные вычислительные устройства Архитектура микроконтроллеров Введение в разработку распределенных информационных систем Введение в численные методы Дискретная математика Информационное обслуживание пользователей Информация и моделирование в управлении производством Компьютерная графика Математическое и компьютерное моделирование Моделирование Нейрокомпьютеры Проектирование программ диагностики компьютерных систем и сетей Проектирование системных программ Системы счисления Теория статистики Теория оптимизации Уроки AutoCAD 3D Уроки базы данных Access Уроки Orcad Цифровые автоматы Шпаргалки по компьютеру Шпаргалки по программированию Экспертные системы Элементы теории информации

ПРОГРАММИРОВАНИЕ АЛГОРИТМОВ ЦИКЛИЧЕСКОЙ СТРУКТУРЫ


Дата добавления: 2014-11-28; просмотров: 1294; Нарушение авторских прав


Цель работы: научиться применять циклическую структуру в программировании.

 

6.1. ТЕОРЕТИЧЕСКАЯ ЧАСТЬ

Инструкция цикла с параметром имеет два возможных формата:

for <Параметр> := <Выражение1> to <Выражение2> do <Инструкция>;

for <Параметр>:= <Выражение1> downto <Выражение2> do <Инструкция>;

Параметр цикла (параметр) представляет собой переменную порядкового типа, которая должна быть определена в том же блоке, где находится инструкция цикла. Выражение1 и Выражение2 являются, соответственно, начальным и конечным значениями параметра цикла и должны иметь тип, совместимый с типом параметра цикла.

Инструкция цикла (инструкция) обеспечивает выполнение тела цикла, которым является инструкция после слова do, до полного перебора с соответствующим шагом всех значений параметра цикла от начального до конечного. Шаг параметра всегда равен 1 для первого формата цикла и −1 - для второго, т. е. значение параметра последовательно увеличивается (for...to) или уменьшается (for...downto) на единицу при каждом повторении цикла.

Примеры циклов с параметром:

Var

n, k: integer;

s := 0;

for n := 1 to 10 do s := s + m[n] ;

for к := 0 to 2 do for n := 5 to 10 do

Begin

arr1[k, n] := 0; arr2[k, n] := 1;

end;

В первом цикле выполняется расчет суммы десяти значений массива m. Во втором случае два цикла вложены один в другой, и в них пересчитываются значения элементов двумерных массивов arr1 и аrr2.

В качестве примера применения оператора for рассмотрим программу, осуществляющую вычисление суммы всех целых чисел от 1 до N.

Var

i, N, Sum : Integer;

Begin

Sum := 0;

for i := 1 to N do Sum := Sum + i;

end;

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



Инструкция цикла с постусловием имеет следующий формат:

Repeat

<Инструкция1>;

<ИнструкцияN>;

until <Условие>;

Условие представляет собой выражение логического типа. Инструкции, заключенные между словами repeat и until, составляют тело цикла и выполняются до тех пор, пока логическое выражение Условие не примет значение True, т. е. тело цикла повторяется при значении Условия, равном False. Так как Условие проверяется только в конце цикла, инструкции тела цикла выполняются минимум один раз.

В теле цикла может находиться произвольное число инструкций без операторных скобок begin и end. По крайней мере одна из инструкций тела цикла должна влиять на значение Условие, в противном случае произойдет зацикливание.

Приведем для иллюстрации цикла с постусловием расчет суммы десяти значений массива m:

Var

х: integer; sum: real; m: array[1..10] of real;

Begin

x := 1; sum := 0;

Repeat

sum := sum + m[x];

x := x + 1;

until(x < 10);

end;

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

while <Условие> do <Инструкция>;

Инструкция тела цикла выполняется до тех пор, пока логическое выражение Условие не примет значение False, т. е. в отличие от цикла с постусловием, данный цикл выполняется при значении логического выражения True.

В качестве примера рассмотрим расчет суммы десяти значений массива:

Var

х: integer; sum: real; m: array[1..10] of real;

Begin

x: = 1; sum: = 0 ;

while x <= 10 do

Begin

sum := sum + m[x];

x : + x + 1;

end;

end;

Если перед первым выполнением цикла условие не удовлетворяется (значение логического выражения Условие равно False), то тело цикла не выполнится ни разу, и происходит переход на инструкцию, следующую за инструкцией цикла.

6.2. КОНТРОЛЬНЫЕ ВОПРОСЫ

1. Алгоритмы циклической структуры в Delphi.

2. Инструкция цикла с параметром.

3. Инструкцию цикла с постусловием.

4. Инструкцию цикла с предусловием.

5. Понятие цикла в программировании.

6. Как задать ограничения циклу?

 

6.3. ЗАДАНИЯ

1. Напишите таблицу умножения с циклом for.

2. Решить уравнение 0,25 x3 + x – 1,25 = 0; x € [0,2] методом итераций с использованием цикла for.

3. Вывести на экран все простые числа, не превосходящие заданное число М, кроме единицы и самого себя.

4. Заданы величины a, b, c. Упорядочить их по возрастанию (a<b<c).

5. Вычислить сумму первых Кнатуральных чисел. S = 1+2+…+K

6. Заданы числа a,b,c. Определить сколько из них равных.

7. Найти множители целых чисел в диапазоне от 2 до 10.

8. Написать программу, определяющую високосный год. Год вводится с клавиатуры. (Високосный год делится на 4 без остатка. Если год делится на 100, то он будет високосным только если он делится на 400 без остатка).

9. Написать программу, используя оператор switch. Программа должна осуществлять преобразование дюймов в сантиметры и сантиметров в дюймы. Пользователь указывает единицы измерения (i для дюймов и c для сантиметров).

10. Заданы величины a, b, c. Упорядочить их по убыванию (a>b>c).

 

ЛИТЕРАТУРА

1. Джулиан Бакнелл. Фундаментальные алгоритмы и структуры данных в Delphi. Издательство:ДиаСофтЮП. 2003 год. 550 стр.

2. Гофман В. Э., Хомоненко А. Д. Delphi. Быстрый старт. СПб, «БХВ-Петербург», 2003 г. 289 стр.

 

 

РЕКОМЕНДУЕМАЯ ЛИТЕРАТУРА

1. Ю.А. Шпак. Delphi 7 на примерах. Издательство: Юниор. 2003 год. 384 стр.

2. Архангельский А.Я. Delphi 2006. Справочное пособие. Язык Delphi, классы, функции Win32 и .NET. Москва «БИНОМ». 2006 г. 1144 стр.

3. Бакженова И.Ю. Delphi 7. Самоучитель программиста. Издательство: КУДИЦ-Образ 2003 год. 448 стр.

 



<== предыдущая лекция | следующая лекция ==>
Диалоговые окна ввода/вывода информации. | Появление первых компьютерных сетей


Карта сайта Карта сайта укр


Уроки php mysql Программирование

Онлайн система счисления Калькулятор онлайн обычный Инженерный калькулятор онлайн Замена русских букв на английские для вебмастеров Замена русских букв на английские

Аппаратное и программное обеспечение Графика и компьютерная сфера Интегрированная геоинформационная система Интернет Компьютер Комплектующие компьютера Лекции Методы и средства измерений неэлектрических величин Обслуживание компьютерных и периферийных устройств Операционные системы Параллельное программирование Проектирование электронных средств Периферийные устройства Полезные ресурсы для программистов Программы для программистов Статьи для программистов Cтруктура и организация данных


 


Не нашли то, что искали? Google вам в помощь!

 
 

© life-prog.ru При использовании материалов прямая ссылка на сайт обязательна.

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