SlideShare a Scribd company logo
1 of 27
8
За новою програмою
Урок 55
Цикл з
передумовою
8
ЗапитанняРозділ 6
§ 6.7
1. Який вигляд має і як виконується команда циклу з
лічильником в Object Pascal?
2. Який вигляд має і як виконується блок-схема циклу з
передумовою?
3. У яких випадках в
алгоритмах
використовується цикл з
лічильником, а в яких -
цикл з передумовою?
8
Цикл з передумовоюРозділ 6
§ 6.7
Ви вже знаєте, що цикл з передумовою як фрагмент
алгоритму починається з команди перевірки умови й
результатом виконання цієї команди може бути:
Істина (Так, true) Хиба (Ні, false)
І залежно від результату виконання цієї команди –
виконуватимуться:
Команди
тіла циклу
Команда алгоритму,
наступна за циклом
або
8
Цикл з передумовоюРозділ 6
§ 6.7
У загальному випадку у цій команді визначається
значення певного логічного виразу, яке може бути:
True Falseабо
8
Цикл з передумовоюРозділ 6
§ 6.7
Загальний вигляд блок-схеми циклу з передумовою
такий:
8
Команда циклу з передумовою в
Object PascalРозділ 6
§ 6.7
Команда циклу з передумовою в мові програмування
Object Pascal має такий вигляд:
While <логічний вираз>
Then begin
<команди тіла циклу>
end;
(англ. while - поки).
8
Команда циклу з передумовою в
Object PascalРозділ 6
§ 6.7
Виконання цієї команди відбувається так:
обчислюється значення логічного виразу; якщо це
значення true, то виконуються команди тіла циклу,
після чого знову обчислюється значення логічного
виразу, і якщо це значення знову true, то знову
виконуються команди тіла циклу, після чого знову
обчислюється значення логічного виразу;
якщо значення логічного виразу
дорівнює false, то команди тіла циклу не
виконуються, а виконується команда,
наступна за циклом.
8
Команда циклу з передумовою в
Object PascalРозділ 6
§ 6.7
Звертаємо вашу увагу:
 якщо в тілі циклу лише
одна команда, то
операторні дужки begin і
end можна не ставити;
 серед команд тіла циклу
