Студопедия Главная Случайная страница Обратная связь

Разделы: Автомобили Астрономия Биология География Дом и сад Другие языки Другое Информатика История Культура Литература Логика Математика Медицина Металлургия Механика Образование Охрана труда Педагогика Политика Право Психология Религия Риторика Социология Спорт Строительство Технология Туризм Физика Философия Финансы Химия Черчение Экология Экономика Электроника

Команда циклу з параметром (for)





Оператори циклу.

Цикл — це процес виконання певного набору команд деяку кількість разів. Цикл реалізують або за допомогою конструкції if–goto, або, що значно ефективніше, за допомогою команд циклу. Є три види команд циклів: з параметром, з передумовою та з післяумовою.

Команда циклу з параметром (for)

Розглянемо команду циклу з параметром – for. Є два різновиди команди for. Розглянемо перший:

for < параметр >:=<вираз 1> to <вираз 2> do <команда 1>;

Тут параметр — це зміна цілого, символьного, логічного або перерахованого типу, а вирази 1 і 2 задають початкове та кінцеве значення параметра.

Дія команди. Параметрові циклу присвоюється значення виразу 1. якщо це значення менше-рівне, ніж значення виразу 2, то виконується команда 1. Після виконання команди 1 значення параметра автоматично збільшується на 1 і знову порівнюється зі значенням виразу 2 і т.д. Коли значення параметра стане більшим, ніж значення виразу 2, то виконується наступна після циклу команда.

Приклад. Нехай s=0. Після виконання команди циклу

for i:=4 to 6 do begin s:=s+і; z:=2*i end;

зміна s набуде значення 0+4+5+6=15, а зміна z — 12.

 

Розглянемо другий різновид команди циклу for:

for < параметр >:=<вираз 1> downto <вираз 2> do <команда 1>;

Ця команда діє як попередня, але крок зміни параметра є -1.

Приклад. Нехай s=0. після виконання команди циклу

for i:=6 downto 4 do begin s:=s+і; z:=2*i end;

зміна s набуде значення 0+6+5+4=15, а зміна z— 8.

Значення параметра в середині циклу змінювати не можна.

Приклад. Побудувати таблицю відповідності між унціями та грами, якщо 1 унція = 28,353495 г. Початкове значення кількості унцій (uncia), крок зміни (krok) цього значення та кількість рядків (kil) у таблиці задати самостійно у режимі діалогу.

program Mira;

uses Crt;

const line=’-------------------’;

var uncia, gramy, krok: real; i, kil: integer;

Begin

clrscr;

write (‘Введіть початкове значення, крок зміни та’);

writeln(‘кількість рядків у таблиці’);

readln(uncia, krok, kil);

writeln; {Формуємо порожній рядок}

writeln(line); {Формуємо заголовок таблиці}

writeln(’Унції Грами’);

writeln(line);

for i:=1 to kil do {Виводимо таблицю на екран}

Begin

gramy:=28.353495*uncial;

writeln(uncia:5:2,’ ’, gramy:10:6);

uncia:=uncia+krok;

end;

writeln(line); readln

End.

Команда циклу з передумовою (while) має вигляд

while < логічний вираз > do <команда 1>;

Дія команди. Доки значення логічного виразу істинне, виконується команда 1. Істинний логічний вираз описує умову продовження процесу виконання команди циклу.

Приклад. Нехай змінні x, s мають значення х=4, s=0. Після виконання команди

while x<=8 do begin s:=s+x; x:= x +1 end;

вони набудуть значень s=4+5+6+7+8=30, x=9

Приклад. Вивести таблицю чисел від 20 до 30, їхні квадрати та куби за допомогою команди можна while так:

i:= 20;

while i <= 30 do

Begin

writeln(i:4, i*i:6, i*i:8);

i:=i+1

end;

Приклад. Визначити дійсне додатне число а, для якого виконується співвідношення а/2=0 в комп’ютерній арифметиці дійсних чисел. Таке число характеризує нижню додатну межу типу даних real.

program MinRealNumber;

uses Crt;

var a: real;

Begin

clrscr;

a:= 1;

while a/2>0 do a:= a/2;

writeln(’a =’, a); {Відповідь: а = 2.9Е-39}

readln

End.

Команда циклу з післяумовою (repeat) має вигляд

repit < команди > until < логічний вираз >;

Дія команди. Команди виконуються в циклі, доки значення логічного виразу не стане істинним. Істинний логічний вираз задає умову виходу з циклу.

Приклад. Нехай змінні x, y мають значення х=5, y=0. У результаті виконання команди

Repeat y:=y+x; z:=2*x-2 until x<=1;

Змінні у, z, x набудуть значень у=0+5+3=8, z=6, x­=1.







Дата добавления: 2015-08-12; просмотров: 671. Нарушение авторских прав; Мы поможем в написании вашей работы!




Картограммы и картодиаграммы Картограммы и картодиаграммы применяются для изображения географической характеристики изучаемых явлений...


Практические расчеты на срез и смятие При изучении темы обратите внимание на основные расчетные предпосылки и условности расчета...


Функция спроса населения на данный товар Функция спроса населения на данный товар: Qd=7-Р. Функция предложения: Qs= -5+2Р,где...


Аальтернативная стоимость. Кривая производственных возможностей В экономике Буридании есть 100 ед. труда с производительностью 4 м ткани или 2 кг мяса...

Ведение учета результатов боевой подготовки в роте и во взводе Содержание журнала учета боевой подготовки во взводе. Учет результатов боевой подготовки - есть отражение количественных и качественных показателей выполнения планов подготовки соединений...

Сравнительно-исторический метод в языкознании сравнительно-исторический метод в языкознании является одним из основных и представляет собой совокупность приёмов...

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

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

Медицинская документация родильного дома Учетные формы родильного дома № 111/у Индивидуальная карта беременной и родильницы № 113/у Обменная карта родильного дома...

Основные разделы работы участкового врача-педиатра Ведущей фигурой в организации внебольничной помощи детям является участковый врач-педиатр детской городской поликлиники...

Studopedia.info - Студопедия - 2014-2025 год . (0.009 сек.) русская версия | украинская версия