В случае ЦИКЛА-ПОКА тело цикла исполняется до тех пор, пока условие истинно; в случае ЦИКЛА-ДО тело цикла исполняется до того, как условие станет истинным.
Наконец, структура следование имеет вид (см. рис. 7):
Рис. 7. Следование
Для записи базовых структур используется специальная нотация (см. табл. 1): ([7], табл. 40, с. 146-147).
Алгоритмический язык Бейсик (BASIC – «Beqinners Purpоse Symbolic Instruction Code), построенный по принципу построчной нотации, позволяет представить базовые структуры алгоритмов следующим образом:
Полная развилка
да IFPTHEN
Выход нет
Неполная развилка
да
IF PTHEN
нет Выход
ЦИКЛ-ПОКА
IFPTHEN
да
Выход нет
ЦИКЛ-ДО
нет
да Выход
Здесь еще раз (из методических соображений) приведены блок-схемы базовых алгоритмических структур.
Пример 4. ([8], c. 112). Составить программу решения уравнения для произвольных значений числовых параметров и
Составим программу с использованием операторов DАТА и READ для трех пар значений и иллюстрирующих работу алгоритма в каждом из трех логически возможных случаев:
1Ø REM УРАВНЕНИЕ
2Ø READ
3Ø IF A= Ø THEN 7 Ø
4Ø LET
5Ø PRINT «РЕШЕНИЕ
6Ø GOTO 11Ø
7Ø IF Ø THEN 1Ø
8Ø PRINT «РЕШЕНИЙ НЕТ»
9Ø GOTO 11Ø
10 Ø PRINT «РЕШЕНИЙ БЕСК. МН.»
11Ø GOTO 2Ø
12 Ø DATA Ø, Ø, Ø, 4, 2, 3
13 Ø END
Пример 5 ([8], c.115). Составить программу нахождения наибольшего общего делителя (НОД) двух целых положительных чисел и .
Программа использует структуру ЦИКЛ-ПОКА (см. пример 3) и имеет вид:
1Ø REM НОД ()
2Ø INPT
3Ø
4Ø IF THEN 8Ø
5Ø IF THEN 7Ø
6Ø GOTO 4Ø
7Ø GOTO 4Ø
8Ø PRINT «НОД»
9Ø GOTO 2Ø
Часто один и тот же алгоритм можно построить с использованием разных базовых структур.
Пример 6. ([8], c.116-117). Составить программу вычисления (генерирования) 100 членов последовательности
Способ 1. Используя структуру ЦИКЛ-ПОКА по блок-схеме (см. рис. 8),
+
–
Рис. 8. Генерирование членов последовательности с ЦИКЛОМ-ПОКА
Получаем программу:
1Ø REM
2Ø REM ЦИКЛ-ПОКА
3Ø
4Ø IF Ø Ø THEN 9Ø
5Ø
6Ø PRINT
7Ø
8Ø GOTO 4Ø
9Ø END
Способ 2. Используя структуру ЦИКЛ-ДО по блок-схеме (см. рис. 9),
–
К > 100
+
Рис. 9. Генерирование членов последовательности с ЦИКЛОМ-ДО
Получим программу:
1Ø REM
2Ø REM ЦИКЛ-ДО
3Ø
4Ø
5Ø PRINT
6Ø
8Ø IF Ø Ø THEN 4Ø
9Ø END
В заключение рассмотрим особый случай, когда условием в базовой структуре ЦИКЛ-ДО является неравенство а параметр цикла изменяется от по закону где заданный шаг (разность арифметической прогрессии).
Для программирования таких циклов в Бейсике используются операторы FOR и NEXT (начало цикла и конец цикла), а также оператор STEP (шаг цикла). Если шаг цикла равен +1, то указание STEP 1 может опускаться.
Уважаемый посетитель!
Чтобы распечатать файл, скачайте его (в формате Word).
Ссылка на скачивание - внизу страницы.