можуть бути й лінійні
фрагменти, і розгалуження,
й інші цикли.
8
Команда циклу з передумовою в
Object PascalРозділ 6
§ 6.7
Розглянемо задачу, алгоритм розв'язування якої
містить цикл з передумовою.
Задача. Скільки потрібно взяти
доданків, перший з яких дорівнює
заданому дійсному числу, а кожний
наступний на 3 більший від
попереднього, щоб їхня сума
перевищила 100?
8
Команда циклу з передумовою в
Object PascalРозділ 6
§ 6.7
Даними цієї задачі є перший доданок. Вводитимемо
його в поле.
Перед початком циклу присвоїмо:
Змінній s Змінній n
яку використаємо
для збереження
суми, значення
першого доданка
яку використаємо для збереження
кількості взятих доданків, присвоїмо
значення 1, бо в сумі вже враховано
один (перший) доданок.
8
Команда циклу з передумовою в
Object PascalРозділ 6
§ 6.7
До суми потрібно додавати наступні доданки, поки ця
сума буде меншою, або дорівнюватиме 100. Тому
логічний вираз у заголовку циклу матиме вигляд
s <= 100
У тілі циклу шукатимемо наступний доданок,
додаватимемо його до поточного значення суми і
збільшуватимемо кількість доданих доданків на 1.
8
Команда циклу з передумовою в
Object PascalРозділ 6
§ 6.7
Відповідний фрагмент проекту матиме такий вигляд:
var a, s: real; n: integer;
begin
a := StrToFloat (Edit1.Text);
s := a; n := 1;
while s <=100 do
begin
a := a+3; s := s+a;
n := n+1;
end;
Label1.Caption := IntToStr(n);
end;
8
Оператор циклу
з передумовою WhileРозділ 8
§ 39
Необхідно задавати початкові
значення змінних,
використовуваних у циклі.
Якщо при першій перевірці
умова виявиться хибною, тіло
циклу While не виконається
жодного разу.
8
Оператор циклу
з передумовою WhileРозділ 8
§ 39
Виконати цикл із передумовою при різних початкових
значеннях змінної:
While X <= 10 do X := Х+1;
Початкове
значення Х
Значення Х після
виконання циклу
Кількість
повторень
7 11 4
10 11 1
15 15 0
8
Оператор циклу
з передумовою WhileРозділ 8
§ 39
Логіка цього циклу змушує програму працювати вічно
(нескінченний цикл).
Num := 0;
While Num < 20 do
Label1.Caption := IntToStr(Num)
Для переривання
нескінченного циклу
треба натиснути
сполучення клавіш
Ctrl + Break.
8
Оператор циклу
з передумовою WhileРозділ 8
§ 39
Щоб побачити зміну значень у
ході виконання циклу, в тіло
циклу включать виклик методу:
Application.ProcessMessages
8
Розділ 8
§ 39
var A: Integer;
begin
А := 1; // Початкове значення А
While А о 100 do
begin
А := А + 1;
Label1.Caption := IntToStr(A);
Application.ProcessMessages; // обробка повідомлень
Sleep(100); // зупинка на 0,1 с
end;
end;
Поки А менше за 100, збільшувати значення А на одиницю і
виводити значення змінної у Label.
Для призупинення роботи програми на 100 мілісекунд
використано процедуру Sleep.
8
Алгоритм обчислення суми n членів
числової послідовностіРозділ 8
§ 39
Алгоритм обчислення n-го члена послідовності
натуральних чисел і суми п членів складається з таких
дій:
1
•задаються початкові значення А, — першого члена послідовності,
n — кількості членів, які потрібно обчислити;
2
•задаються початкові значення лічильника членів послідовності
(і := 0) і суми (S := 0);
3
•поки номер і-то члена послідовності, який обчислено, не досягне
значення n— заданої кількості членів, повторюються дії: номер
поточного доданка збільшується на 1; обчислюється значення
наступного доданка А, обчислене значення А додається до суми S.
8
Алгоритм обчислення суми n членів
числової послідовностіРозділ 8
§ 39
Знайти суму 20 елементів послідовності чисел
2,5; 3,0; 3,5; 4,0...
// Задаються початкові значення:
S := 0; // суми S
і := 0; // лічильника доданків і
А := 2.5; // доданка А
While і < 20 do begin
S := S + A; // додається до суми S
А := А + 0.5; // обчислюється наступне значення доданка А
і := і + 1
end;
8
Розділ 8
§ 39
var і: Integer; A, S: Double;
begin
// Задаються:
S:=1; // початкове значення суми S
А:=1; // значення першого доданка А
і:=1; // номер першого доданка
While A>0.01 do begin
і := і + 1;
А := 1/і; // Обчислення доданка А
S := S + А;
Label2.Caption := FormatFloat('0.####', A);
end;
Edit1.Text := FormatFloat('0.###', S);
end;
Знайти суму всіх елементів послідовності 1,
𝟏
𝟐
,
𝟏
𝟑
,
𝟏
𝟒
,
𝟏
𝟓
…, значення
яких не менше за 0,01.
Під час складання програми будемо вважати, що точність
досягнуто, якщо черговий доданок менший за значення точності.
8
Розгадайте ребус
Цикл
Розділ 6
§ 6.7
8
Розгадайте ребус
Передумова
Розділ 6
§ 6.7
8
Дайте відповіді на запитання
1. Який вигляд має блок-схема циклу з передумовою?
Поясніть виконання цього циклу.
2. Чи можуть команди тіла циклу з передумовою не
виконуватись жодного разу? Поясніть свою відповідь.
Наведіть приклади.
3. Чи може виконання циклу з передумовою
ніколи не закінчитися? Поясніть свою
відповідь. Наведіть приклади.
4. Чим відрізняються між собою цикл з
лічильником і цикл з передумовою?
Розділ 6
§ 6.7
8
Дайте відповіді на запитання
5. У чому полягають відмінності у виконанні основних
алгоритмічних структур: слідування, розгалуження,
цикл з лічильником і цикл з передумовою?
6. Який загальний вигляд команди циклу з
передумовою в Object Pascal?
7. Як виконується команда циклу з передумовою
в Object Pascal?
Розділ 6
§ 6.7
8
Домашнє завдання
Проаналізувати
§ 6.7, ст. 217-220
Розділ 6
§ 6.7
8
Працюємо за комп’ютером
Сторінка
219-220
Розділ 6
§ 6.7
8
Дякую за увагу!
За новою програмою
Урок 55

