SlideShare a Scribd company logo
Циклы

11 класс


 2013г.
Основные понятия
   Командой повторения или циклом называется такая
форма организации действий, при которой одна и та же
последовательность действий повторяется до тех пор, пока
сохраняется значение некоторого логического выражения.
При изменении значения логического выражения на
противоположное повторения прекращаются (цикл
завершается).
Для организации цикла необходимо выполнить
следующие действия:
• перед началом цикла задать начальное значение
параметра;
• внутри цикла изменять параметр цикла с помощью
оператора присваивания;
• проверять условие повторения или окончания цикла;
• управлять циклом, т.е. переходить к его началу, если
он не закончен, или выходить из цикла в противном
случае.
Разновидности циклических
             алгоритмов
   Циклы с заданным          Итерационные циклы
   числом повторений
Имеется управляющий        Число повторений цикла
параметр, изменяющийся с   заранее не известно.
постоянным шагом в         Реализуется операторами
определенном диапазоне     цикла-пока и цикла-до.
значений. Реализуется
всеми типами операторов
цикла.
Цикл с параметром
   В цикле с известным числом повторений параметр
изменяется в заданном диапазоне.
   Если в цикле изменяется простая переменная, то она
является параметром цикла; если в цикле изменяется
переменная с индексом, то индекс этой переменной
является параметром цикла.
1) For <параметр цикла> := <Выражение1> To
<Выражение2> Do <оператор>;
   По возрастанию параметра.
2) For <параметр цикла> := <Выражение1> Downto
<Выражение2> Do <оператор>;
   По убыванию параметра.
Задача
Дано натуральное n, действительное x. Вычислить

Разработаем алгоритм решения задачи:
1) ввести данные - количество слагаемых n и число x;
2) присвоить переменной, в которой будем хранить степени
   sin x, значение 1; S := 0;
3) присвоить параметру цикла значение 1;
4) если значение параметра цикла меньше n, перейти к
   следующему пункту, иначе к п. 9;
5) вычислить очередную степень sin x;
6) добавить вычисленное значение к сумме;
7) увеличить параметр цикла на 1;
8) перейти к п.4;
9) вывести на печать сумму S;
10) конец.
Программа
Program Summa;
Var S, X, Pr : Real;
   N, I : Integer;
Begin
   Write('Введите число слагаемых и x: ');
   ReadLn(N, X);
   Pr := 1;
{в этой переменной хранятся последовательные степени sin(x)}
   S := 0;
   For I := 1 To N Do
        Begin
                Pr := Pr * Sin(X); {Очередная степень Sin(x)}
                S := S + Pr
        End;
   WriteLn('Сумма равна ', S : 7 : 4)
End.
Итерационные циклы
  По сравнению с циклом с параметром итерационные
циклы являются универсальными. Для организации
итерационных циклов используются операторы цикла с
предусловием while и цикла с постусловием repeat..until.
  Эти операторы не задают закон изменения параметра
цикла, поэтому необходимо перед циклом задавать начальное
значение параметра с помощью оператора присваивания, а
внутри цикла изменять текущее значение этого параметра.
Соответствующие структуры циклов:

while B Do Begin <операторы> End;

Repeat <операторы> Until C;
Здесь B, C — логические выражения.
Для оператора цикла с предусловием проверяется
значение логического выражения, если оно имеет значение
True, то операторы, входящие в цикл, выполняются, в
противном         случае     осуществляется      выполнение
оператора, следующего за циклом.
  Цикл с постусловием выполняется хотя бы один раз.
Затем проверяется значение логического выражения, если
оно False, то операторы, входящие в цикл, выполняются, в
противном случае осуществляется выход из цикла.
  Входить в цикл можно только через его начало, т.е.
нельзя входить внутрь цикла с помощью управляющего
оператора, т.к. в этом случае параметр цикла не определен.
Задача

Возвести число a, введенное с клавиатуры, в степень n.
Задачу будем выполнять за n+1 шаг.
Например, возведем число 2 в степень 3 (23).
0 шаг: 20=1
1 шаг: 21=20*2 (1*2)
2 шаг: 22=21*2 (2*2)
3 шаг: 23=22*2 (4*2)
Программа
Program Stp;
Var P: Real; {результат очередного шага}
    N: Integer; {показатель степени}
     i: Integer; {счетчик числа шагов}
     A: Real; {основание степени}
