Ціль навчальна: Використання операторів циклу з передумовою та післяумовою в С.
План:
1. Застовування складних циклів
2. Блок-схема
3. Приклади використання складних циклів
Домашнє завдання: Вивести на екран всі трьохзначні числа, сума цифр яких дорівнює заданому числу n, та знайти їх кількість k та суму s ..
Вкладеними циклами називається конструкція, яка є комбінацією кількох циклів, причому один цикл міститься всередині іншого.
Один цикл повністю знаходиться всередині іншого.
Цикли не можуть “перехрещуватись “
Загальний вигляд: Запис на мові С
Приклад 1. Схема:
{
int x, y;
printf(“\nX Y “);
for (x= 1;x<=3; x=x+1)
for (y= 1;y<=3; y=y+1)
printf(“%d %d”,x,y) ;
}
Тут Х набуває значень 1, 2, 3. При цьому кожного разу Y змінюється від 1 до 3. На екран виводяться всі комбінації чисел від 1 до 3.
Приклад 2. Знайти цілі розв’язки рівняння 3x + 5y = 30 в інтервалі від –10 до 10.
За допомогою вкладених циклів перебираємо всі комбінації Х та Y в указаному інтервалі, а використавши конструкцію розгалуження проаналізуємо, чи є дана комбінація розв’язком рівняння, якщо так, то вивести її на екран.
#include <stdio.h>
#include <conio.h>
void main()
{
int x, y;
for (x= 1;x<=3; x=x+1)
for (y= 1;y<=3; y=y+1)
if (3*x+5*y==3)
printf(“\nx=%d y=%d”,x,y);
getch();
}
Схема:
Приклад 3. Всередині екрана зобразити квадрат, заповнений символом “*”.
#include <stdio.h>
#include <conio.h>
void main()
{
int x, y;
clrscr();
for (y=7;y<=18; y=y+1)
for (x=21; x<=61; x=x+1)
{
gotoxy(x,y);
printf(“*”);
}
getch();
}
Контрольні питання :
1. Яке призначення циклічних алгоритмів?
2. Як виконується та записується на мові С оператор циклу з передумовою?
3. Як виконується та записується на мові С оператор циклу з післяумовою?
4. Сформулюйте правила використання циклу з параметром.