More Related Content

What's hot

урок 19 цикли Складання програм
урок 19 цикли Складання програмурок 19 цикли Складання програм
урок 19 цикли Складання програм
Helen Pat
 

What's hot (13)

Урок 44. Цикл з післяумовою
Урок 44. Цикл з післяумовоюУрок 44. Цикл з післяумовою
Урок 44. Цикл з післяумовою
 
Урок 45. Складання циклічних алгоритмів опрацювання величин
Урок 45. Складання циклічних алгоритмів опрацювання величинУрок 45. Складання циклічних алгоритмів опрацювання величин
Урок 45. Складання циклічних алгоритмів опрацювання величин
 
Урок 57 8 клас
Урок 57 8 класУрок 57 8 клас
Урок 57 8 клас
 
26032020
2603202026032020
26032020
 
Урок 38. Алгоритми з розгалуженням
Урок 38. Алгоритми з розгалуженнямУрок 38. Алгоритми з розгалуженням
Урок 38. Алгоритми з розгалуженням
 
Lr7
Lr7Lr7
Lr7
 
Tema 9
Tema 9Tema 9
Tema 9
 
Базові алгоритмічні структури. Типи алгоритмів
Базові алгоритмічні структури. Типи алгоритмівБазові алгоритмічні структури. Типи алгоритмів
Базові алгоритмічні структури. Типи алгоритмів
 
Lr7
Lr7Lr7
Lr7
 
war7classdist1.pptx
war7classdist1.pptxwar7classdist1.pptx
war7classdist1.pptx
 
урок 19 цикли Складання програм
урок 19 цикли Складання програмурок 19 цикли Складання програм
урок 19 цикли Складання програм
 
4
44
4
 
Базові структури алгоритмів. Конструювання алгоритмів
Базові структури алгоритмів. Конструювання алгоритмівБазові структури алгоритмів. Конструювання алгоритмів
Базові структури алгоритмів. Конструювання алгоритмів
 

Similar to Урок 55 8 клас

Konspekt uroku
Konspekt urokuKonspekt uroku
Konspekt uroku
Vasiliy66
 
Konspekt uroku
Konspekt urokuKonspekt uroku
Konspekt uroku
Vasiliy66
 
Operator cikly z napametpom
Operator cikly z napametpomOperator cikly z napametpom
Operator cikly z napametpom
metallurg056
 
урок 11 виведення значень мова Паскаль
урок 11 виведення значень мова Паскальурок 11 виведення значень мова Паскаль
урок 11 виведення значень мова Паскаль
Helen Pata
 
Компютерне моделювання
Компютерне моделюванняКомпютерне моделювання
Компютерне моделювання
riyoksana1
 

Similar to Урок 55 8 клас (20)

базовI структури алгоритму урок 4
базовI структури алгоритму урок 4базовI структури алгоритму урок 4
базовI структури алгоритму урок 4
 
Урок 54 8 клас
Урок 54 8 класУрок 54 8 клас
Урок 54 8 клас
 
war8klasdist4.pptx
war8klasdist4.pptxwar8klasdist4.pptx
war8klasdist4.pptx
 
war8klasdist3.pptx
war8klasdist3.pptxwar8klasdist3.pptx
war8klasdist3.pptx
 
Урок 56 8 клас
Урок 56 8 класУрок 56 8 клас
Урок 56 8 клас
 
