русс | укр

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

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

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

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


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

Программирование циклических алгоритмов с известным числом повторений


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


Цикл – многократно повторяемая последовательность однотипных действий. Циклы бывают с заранее известным числом повторений и с неизвестным числом повторений.

Для организации цикла с известным числом повторений используют оператор цикла с параметром (оператор for). Вид оператора

for i:=m1 tо m2 do s;

Здесь i – параметр цикла целого или другого перечислимого типа, m1 и m2 – начальное и конечное значения параметра цикла, s – тело цикла из одного или нескольких операторов. Если тело цикла состоит из нескольких операторов (т.е. является составным оператором), то их объединяют операторными скобками begin и end. При выполнении оператора for повторяется тело цикла. Параметр цикла увеличивается на 1 при каждом повторе. При первом повторе i равно m1, при последнем повторе i равно m2. В теле оператора не следует применять операторы, меняющие значение параметра цикла. Наиболее часто этот оператор используется для выполнения операций с массивами.

Возможна следующая запись оператора: for i:=m1 downto m2 do s;

При этом параметр цикла уменьшается на 1 при каждом повторе.

Количество повторов цикла в операторе for будет следующим:

Оператор m1 < m2 m1 = m2 m1 > m2
for … to m 2 - m1+1раз 1 раз Не выполняется
for … downto Не выполняется 1 раз m 1 - m2+1раз

Пример. Вычислить 9 раз значения функции при изменении a от –1 с шагом 0,5. Вывести на экран значения аргумента и значения функции в виде таблицы.

Решение. В программе перед циклом задается начальное значение аргумента, равное –1. Внутри цикла проверяется возможность вычисления функции. Если вычислить функцию невозможно, на экран выводится соответствующее сообщение. В противном случае вычисляется значение функции и выводится на экран вместе со значением аргумента. В конце цикла значение аргумента увеличивается на величину шага, и таким образом при следующем выполнении цикла все действия повторяются при новом значении аргумента. Когда будет выполнено девять повторений, произойдет выход из цикла. Ниже приведён текст программы:



Uses Crt; {Подключение модуля Crt}

Var {Описание переменных}

a,b:real;

i:integer;

Begin {Начало головной программы}

Clrscr; {Очистка экрана}

Writeln('Таблица функции b=f(a)'); {Вывод шапки таблицы}

Writeln('--------------------');

Writeln(' № a b ');

Writeln('--------------------');

a:=-1; {Начальное значение аргумента}

for i:=1 to 9 do {Начало цикла}

begin

{Проверка возможности вычисления функции}

if sqr(a)-0.3<0 then {Вывод сообщения}

writeln('При a = ',a:8:2,' функция не определена')

else

begin

b:=sqrt(sqr(a)-0.3); {Вычисление функции}

{Вывод номера точки, аргумента и функции на экран}

Writeln(i:2,' ',a:8:2, ' ',b:8:2);

end;

a:=a+0.5; {Пошаговое увеличение аргумента}

end; {Окончание цикла}

Writeln('--------------------'); {Вывод подвала таблицы}

Readln; {Ждём нажатия Enter}

End. {Окончание программы}

В теле оператора for могут находиться другие операторы for. Это позволяет строить циклы, содержащие внутренние циклы, которые называются вложенными. Ниже приведён текст программы, выводящей на экран таблицу умножения:

Uses Crt;

Var i,j:integer;

Begin

Clrscr;

Writeln('Таблица умножения'); Write(' |');

for i:=1 to 9 do Write(i:6); Writeln;

for i:=1 to 60 do Write('-'); Writeln;

for i:=1 to 9 do {Начало цикла i}

begin

Write(i:4,' |');

for j:=1 to 9 do Write(i*j:6); { Цикл j}

Writeln;

end; {Конец цикла i}

Readln;

End.



<== предыдущая лекция | следующая лекция ==>
Задание 1 | Задание


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


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

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

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


 


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

 
 

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

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