Begin
  Write('Введите основание степени: ');
  ReadLn(A);
   Write('Введите показатель степени: ');
  ReadLn(N);
   i:=0; {0-й шаг}
  P := 1; {2 в нулевой степени =1}
  while i<abs(N) do {показатель может быть
  отрицательным, поэтому используем для анализа его
  абсолютную величину. Если показатель N=0, то в тело цикла
  не попадаем ни разу, т.к. 0-й шаг уже сделан}
begin
   i:=i+1;
   P:=P*A {получаем результат i-го шага}
End;
If N<0 then {если показатель N – отрицательный,}
   P:=1/P; {то результат должен иметь обратную величину}
Writeln(‘Результат =‘,P:6:3);
readln;
End.
Задача

  Определить число и сумму цифр для любого
натурального числа, не превосходящего maxint
(32767), а также вывести запись числа в обратном
порядке, опуская незначимые нули в его начале.
Программа
Program Zifra;
Var k,s,n: Integer;
  a: longint;
Begin
  Write('Введите натуральное число <= ‘, maxint,’:’);
  ReadLn(n);
   k:=0; a:=0; s:=0;
  repeat
        k:=k+1;
        s:=s+n mod 10;
        a:=a*10+n mod 10;
        n:=n div 10
  until n:=0;
  writeln (‘Число цифр: ‘, k, ‘, сумма цифр: ‘,s);
  writeln(‘Запись в обратном порядке: ‘,a); readln;
End.
Задание
1.   Назовите отличия итерационных циклов и цикла с
     параметром.
2.   Могут ли параметр цикла, его начальное и конечное
     значения в цикле с параметром в языке Pascal быть разных
     типов? Обоснуйте ответ.
3.   Придумайте случаи, когда в программе будут
     использоваться циклы.
4.   Написать 2 варианта программы вычисления N!
     (используя цикл с параметром и цикл с предусловием).
5.   Написать программу, которая подсчитывает произведение
     целых чисел, введенных с клавиатуры. Произведение
     подсчитывается до тех пор, пока вводятся числа в
     интервале от -10 до +10. используйте цикл с
     постусловием.
Источники
• Семакин И.Г. Информатика и ИКТ. Профильный уровень: учебник для
  11 класса/ И.Г.Семакин, Е.К.Хеннер, Л.В.Шестакова.– М.: БИНОМ.
  Лаборатория знаний, 2012.
• Рапаков Г.Г.. Ржеуцкая С.Ю. Turbo Pascal для студентов и школьников.
  – СПб.: БХВ-Петербург, 2005.
• Ушаков Д.М., Юркова Т.А. Паскаль для школьников. – СПб.: Питер.
  2007. – 256с.

More Related Content

What's hot

алгоритм циклический
алгоритм циклическийалгоритм циклический
алгоритм циклический
Khydosilova
 
22 pascal urok_6
22 pascal urok_622 pascal urok_6
22 pascal urok_6Ann Eres
 
Автоматическая оптимизация алгоритмов с помощью быстрого возведения матриц в ...
Автоматическая оптимизация алгоритмов с помощью быстрого возведения матриц в ...Автоматическая оптимизация алгоритмов с помощью быстрого возведения матриц в ...
Автоматическая оптимизация алгоритмов с помощью быстрого возведения матриц в ...
Alexander Borzunov
 
8 3-5
8 3-58 3-5
цикл в блог
цикл в блогцикл в блог
цикл в блогisva69
 
операторы цикла в Visual basic
операторы цикла в Visual basicоператоры цикла в Visual basic
операторы цикла в Visual basicanastastish
 
Циклы
ЦиклыЦиклы
Циклы
slbazhenova
 
презентация урока.
презентация урока.презентация урока.
презентация урока.Olga Zelinskaya
 
Cреда программирования
Cреда программированияCреда программирования
Cреда программированияirina8682
 
Tema4 Иерархия операций
Tema4 Иерархия операцийTema4 Иерархия операций
Tema4 Иерархия операцийdengchunxu
 
Cоставной
CоставнойCоставной
Cоставной
OlgaDask
 
Pascal code. (очереди)
Pascal code. (очереди)Pascal code. (очереди)
Pascal code. (очереди)
Tasya Garizan
 
021
021021
021JIuc
 
Repeat
RepeatRepeat
Repeat
OlgaDask
 
8 3-3
8 3-38 3-3
4 4 pascal_urok_1
4 4 pascal_urok_14 4 pascal_urok_1
4 4 pascal_urok_1Ann Eres
 
лекция1
лекция1лекция1
лекция1ap0f30z
 

What's hot (20)

алгоритм циклический
алгоритм циклическийалгоритм циклический
алгоритм циклический
 
циклы
циклыциклы
циклы
 
22 pascal urok_6
22 pascal urok_622 pascal urok_6
22 pascal urok_6
 
Автоматическая оптимизация алгоритмов с помощью быстрого возведения матриц в ...
Автоматическая оптимизация алгоритмов с помощью быстрого возведения матриц в ...Автоматическая оптимизация алгоритмов с помощью быстрого возведения матриц в ...
Автоматическая оптимизация алгоритмов с помощью быстрого возведения матриц в ...
 
8 3-5
8 3-58 3-5
8 3-5
 
цикл в блог
цикл в блогцикл в блог
цикл в блог
 
операторы цикла в Visual basic
операторы цикла в Visual basicоператоры цикла в Visual basic
операторы цикла в Visual basic
 
Циклы
ЦиклыЦиклы
Циклы
 
презентация урока.
презентация урока.презентация урока.
презентация урока.
 
Cреда программирования
Cреда программированияCреда программирования
Cреда программирования
 
Tema4 Иерархия операций
Tema4 Иерархия операцийTema4 Иерархия операций
Tema4 Иерархия операций
 
Cоставной
CоставнойCоставной
Cоставной
 
Pascal code. (очереди)
Pascal code. (очереди)Pascal code. (очереди)
Pascal code. (очереди)
 
021
021021
021
 
Repeat
RepeatRepeat
Repeat
 
8 3-3
8 3-38 3-3
8 3-3
 
4 4 pascal_urok_1
4 4 pascal_urok_14 4 pascal_urok_1
4 4 pascal_urok_1
 
лекция1
лекция1лекция1
лекция1
 
Циклы
ЦиклыЦиклы
Циклы
 
Тип данных Pointer
Тип данных PointerТип данных Pointer
Тип данных Pointer
 

Similar to циклы

Loop
LoopLoop
Программирование циклических алгоритмов
Программирование циклических алгоритмовПрограммирование циклических алгоритмов
Программирование циклических алгоритмов
Andrey Dolinin
 
язык програмирования
язык програмированияязык програмирования
язык програмирования
Olegmingalev1997
 
10 класс алгоритмы с повторениями
10 класс алгоритмы с повторениями10 класс алгоритмы с повторениями
10 класс алгоритмы с повторениями
leskonog_elena
 
Программирование циклов
Программирование цикловПрограммирование циклов
Программирование циклов
Rainbox
 
Matlab: Вычисление суммы членов ряда
Matlab: Вычисление суммы членов рядаMatlab: Вычисление суммы членов ряда
Matlab: Вычисление суммы членов ряда
Dmitry Bulgakov
 
циклы
циклыциклы
циклы
AndEdr
 
Subprograms in VHDL, Functions in VHDL
Subprograms in VHDL, Functions in VHDLSubprograms in VHDL, Functions in VHDL
Subprograms in VHDL, Functions in VHDL
vitaliykulanov
 
практика 3
практика 3практика 3
практика 3student_kai
 
теория рекурсивных функций
теория рекурсивных функцийтеория рекурсивных функций
теория рекурсивных функций
Mariya_Lastochkina
 
оператор присваивания и процедуры ввода и вывода
оператор присваивания и процедуры ввода и выводаоператор присваивания и процедуры ввода и вывода
оператор присваивания и процедуры ввода и вывода
liza2209
 
12.факультативное занятие по информатике метод математической индукции
12.факультативное занятие по информатике метод математической индукции12.факультативное занятие по информатике метод математической индукции
12.факультативное занятие по информатике метод математической индукции
Kirrrr123
 

Similar to циклы (20)

Loop
LoopLoop
Loop
 
Loop
LoopLoop
Loop
 
Программирование циклических алгоритмов
Программирование циклических алгоритмовПрограммирование циклических алгоритмов
Программирование циклических алгоритмов
 
циклы1
циклы1циклы1
циклы1
 
циклы1
циклы1циклы1
циклы1
 
язык програмирования
язык програмированияязык програмирования
язык програмирования
 
Step 2
Step 2Step 2
Step 2
 
10 класс алгоритмы с повторениями
10 класс алгоритмы с повторениями10 класс алгоритмы с повторениями
10 класс алгоритмы с повторениями
 
Программирование циклов
Программирование цикловПрограммирование циклов
Программирование циклов
 
Matlab: Вычисление суммы членов ряда
Matlab: Вычисление суммы членов рядаMatlab: Вычисление суммы членов ряда
Matlab: Вычисление суммы членов ряда
 
02 if for
02 if for02 if for
02 if for
 
циклы 1 урок
циклы 1 урокциклы 1 урок
циклы 1 урок
 
циклы
циклыциклы
циклы
 
Subprograms in VHDL, Functions in VHDL
Subprograms in VHDL, Functions in VHDLSubprograms in VHDL, Functions in VHDL
Subprograms in VHDL, Functions in VHDL
 
Diskretn analiz
Diskretn analizDiskretn analiz
Diskretn analiz
 
Diskretn analiz
Diskretn analizDiskretn analiz
Diskretn analiz
 
практика 3
практика 3практика 3
практика 3
 
теория рекурсивных функций
теория рекурсивных функцийтеория рекурсивных функций
теория рекурсивных функций
 
оператор присваивания и процедуры ввода и вывода
оператор присваивания и процедуры ввода и выводаоператор присваивания и процедуры ввода и вывода
оператор присваивания и процедуры ввода и вывода
 
12.факультативное занятие по информатике метод математической индукции
12.факультативное занятие по информатике метод математической индукции12.факультативное занятие по информатике метод математической индукции
12.факультативное занятие по информатике метод математической индукции
 

More from Елена Ключева

378 васильев куницын
378 васильев куницын378 васильев куницын
378 васильев куницын
Елена Ключева
 
378 васильев куницын_тезисы
378 васильев куницын_тезисы378 васильев куницын_тезисы
378 васильев куницын_тезисы
Елена Ключева
 
378 васильев куницын_тезисы
378 васильев куницын_тезисы378 васильев куницын_тезисы
378 васильев куницын_тезисы
Елена Ключева
 
плакат орксэ
плакат орксэплакат орксэ
плакат орксэ
Елена Ключева
 
символы
символысимволы
378 vasilyev
378 vasilyev378 vasilyev
378 васильев тезисы
378 васильев тезисы378 васильев тезисы
378 васильев тезисы
Елена Ключева
 
представление графической информации
представление графической информациипредставление графической информации
представление графической информации
Елена Ключева
 
представление текстовой информации
представление текстовой информациипредставление текстовой информации
представление текстовой информации
Елена Ключева
 
как оформить реферат по госту
как оформить реферат по гостукак оформить реферат по госту
как оформить реферат по госту
Елена Ключева
 
программа открытых мероприятий для родителей обучающихся лицея
программа открытых мероприятий для родителей обучающихся лицеяпрограмма открытых мероприятий для родителей обучающихся лицея
программа открытых мероприятий для родителей обучающихся лицея
Елена Ключева
 
представление чисел
представление чиселпредставление чисел
представление чисел
Елена Ключева
 
проектирование исследования
проектирование исследованияпроектирование исследования
проектирование исследования
Елена Ключева
 
виды исследовательских работ
виды исследовательских работвиды исследовательских работ
виды исследовательских работ
Елена Ключева
 
содержательный подход
содержательный подходсодержательный подход
содержательный подход
Елена Ключева
 
научная деятельность
научная деятельностьнаучная деятельность
научная деятельность
Елена Ключева
 
измерение информации
измерение информацииизмерение информации
измерение информации
Елена Ключева
 
шифрование и дешифрование
шифрование и дешифрованиешифрование и дешифрование
шифрование и дешифрование
Елена Ключева
 
стартовая презентация
стартовая презентациястартовая презентация
стартовая презентация
Елена Ключева
 
стартовая презентация
стартовая презентациястартовая презентация
стартовая презентация
Елена Ключева
 

More from Елена Ключева (20)

378 васильев куницын
378 васильев куницын378 васильев куницын
378 васильев куницын
 
378 васильев куницын_тезисы
378 васильев куницын_тезисы378 васильев куницын_тезисы
378 васильев куницын_тезисы
 
378 васильев куницын_тезисы
378 васильев куницын_тезисы378 васильев куницын_тезисы
378 васильев куницын_тезисы
 
плакат орксэ
плакат орксэплакат орксэ
плакат орксэ
 
символы
символысимволы
символы
 
378 vasilyev
378 vasilyev378 vasilyev
378 vasilyev
 
378 васильев тезисы
378 васильев тезисы378 васильев тезисы
378 васильев тезисы
 
представление графической информации
представление графической информациипредставление графической информации
представление графической информации
 
представление текстовой информации
представление текстовой информациипредставление текстовой информации
представление текстовой информации
 
как оформить реферат по госту
как оформить реферат по гостукак оформить реферат по госту
как оформить реферат по госту
 
программа открытых мероприятий для родителей обучающихся лицея
программа открытых мероприятий для родителей обучающихся лицеяпрограмма открытых мероприятий для родителей обучающихся лицея
программа открытых мероприятий для родителей обучающихся лицея
 
представление чисел
представление чиселпредставление чисел
представление чисел
 
проектирование исследования
проектирование исследованияпроектирование исследования
проектирование исследования
 
виды исследовательских работ
виды исследовательских работвиды исследовательских работ
виды исследовательских работ
 
содержательный подход
содержательный подходсодержательный подход
содержательный подход
 
научная деятельность
научная деятельностьнаучная деятельность
научная деятельность
 
измерение информации
измерение информацииизмерение информации
измерение информации
 
шифрование и дешифрование
шифрование и дешифрованиешифрование и дешифрование
шифрование и дешифрование
 
стартовая презентация
стартовая презентациястартовая презентация
стартовая презентация
 
стартовая презентация
стартовая презентациястартовая презентация
стартовая презентация
 

циклы

  • 2. Основные понятия Командой повторения или циклом называется такая форма организации действий, при которой одна и та же последовательность действий повторяется до тех пор, пока сохраняется значение некоторого логического выражения. При изменении значения логического выражения на противоположное повторения прекращаются (цикл завершается).
  • 3. Для организации цикла необходимо выполнить следующие действия: • перед началом цикла задать начальное значение параметра; • внутри цикла изменять параметр цикла с помощью оператора присваивания; • проверять условие повторения или окончания цикла; • управлять циклом, т.е. переходить к его началу, если он не закончен, или выходить из цикла в противном случае.
  • 4. Разновидности циклических алгоритмов Циклы с заданным Итерационные циклы числом повторений Имеется управляющий Число повторений цикла параметр, изменяющийся с заранее не известно. постоянным шагом в Реализуется операторами определенном диапазоне цикла-пока и цикла-до. значений. Реализуется всеми типами операторов цикла.
  • 5. Цикл с параметром В цикле с известным числом повторений параметр изменяется в заданном диапазоне. Если в цикле изменяется простая переменная, то она является параметром цикла; если в цикле изменяется переменная с индексом, то индекс этой переменной является параметром цикла. 1) For <параметр цикла> := <Выражение1> To <Выражение2> Do <оператор>; По возрастанию параметра. 2) For <параметр цикла> := <Выражение1> Downto <Выражение2> Do <оператор>; По убыванию параметра.
  • 6. Задача Дано натуральное n, действительное x. Вычислить Разработаем алгоритм решения задачи: 1) ввести данные - количество слагаемых n и число x; 2) присвоить переменной, в которой будем хранить степени sin x, значение 1; S := 0; 3) присвоить параметру цикла значение 1; 4) если значение параметра цикла меньше n, перейти к следующему пункту, иначе к п. 9; 5) вычислить очередную степень sin x; 6) добавить вычисленное значение к сумме; 7) увеличить параметр цикла на 1; 8) перейти к п.4; 9) вывести на печать сумму S; 10) конец.
  • 7. Программа Program Summa; Var S, X, Pr : Real; N, I : Integer; Begin Write('Введите число слагаемых и x: '); ReadLn(N, X); Pr := 1; {в этой переменной хранятся последовательные степени sin(x)} S := 0; For I := 1 To N Do Begin Pr := Pr * Sin(X); {Очередная степень Sin(x)} S := S + Pr End; WriteLn('Сумма равна ', S : 7 : 4) End.
  • 8. Итерационные циклы По сравнению с циклом с параметром итерационные циклы являются универсальными. Для организации итерационных циклов используются операторы цикла с предусловием while и цикла с постусловием repeat..until. Эти операторы не задают закон изменения параметра цикла, поэтому необходимо перед циклом задавать начальное значение параметра с помощью оператора присваивания, а внутри цикла изменять текущее значение этого параметра.
  • 9. Соответствующие структуры циклов: while B Do Begin <операторы> End; Repeat <операторы> Until C; Здесь B, C — логические выражения.
  • 10. Для оператора цикла с предусловием проверяется значение логического выражения, если оно имеет значение True, то операторы, входящие в цикл, выполняются, в противном случае осуществляется выполнение оператора, следующего за циклом. Цикл с постусловием выполняется хотя бы один раз. Затем проверяется значение логического выражения, если оно False, то операторы, входящие в цикл, выполняются, в противном случае осуществляется выход из цикла. Входить в цикл можно только через его начало, т.е. нельзя входить внутрь цикла с помощью управляющего оператора, т.к. в этом случае параметр цикла не определен.
  • 11. Задача Возвести число a, введенное с клавиатуры, в степень n. Задачу будем выполнять за n+1 шаг. Например, возведем число 2 в степень 3 (23). 0 шаг: 20=1 1 шаг: 21=20*2 (1*2) 2 шаг: 22=21*2 (2*2) 3 шаг: 23=22*2 (4*2)
  • 12. Программа Program Stp; Var P: Real; {результат очередного шага} N: Integer; {показатель степени} i: Integer; {счетчик числа шагов} A: Real; {основание степени} Begin Write('Введите основание степени: '); ReadLn(A); Write('Введите показатель степени: '); ReadLn(N); i:=0; {0-й шаг} P := 1; {2 в нулевой степени =1} while i<abs(N) do {показатель может быть отрицательным, поэтому используем для анализа его абсолютную величину. Если показатель N=0, то в тело цикла не попадаем ни разу, т.к. 0-й шаг уже сделан}
  • 13. begin i:=i+1; P:=P*A {получаем результат i-го шага} End; If N<0 then {если показатель N – отрицательный,} P:=1/P; {то результат должен иметь обратную величину} Writeln(‘Результат =‘,P:6:3); readln; End.
  • 14. Задача Определить число и сумму цифр для любого натурального числа, не превосходящего maxint (32767), а также вывести запись числа в обратном порядке, опуская незначимые нули в его начале.
  • 15. Программа Program Zifra; Var k,s,n: Integer; a: longint; Begin Write('Введите натуральное число <= ‘, maxint,’:’); ReadLn(n); k:=0; a:=0; s:=0; repeat k:=k+1; s:=s+n mod 10; a:=a*10+n mod 10; n:=n div 10 until n:=0; writeln (‘Число цифр: ‘, k, ‘, сумма цифр: ‘,s); writeln(‘Запись в обратном порядке: ‘,a); readln; End.
  • 16. Задание 1. Назовите отличия итерационных циклов и цикла с параметром. 2. Могут ли параметр цикла, его начальное и конечное значения в цикле с параметром в языке Pascal быть разных типов? Обоснуйте ответ. 3. Придумайте случаи, когда в программе будут использоваться циклы. 4. Написать 2 варианта программы вычисления N! (используя цикл с параметром и цикл с предусловием). 5. Написать программу, которая подсчитывает произведение целых чисел, введенных с клавиатуры. Произведение подсчитывается до тех пор, пока вводятся числа в интервале от -10 до +10. используйте цикл с постусловием.
  • 17. Источники • Семакин И.Г. Информатика и ИКТ. Профильный уровень: учебник для 11 класса/ И.Г.Семакин, Е.К.Хеннер, Л.В.Шестакова.– М.: БИНОМ. Лаборатория знаний, 2012. • Рапаков Г.Г.. Ржеуцкая С.Ю. Turbo Pascal для студентов и школьников. – СПб.: БХВ-Петербург, 2005. • Ушаков Д.М., Юркова Т.А. Паскаль для школьников. – СПб.: Питер. 2007. – 256с.