1 Программирование на языке Бейсик Тема. Циклы
2 Циклы Цикл – это многократное выполнение одинаковой последовательности действий. цикл с известным числом шагов цикл с неизвестным числом шагов (цикл с условием) Задача. Вывести на экран квадраты и кубы целых чисел от 1 до 8 (от a до b ). Особенность: одинаковые действия выполняются 8 раз. Можно ли решить известными методами? ?
Схема простейшего цикла Любой цикл характеризуется тремя стадиями: началом цикла; телом цикла; концом цикла. Оператор цикла For...Next
4 Алгоритм начало i, i2, i3 конец нет да i
5 Алгоритм (с блоком «цикл») начало i, i2, i3 конец i2 = i * i i3 = i2 * i i = 1,8 блок «цикл» тело цикла
6 Программа for i=1 to 8 i2 = i*i i3 = i2*i print i,i2,i3 next i end переменная цикла переменная цикла начальное значение конечное значение
7 Цикл с уменьшением переменной Задача. Вывести на экран квадраты и кубы целых чисел от 8 до 1 (в обратном порядке). Особенность: переменная цикла должна уменьшаться. Решение: for i=8 to 1 step -1 i2 = i*i i3 = i2*i print i,i2,i3 next i end for i=8 to 1 step -1 i2 = i*i i3 = i2*i print i,i2,i3 next i end
8 Цикл с переменной for = to {тело цикла} next for = to {тело цикла} next Увеличение переменной на 1: for = to step –1 {тело цикла} next for = to step –1 {тело цикла} next Уменьшение переменной на 1:
9 Цикл с переменной Особенности: если конечное значение меньше начального, цикл ( to ) не выполняется ни разу (проверка условия в начале цикла, цикл с предусловием) Увеличение переменной более чем 1: for = to step {тело цикла} next for = to step {тело цикла} next
10 for i:=1 to 9 step 2 i2 = i*i i3 = i2*i print i,i2,i3 end for i:=1 to 9 step 2 i2 = i*i i3 = i2*i print i,i2,i3 end Как изменить шаг? Задача. Вывести на экран квадраты и кубы нечётных целых чисел от 1 до 9. Особенность: переменная цикла должна увеличиваться на 2. Решение: выполняется только для нечетных i
11 Задания «4»: Ввести a и b и вывести квадраты и кубы чисел от a до b. Пример: Введите границы интервала: «5»: Вывести квадраты и кубы 10 чисел следующей последовательности: 1, 2, 4, 7, 11, 16, … Пример:
12 Программирование на языке Бейсик Тема. Циклы с условием
Итерационный цикл – это цикл, для которого нельзя указать число повторений, и проверка окончания которого происходит по достижению нужного условия. Блок-схема базовых структур. Цикл - пока (может не выполняться ни разу) Цикл - до (выполняется хотя бы раз)
While Wend Цикл WHILE … WEND. Цикл - пока Он применяется, когда известно условие цикла, но неизвестно число повторений цикла. Цикл повторяется до тех пор, пока условие, записанное в заголовке WHILE, остается истинным.
Логика цикла WHILE…WEND. Работает он следующим образом. Сначала записывается оператор while с условием, при котором цикл выполняется. Ключевое слово wend аналогично по своему назначению слову next, т. е. является последней строкой цикла. Всякий раз, доходя до wend, компьютер проверяет, выполняется ли условие, указанное оператором while. Если оно не выполняется, то программа переходит к исполнению операторов, следующих за wend. Если же выполняется, то цикл повторяется снова.
16 Цикл с условием while {тело цикла} wend while {тело цикла} wend Особенности: можно использовать сложные условия. В этом случае используются логические операции and, or или not: условие пересчитывается каждый раз при входе в цикл while (a
17 Цикл с условием Особенности: если условие на входе в цикл ложно, цикл не выполняется ни разу если условие никогда не станет ложным, программа зацикливается a = 4: b = 6 while a > b a = a – b wend a = 4: b = 6 while a > b a = a – b wend a = 4: b = 6 while a < b do d = a + b wend a = 4: b = 6 while a < b do d = a + b wend
18 Замена for на while и наоборот for i=1 to 10 {тело цикла} Next i for i=1 to 10 {тело цикла} Next i i = 1 while i = b {тело цикла} i = i - 1 wend Замена while на for возможна только тогда, когда можно заранее рассчитать число шагов цикла. Замена цикла for на while возможна всегда.
i = 1 while i
Пример. В подъезде N ступенек. Сколько шагов будет сделано, если шагать через 3 ступеньки. ' KS - количество ступенек ' KH - количество шагов INPUT "Введите количество ступенек";N KS=0 KH=0 WHILE KS
Пример 3. Составить программу суммирования всех натуральных чисел (начиная с 1) до момента, пока сумма не превысит На экран выводится количество слагаемых в сумме и значение суммы. REM S = 0 к = о WHILE S