8 клас урок 47
8 клас урок 478 клас урок 47
8 клас урок 47
 
Konspekt uroku
Konspekt urokuKonspekt uroku
Konspekt uroku
 
Konspekt uroku
Konspekt urokuKonspekt uroku
Konspekt uroku
 
8 клас урок 49
8 клас урок 498 клас урок 49
8 клас урок 49
 
8 клас урок 48
8 клас урок 488 клас урок 48
8 клас урок 48
 
Operator cikly z napametpom
Operator cikly z napametpomOperator cikly z napametpom
Operator cikly z napametpom
 
алгоритм урок 3
алгоритм урок 3алгоритм урок 3
алгоритм урок 3
 
8 20
8 208 20
8 20
 
Урок 54 8 клас
Урок 54 8 класУрок 54 8 клас
Урок 54 8 клас
 
7 klas 11_urok_m
7 klas 11_urok_m7 klas 11_urok_m
7 klas 11_urok_m
 
8 клас урок 43
8 клас урок 438 клас урок 43
8 клас урок 43
 
урок 11 виведення значень мова Паскаль
урок 11 виведення значень мова Паскальурок 11 виведення значень мова Паскаль
урок 11 виведення значень мова Паскаль
 
Lesson # 44. repetition algorithms for processing quantities. loop with condi...
Lesson # 44. repetition algorithms for processing quantities. loop with condi...Lesson # 44. repetition algorithms for processing quantities. loop with condi...
Lesson # 44. repetition algorithms for processing quantities. loop with condi...
 
Компютерне моделювання
Компютерне моделюванняКомпютерне моделювання
Компютерне моделювання
 
8 клас. Хутько В. Урок 29-30
8 клас. Хутько В. Урок 29-308 клас. Хутько В. Урок 29-30
8 клас. Хутько В. Урок 29-30
 

More from Andrey Podgayko

Урок. Використання діаграм
Урок. Використання діаграмУрок. Використання діаграм
Урок. Використання діаграм
Andrey Podgayko
 

More from Andrey Podgayko (20)

Rozkl 5 11
Rozkl 5 11Rozkl 5 11
Rozkl 5 11
 
Rozkl 1 4
Rozkl 1 4Rozkl 1 4
Rozkl 1 4
 
Dzvon
DzvonDzvon
Dzvon
 
Doc1
Doc1Doc1
Doc1
 
Konkurs
KonkursKonkurs
Konkurs
 
Урок. Типи слайдів.
Урок. Типи слайдів.Урок. Типи слайдів.
Урок. Типи слайдів.
 
Урок. Використання діаграм
Урок. Використання діаграмУрок. Використання діаграм
Урок. Використання діаграм
 
Dzv
DzvDzv
Dzv
 
2019 2020
2019 20202019 2020
2019 2020
 
2018 2019
2018 20192018 2019
2018 2019
 
Розклад уроків
Розклад уроківРозклад уроків
Розклад уроків
 
Чернобай
ЧернобайЧернобай
Чернобай
 
Розклад корекційно-розвиткових занять
Розклад корекційно-розвиткових занять Розклад корекційно-розвиткових занять
Розклад корекційно-розвиткових занять
 
Команда супроводу
Команда супроводуКоманда супроводу
Команда супроводу
 
Список
СписокСписок
Список
 
Положення
Положення Положення
Положення
 
Графік відвідування
Графік відвідуванняГрафік відвідування
Графік відвідування
 
Графік проведення відкритих уроків
Графік проведення відкритих уроківГрафік проведення відкритих уроків
Графік проведення відкритих уроків
 
План підвищення кваліфікації
План підвищення кваліфікаціїПлан підвищення кваліфікації
План підвищення кваліфікації
 
Порядок підвищення кваліфікації
Порядок підвищення кваліфікаціїПорядок підвищення кваліфікації
Порядок підвищення кваліфікації
 

