Алгоритмическая конструкция «цикл»
Если при решении задачи какое-либо действие или группу действий необходимо выполнять многократно, то в алгоритмах для таких задач применяется алгоритмическая конструкция «цикл». Такая конструкция обеспечивает многократное выполнение некоторой совокупности действий, которая называется телом цикла. Рассмотрим основные разновидности циклов:
Цикл типа «пока»: повторяй, пока выполняется условие Услови е Тело цикла да нет Цикл «пока» с предусловием: тело цикла выполняется до тех пор, пока выполняется условие, записанное перед телом цикла.
Цикл типа «пока»: повторяй, пока выполняется условие Услови е Тело цикла да нет Цикл «пока» с послеусловием: тело цикла выполняется до тех пор, пока выполняется условие, записанное после тела цикла.
Организация цикла «пока» в языке программирования BASIC Для организации цикла «пока» в языке BASIC применяются операторы: DO (выполнять), WHILE (пока), LOOP (повторяй) DO LOOP WHILE проверка условия в конце цикла DO WHILE LOOP проверка условия в начале цикла Действия, образующие тело цикла, исполняются до тех пор, пока выполняется условие, записанное после оператора WHILE
Задание 1. Составить алгоритм для вычисления факториала натурального числа n. Факториалом числа называется произведение натуральных чисел от единицы до заданного числа: f=n!= 123 …n (Например, факториал числа 4 равен: 4!=1234=24) Алгоритм изобразить в виде блок-схемы и записать на языке программирования BASIC
Блок-схема алгоритма для вычисления факториала натурального числа n. (цикл «пока»: проверка условия в начале цикла) i n f = f i i= i + 1 f конец нет да n начало f = 1i = 1f = 1i = 1
Программа на языке BASIC для вычисления факториала натурального числа n. (цикл «пока»: проверка условия в начале цикла) 10 INPUT"ВВЕДИТЕ НАТУРАЛЬНОЕ ЧИСЛО"; N 20 LET F = 1 30 LET I = 1 40 DO WHILE I <= N 50 LET F = F * I 60 LET I = I LOOP 80 PRINT"ФАКТОРИАЛ ДАННОГО ЧИСЛА РАВЕН"; F 90 END
Блок-схема алгоритма для вычисления факториала натурального числа n. (цикл «пока»: проверка условия в конце цикла) i n f = f i i = i + 1 f конец нет да n начало f = 1 i = 1
Программа на языке BASIC для вычисления факториала натурального числа n. (цикл «пока»: проверка условия в конце цикла) 10 INPUT"ВВЕДИТЕ НАТУРАЛЬНОЕ ЧИСЛО"; N 20 LET F = 1 30 LET I = 1 40 DO 50 LET F = F * I 60 LET I = I LOOP WHILE I <= N 80 PRINT"ФАКТОРИАЛ ДАННОГО ЧИСЛА РАВЕН"; F 90 END
Цикл типа «для» (цикл с параметром) Предписывает выполнять тело цикла для всех значений некоторой переменной, называемой параметром цикла в заданном диапазоне. начального значения до конечного значения. Внутри блока записывается параметр цикла (i), для которого указываются его начальное значение (n), конечное значение(k) и шаг (h) изменения значения параметра для каждого повторения. i = n; k; h Тело цикла
Организация цикла «для» в языке программирования BASIC Для организации цикла «ДЛЯ» в языке BASIC применяются операторы FOR (для)NEXT(следующий)STEP (шаг) FOR = TO STEP NEXT Часть заголовка цикла - STEP - может отсутствовать. В этом случае считается, что параметр цикла увеличивается каждый раз на 1. Оператор цикла для работает следующим образом: при входе в цикл параметру присваивается начальное значение. Проверяется условие значение параметра не больше конечного значения при положительном шаге изменения параметра или условие значение параметра не меньше конечного значения при отрицательном шаге. Если проверяемое условие истинно, то выполняется тело цикла, затем к значению параметра прибавляется шаг изменения и происходит возврат к проверке условия. При невыполнении условия управление передается оператору, следующему за признаком конца цикла NEXT.
Блок-схема алгоритма для вычисления факториала натурального числа n (цикл «для» - цикл с параметром) начало n f=1 i = 1; n f = f i n конец
Программа на языке BASIC для вычисления факториала натурального числа n. (цикл «для», то есть цикл с параметром) 10 INPUT"ВВЕДИТЕ НАТУРАЛЬНОЕ ЧИСЛО";N 20 LET F = 1 30 FOR I = 1 TO N 40 LET F = F * I 50 NEXT I 60 PRINT"ФАКТОРИАЛ ДАННОГО ЧИСЛА РАВЕН"; F 70 END
Задание 2 Составить алгоритм и программу на языке BASIC для вычисления суммы первых N натуральных чётных чисел: S=2+4+6+… Применить цикл «пока» и цикл «для».
Блок-схема алгоритма и программа на языке BASIC с циклом «пока» (проверка условия в конце цикла) начало s=0 k=2 i=0 i<n s=s +k k=k+2 i= i +1 n s конец да нет 10 INPUT "ВВЕДИТЕ НАТУРАЛЬНОЕ ЧИСЛО";N 20 LET S=0 30 LET K=2 40 LET I=0 50 DO 60 LET S=S+K 70 LET K=K+2 80 LET I=I+1 90 LOOP WHILE I<N 100 PRINT "СУММА РАВНА"; S 110 END
Блок-схема алгоритма и программа на языке BASIC с циклом «пока» (проверка условия в начале цикла) начало s=0 k=2 i=0 i<n s=s +k k=k+2 i= i +1 n s конец да нет 10 INPUT"ВВЕДИТЕ НАТУРАЛЬНОЕ ЧИСЛО";N 20 LET S=0 30 LET K=2 40 LET I=0 50 DO WHILE I<N 60 LET S=S+K 70 LET K=K+2 80 LET I=I+1 90 LOOP 100 PRINT "СУММА РАВНА"; S 110 END
Блок-схема алгоритма и программа на языке BASIC с циклом «для» (цикл с параметром) начало s=0 k=2n n s=s +i s конец i= 2; k; 2 10 INPUT"ВВЕДИТЕ НАТУРАЛЬНОЕ ЧИСЛО";N 20 LET S=0 30 LET K=2*N 40 FOR I=2 TO K STEP 2 60 LET S=S+I 70 NEXT I 80 PRINT "СУММА РАВНА"; S 90 END