Вложенные циклы

Содержание

Слайд 2

Вложенные циклы

Вложенные циклы

Слайд 3

Пример использоания вложенного цикла Иногда, для решения различных задач, нам необходимо

Пример использоания вложенного цикла

Иногда, для решения различных задач, нам необходимо вкладывать

один цикл в другой.
Например, для рисования на экране одной строки со звёздочками, вот такой:
**************************
Нам потребуется написать следующий простой код:
Слайд 4

Пример использоания вложенного цикла cout for (int i = 0; i

Пример использоания вложенного цикла

cout << "\t"; \\отступ от левого края
for (int

i = 0; i <= 30; i++)
{
cout << "*";
}
cout << "\n"; \\переход на новую строку в начало
//Получим что-то вроде: **************************
Слайд 5

Пример использоания вложенного цикла Для того, что бы заполнить несколько строк

Пример использоания вложенного цикла

Для того, что бы заполнить несколько строк экрана,

нам потребуется выполнить этот код столько раз, сколько строк нам необходимо заполнить, для этого мы воспользуемся вложением цикла. Например, нам надо получить вот такое:
**************************
**************************
**************************
**************************
**************************
Требуется повторить строку со звёздочками 5 раз.
Слайд 6

Пример использоания вложенного цикла for (int j = 0; j {

Пример использоания вложенного цикла

for (int j = 0; j < 5;

j++)
{
cout << "\t";\\отступ от левого края
for (int i = 0; i <= 30; i++) {
cout << "*";
}
cout << "\n";\\переход на новую строку в начало
}
Слайд 7

Пример использоания вложенного цикла ******************************* ******************************* ******************************* ******************************* ******************************* j=0, i=0

Пример использоания вложенного цикла
*******************************
*******************************
*******************************
*******************************
*******************************

j=0, i=0

j=0, i=1

j=0, i=2

j=0, i=30

j=1, i=0

j=1, i=30

j=4, i=0

j=4,

i=30

for (int j = 0; j < 5; j++)
{
cout << "\t";
for (int i = 0; i <= 30; i++) {
cout << "*";
}
cout << "\n";
}

Слайд 8

Пример использования вложенного цикла Принцип работы программы, реализующей вложен­ный цикл основан

Пример использования вложенного цикла

Принцип работы программы, реализующей вложен­ный цикл основан на

том, что внутренний цикл полно­стью выполняется на каждом шаге внешнего цикла от начала до конца.
Другими словами, пока программа не выйдет из вложенного цикла — выполнение внешнего не продолжится.
Далее изображена схема работы вло­женных циклов.
Слайд 9

Модель работы вложенного цикла

Модель работы вложенного цикла

Слайд 10

Задание: Модернизируйте наш код, что бы получить следующее изображение на экране: ************************** ************************** ************************** ************************** **************************

Задание:

Модернизируйте наш код, что бы получить следующее изображение на экране:
**************************
**************************

**************************
**************************
**************************
Слайд 11

Решение: for (int j = 0; j for (int i =

Решение:
for (int j = 0; j < 5; j++) {
for (int

i = 0; i <= 30+j; i++){
(i }
cout << "\n";
}
Слайд 12

Решение: for (int j = 0; j cout int k =

Решение:

for (int j = 0; j < 5; j++) {
cout <<

"\t";
int k = 0;
while (k <= j) {
cout << " ";
k++;
}
for (int i = 0; i <= 30; i++){
cout << "*";
}
cout << "\n";
}
Слайд 13

Задание: Модернизируйте наш код, что бы получить следующее изображение на экране:

Задание:

Модернизируйте наш код, что бы получить следующее изображение на экране:

Слайд 14

Решение: #include using namespace std; int main() { for (int j

Решение:

#include
using namespace std;
int main() {
for (int j = 0; j

< 5; j++) {
cout << "\t";
for (int i = 0; i <= 30; i++){
cout << i << " ";
}
cout << "\n";
}
return 0;
}
Слайд 15

Задание: Модернизируйте наш код, что бы получить следующее изображение на экране:

Задание:

Модернизируйте наш код, что бы получить следующее изображение на экране:

Слайд 16

Решение: #include using namespace std; int main() { for (int j

Решение:

#include
using namespace std;
int main() {
for (int j = 0; j

< 10; j++) {
cout << "\t";
for (int i = 0; i < 10; i++){
cout << j*i << "\t";
}
cout << "\n";
}
}
Слайд 17

Задание: Модернизируйте наш код, что бы получить следующее изображение на экране:

Задание:

Модернизируйте наш код, что бы получить следующее изображение на экране:

Слайд 18

Решение: #include using namespace std; int main() { for (int j

Решение:

#include
using namespace std;
int main() {
for (int j = 0; j

< 10; j++) {
cout << "\t";
for (int i = 0; i < 10; i++){
cout << j << "*" << i << "=" << j*i << "\t";
}
cout << "\n";
}
}
Слайд 19

Задание: Модернизируйте наш код, что бы получить следующее изображение на экране:

Задание:

Модернизируйте наш код, что бы получить следующее изображение на экране:

Слайд 20

Решение: #include using namespace std; int main() { const int LINE_COUNT

Решение:

#include
using namespace std;
int main() {
const int LINE_COUNT = 5;
for (int

j = 0; j <= LINE_COUNT ; j++) {
cout << "\t";
for (int i = 0; i < j ; i++){
cout << "*";
}
cout << "\n";
}
}
Слайд 21

Задание: Модернизируйте наш код, что бы получить следующее изображение на экране:

Задание:

Модернизируйте наш код, что бы получить следующее изображение на экране:

Слайд 22

Решение: #include using namespace std; int main() { const int LINE_COUNT

Решение:

#include
using namespace std;
int main() {
const int LINE_COUNT = 5;
for (int

j = 0; j <= LINE_COUNT ; j++) {
cout << "\t";
for (int i = LINE_COUNT ; I >= 0; i--){
(j }
cout << "\n";
}
}
Слайд 23

Задание: Модернизируйте наш код, что бы получить следующее изображение на экране:

Задание:

Модернизируйте наш код, что бы получить следующее изображение на экране:

Слайд 24

Решение: #include using namespace std; int main() { const int LINE_COUNT

Решение:

#include
using namespace std;
int main() {
const int LINE_COUNT = 5;
for (int

j = 0; j <= LINE_COUNT; j++){
cout << "\t";
for (int i = 0; i <= LINE_COUNT; i++){
(j == 0 || j == LINE_COUNT || i == 0 || i == LINE_COUNT) ? cout << "*" : cout << " ";
}
cout << "\n";
}
}
Слайд 25

Задание: Модернизируйте наш код, что бы получить следующее изображение на экране:

Задание:

Модернизируйте наш код, что бы получить следующее изображение на экране:

Слайд 26

Решение: const int LINE_COUNT = 5; for (int j = 0;

Решение:

const int LINE_COUNT = 5;
for (int j = 0; j <=

LINE_COUNT; j++){
cout << "\t";
for (int i = 0; i < LINE_COUNT - j; i++){
cout << " ";
}
for (int i = 0; i < j*2+1; i++){
cout << "*";
}
cout << "\n";
}