Урок 55 8 клас

  • 1. 8 За новою програмою Урок 55 Цикл з передумовою
  • 2. 8 ЗапитанняРозділ 6 § 6.7 1. Який вигляд має і як виконується команда циклу з лічильником в Object Pascal? 2. Який вигляд має і як виконується блок-схема циклу з передумовою? 3. У яких випадках в алгоритмах використовується цикл з лічильником, а в яких - цикл з передумовою?
  • 3. 8 Цикл з передумовоюРозділ 6 § 6.7 Ви вже знаєте, що цикл з передумовою як фрагмент алгоритму починається з команди перевірки умови й результатом виконання цієї команди може бути: Істина (Так, true) Хиба (Ні, false) І залежно від результату виконання цієї команди – виконуватимуться: Команди тіла циклу Команда алгоритму, наступна за циклом або
  • 4. 8 Цикл з передумовоюРозділ 6 § 6.7 У загальному випадку у цій команді визначається значення певного логічного виразу, яке може бути: True Falseабо
  • 5. 8 Цикл з передумовоюРозділ 6 § 6.7 Загальний вигляд блок-схеми циклу з передумовою такий:
  • 6. 8 Команда циклу з передумовою в Object PascalРозділ 6 § 6.7 Команда циклу з передумовою в мові програмування Object Pascal має такий вигляд: While <логічний вираз> Then begin <команди тіла циклу> end; (англ. while - поки).
  • 7. 8 Команда циклу з передумовою в Object PascalРозділ 6 § 6.7 Виконання цієї команди відбувається так: обчислюється значення логічного виразу; якщо це значення true, то виконуються команди тіла циклу, після чого знову обчислюється значення логічного виразу, і якщо це значення знову true, то знову виконуються команди тіла циклу, після чого знову обчислюється значення логічного виразу; якщо значення логічного виразу дорівнює false, то команди тіла циклу не виконуються, а виконується команда, наступна за циклом.
  • 8. 8 Команда циклу з передумовою в Object PascalРозділ 6 § 6.7 Звертаємо вашу увагу:  якщо в тілі циклу лише одна команда, то операторні дужки begin і end можна не ставити;  серед команд тіла циклу можуть бути й лінійні фрагменти, і розгалуження, й інші цикли.
  • 9. 8 Команда циклу з передумовою в Object PascalРозділ 6 § 6.7 Розглянемо задачу, алгоритм розв'язування якої містить цикл з передумовою. Задача. Скільки потрібно взяти доданків, перший з яких дорівнює заданому дійсному числу, а кожний наступний на 3 більший від попереднього, щоб їхня сума перевищила 100?
  • 10. 8 Команда циклу з передумовою в Object PascalРозділ 6 § 6.7 Даними цієї задачі є перший доданок. Вводитимемо його в поле. Перед початком циклу присвоїмо: Змінній s Змінній n яку використаємо для збереження суми, значення першого доданка яку використаємо для збереження кількості взятих доданків, присвоїмо значення 1, бо в сумі вже враховано один (перший) доданок.
  • 11. 8 Команда циклу з передумовою в Object PascalРозділ 6 § 6.7 До суми потрібно додавати наступні доданки, поки ця сума буде меншою, або дорівнюватиме 100. Тому логічний вираз у заголовку циклу матиме вигляд s <= 100 У тілі циклу шукатимемо наступний доданок, додаватимемо його до поточного значення суми і збільшуватимемо кількість доданих доданків на 1.
  • 12. 8 Команда циклу з передумовою в Object PascalРозділ 6 § 6.7 Відповідний фрагмент проекту матиме такий вигляд: var a, s: real; n: integer; begin a := StrToFloat (Edit1.Text); s := a; n := 1; while s <=100 do begin a := a+3; s := s+a; n := n+1; end; Label1.Caption := IntToStr(n); end;
  • 13. 8 Оператор циклу з передумовою WhileРозділ 8 § 39 Необхідно задавати початкові значення змінних, використовуваних у циклі. Якщо при першій перевірці умова виявиться хибною, тіло циклу While не виконається жодного разу.
  • 14. 8 Оператор циклу з передумовою WhileРозділ 8 § 39 Виконати цикл із передумовою при різних початкових значеннях змінної: While X <= 10 do X := Х+1; Початкове значення Х Значення Х після виконання циклу Кількість повторень 7 11 4 10 11 1 15 15 0
  • 15. 8 Оператор циклу з передумовою WhileРозділ 8 § 39 Логіка цього циклу змушує програму працювати вічно (нескінченний цикл). Num := 0; While Num < 20 do Label1.Caption := IntToStr(Num) Для переривання нескінченного циклу треба натиснути сполучення клавіш Ctrl + Break.
  • 16. 8 Оператор циклу з передумовою WhileРозділ 8 § 39 Щоб побачити зміну значень у ході виконання циклу, в тіло циклу включать виклик методу: Application.ProcessMessages
  • 17. 8 Розділ 8 § 39 var A: Integer; begin А := 1; // Початкове значення А While А о 100 do begin А := А + 1; Label1.Caption := IntToStr(A); Application.ProcessMessages; // обробка повідомлень Sleep(100); // зупинка на 0,1 с end; end; Поки А менше за 100, збільшувати значення А на одиницю і виводити значення змінної у Label. Для призупинення роботи програми на 100 мілісекунд використано процедуру Sleep.
  • 18. 8 Алгоритм обчислення суми n членів числової послідовностіРозділ 8 § 39 Алгоритм обчислення n-го члена послідовності натуральних чисел і суми п членів складається з таких дій: 1 •задаються початкові значення А, — першого члена послідовності, n — кількості членів, які потрібно обчислити; 2 •задаються початкові значення лічильника членів послідовності (і := 0) і суми (S := 0); 3 •поки номер і-то члена послідовності, який обчислено, не досягне значення n— заданої кількості членів, повторюються дії: номер поточного доданка збільшується на 1; обчислюється значення наступного доданка А, обчислене значення А додається до суми S.
  • 19. 8 Алгоритм обчислення суми n членів числової послідовностіРозділ 8 § 39 Знайти суму 20 елементів послідовності чисел 2,5; 3,0; 3,5; 4,0... // Задаються початкові значення: S := 0; // суми S і := 0; // лічильника доданків і А := 2.5; // доданка А While і < 20 do begin S := S + A; // додається до суми S А := А + 0.5; // обчислюється наступне значення доданка А і := і + 1 end;
  • 20. 8 Розділ 8 § 39 var і: Integer; A, S: Double; begin // Задаються: S:=1; // початкове значення суми S А:=1; // значення першого доданка А і:=1; // номер першого доданка While A>0.01 do begin і := і + 1; А := 1/і; // Обчислення доданка А S := S + А; Label2.Caption := FormatFloat('0.####', A); end; Edit1.Text := FormatFloat('0.###', S); end; Знайти суму всіх елементів послідовності 1, 𝟏 𝟐 , 𝟏 𝟑 , 𝟏 𝟒 , 𝟏 𝟓 …, значення яких не менше за 0,01. Під час складання програми будемо вважати, що точність досягнуто, якщо черговий доданок менший за значення точності.
  • 23. 8 Дайте відповіді на запитання 1. Який вигляд має блок-схема циклу з передумовою? Поясніть виконання цього циклу. 2. Чи можуть команди тіла циклу з передумовою не виконуватись жодного разу? Поясніть свою відповідь. Наведіть приклади. 3. Чи може виконання циклу з передумовою ніколи не закінчитися? Поясніть свою відповідь. Наведіть приклади. 4. Чим відрізняються між собою цикл з лічильником і цикл з передумовою? Розділ 6 § 6.7
  • 24. 8 Дайте відповіді на запитання 5. У чому полягають відмінності у виконанні основних алгоритмічних структур: слідування, розгалуження, цикл з лічильником і цикл з передумовою? 6. Який загальний вигляд команди циклу з передумовою в Object Pascal? 7. Як виконується команда циклу з передумовою в Object Pascal? Розділ 6 § 6.7
  • 27. 8 Дякую за увагу! За новою програмою Урок 55