СДЕЛАЙТЕ СВОИ УРОКИ ЕЩЁ ЭФФЕКТИВНЕЕ, А ЖИЗНЬ СВОБОДНЕЕ

Благодаря готовым учебным материалам для работы в классе и дистанционно

Скидки до 50 % на комплекты
только до

Готовые ключевые этапы урока всегда будут у вас под рукой

Организационный момент

Проверка знаний

Объяснение материала

Закрепление изученного

Итоги урока

Циклические алгоритмы

Категория: Информатика

Нажмите, чтобы узнать подробности

Циклические алгоритмы.

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

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

Просмотр содержимого документа
«Циклические алгоритмы»


МКОУ СОШ № 1 Курского муниципального района Ставропольского края

Учитель информатики : Перверзева Елена Геннадьевна

Циклические алгоритмы.

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

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


Циклы типа «пока»

Заранее неизвестно число повторений

«Делай» (DO) «петлю» (LOOP) до тех пор, «пока» (WHILE) условие выполняется, или «пока» (UNTIL) условие не будет выполнено.


Цикл с предусловием Выполняется: пока истинно условие цикла, повторяется выполнение тела цикла.

DO [{WHILE | UNTIL } выражение ]

[ операторы ]

LOOP


Цикл с постусловием

DO

[ операторы ]

LOOP [{WHILE | UNTIL } выражение ]


Цикл без счетчика

WHILE условие

[ операторы ]

WEND


Цикл типа «для»

Заранее известно число повторений


Цикл с параметром

FOR счетчик = начало TO конец [STEP шаг]

[ операторы ]

NEXT [счетчик] [,счетчик]



Задача 1.


Эту задачу можно решать любым способом.

Найти факториал числа N.

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

INPUT N

F = 1

R = 1

DO WHILE R

F = F * R

R = R + 1

LOOP

PRINT F


INPUT N

F = 1

R = 1

DO UNTIL R N

F = F * R

R = R + 1

LOOP

PRINT F

Цикл с постусловием

CLS

INPUT N

F = 1

R = 1

DO

F = F * R

R = R + 1

LOOP WHILE R

PRINT F

CLS

INPUT N

F = 1

R = 1

DO

F = F * R

R = R + 1

LOOP UNTIL R N

PRINT F

Цикл с параметром


Цикл без счетчика


CLS

INPUT N

F = 1

FOR i = 1 TO N

F = F * i

NEXT i

PRINT F

INPUT N

F = 1

R = 1

WHILE R

F = F * R

R = R + 1

WEND

PRINT F



Задача 2.

Такого типа задачи удобно решать, используя Цикл с параметром.

1. Старинная задача. Сколько можно купить быков, коров и телят, если плата за быка 10 рублей, за корову – 5 рублей, за телёнка – полтинник (0,5 рубля), если на 100 рублей надо купить 100 голов скота.


b+k+t = 100

10b+5k+0.5t=100

t=100-(b+k)

FOR b=0 TO 10

FOR k=0 TO 20

IF 20*b+10*k+t=200 THEN PRINT “быков “; b; “ коров “; k “ телят “ ; t

NEXT k

NEXT b


2. Сколько всего кур и сколько кроликов, если у них на всех 20 голов и 52 ноги.

х+у=20

2х+4у=52


FOR x = 0 TO 20

y = 20 - x

IF 2 * x + 4 * y = 52 THEN PRINT "кур "; x, "кроликов"; y

NEXT x



Скачать

Рекомендуем курсы ПК и ППК для учителей

Вебинар для учителей

Свидетельство об участии БЕСПЛАТНО!