Презентація на тему на цьому уроці ви дізнаєтеся що таке вкладені цикли
1

2 На цьому уроці ви дізнаєтеся Що таке вкладені цикли. Як вони застосовуються в програмах. Як можна скоротити кількість повторень циклу.

3 Для чого використовуються команди циклу? Як записується команда циклу FOR? Як в циклі записати команду присвоювання, щоб вона обчислювала суму чисел? Кількість? Яке початкове значення має бути у змінної, в якій накопичуємо твір чисел? Як записується команда циклу, в якій лічильник циклу зменшується? Чи можна змінювати значення верхньої межі циклу в тілі циклу? Чи можна в тілі циклу використовувати команду порівняння?

4 Цикл називається вкладеним, якщо він знаходиться в тілі іншого циклу. for i: = 0 to n do begin for j: = 0 to m do begin for k: = 0 to w do begin end; Внутрішній цикл повинен повністю перебувати в тілі зовнішнього циклу. Цикл k Цикл j Цикл i

5 Скільки можна купити биків, корів і телят, якщо бик коштує 10 рублів, корова -5 рублів, теля - 0,5 рубля і на 100 рублів треба купити 100 тварин. Рішення B - кількість биків K - кількість корів T- кількість телят. Після цього можна записати два рівняння: 10b + 5k + 0,5t = 100 b + k + t = 100, Перетворимо їх: 20b + 10k + t = 200 b + k + t = 100 На 100 рублів можна купити: Чи не більше 10 биків, 0b10 Чи не більше 20 корів, 0k20 Чи не більше 200 телят, 0t200
6 Program Pokupka1; Uses Crt; Var b, k, t: integer; Begin Clrscr; for b: = 0 to 10 do for k: = 0 to 20 do for t: = 0 to 200 do if (20 * b + 10 * k + t = 200) and (b + k + t = 100) then writeln ( 'Bkov', b, 'korov', k, 'telyat', t); readln; end. Скільки разів буде перевірятися умова в даній програмі? Значення b змінюється 11 разів - від 0 до 10; k - 21, t Таким чином, умова буде перевірятися 11 * 21 * 201 = раз.

7 Program Pokupka2; Uses Crt; Var b, k, t: integer; Begin Clrscr; for b: = 0 to 10 do for k: = 0 to 20 do begin t: = 100 (b + k); if 20 * b + 10 * k + t = 200 then writeln ( 'Bkov', b, 'korov', k, 'telyat', t); end; readln; end. 11 * 21 * 201 = Якщо відома кількість биків і корів, то кількість телят можна обчислити за формулою: t: = 100 (b + k); Цикл по змінної t можна виключити. Кількість повторень перевірки умови ставати 11 * 21 = 231
8 У касі є монети по 2, 5 і 10 копійок. Скількома способами можна видати здачу на деяку суму Sum?

9 Program Sdacha; Uses Crt; Var Sum, Xmax, Ymax, Zmax, x, y, z, p: integer; Begin Clrscr; Writeln ( 'Vvedite Summu'); Readln (Sum); p: = 0; Xmax: = Sum div 2; Ymax: = Sum div 5; Zmax: = Sum div 10; Writeln ( 'Vsego monet'); Writeln ( '______________________'); for x: = 0 to Xmax do for y: = 0 to Ymax do for z: = 0 to Zmax do if 2 * x + 5 * y + 10 * z = Sum then begin writeln (x: 3, y: 3, z: 3, x + y + z: 8); p: = p + 1; end; If p = 0 then writeln ( 'Variantov net') else writeln ( 'Vsego', p, 'variantov'); readln; end.

10 СТО, СОТ і ТОС - тризначні числа. Визначити цифри С, Т і О і вивести їх на екран СТО = С * 100 + Т * 10 + Про
11 Program Summa; Uses Crt; Var c, t, o, p, Cto, Toc, Cot: integer; Begin Clrscr; Writeln ( 'CTO + COT = TOC'); Writeln; for c: = 1 to 9 do for t: = 1 to 9 do for o: = 0 to 9 do begin Cto: = c * 100 + t * 10 + o; Cot: = c * 100 + o * 10 + t; Toc: = t * 100 + o * 10 + c; if Cto + Cot = Toc then begin writeln (Cto: 4, Cot: 4, Toc: 4); p: = p + 1; end; End; If p = 0 then writeln ( 'Variantov net') else writeln ( 'Vsego', p, 'variantov'); readln; end.
12 Який цикл можна назвати вкладеним? Які правила запису вкладених циклів? Чи можуть цикли «перетинатися» один з одним? Для чого потрібно намагатися скоротити кількість повторень циклів?
13 1. Визначити скільки існує «щасливих» автобусних квитків в одній серії з номерами від до «Щасливим» вважається квиток, сума перших трьох цифр якого дорівнює сумі друге трьох цифр. 2. З клавіатури вводиться 10 різних довільних чисел. а) Знайти різницю між найбільшим і найменшим з них. б) Порядковий номер найбільшого і найменшого числа. 3. Обчислити: Це завдання потрібно вирішувати з кінця, тобто використовувати цикл з уменьшающимся лічильником.