Форум программистов, компьютерный форум CyberForum.ru

Вложенные циклы - C++

Восстановить пароль Регистрация
 
Рейтинг: Рейтинг темы: голосов - 21, средняя оценка - 4.71
snyppimylt
 Аватар для snyppimylt
7 / 7 / 1
Регистрация: 18.12.2011
Сообщений: 400
22.09.2012, 19:35     Вложенные циклы #1
Объясните новичку, в чем разница? Дело в том, что если записывать вложенный цикл в фигурные скобки:
C++
1
2
3
4
for(int d=0; d<y; d++){
        cout<<str;
        cout<<endl;
}
то все символы выстроится в столбик а если без то получится как таблица 10х10.

C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
#include <iostream>
using namespace std;
 
int  main(){
 
int x=10,y=10;
char str='r';
 
for (int i=0; i<x; i++)
{
 
    for(int d=0; d<y; d++)
        cout<<str;
        cout<<endl;
}
 
 system("pause");
  return 0;
}
В чем разница наличие фигурных скобок или отсутствие их?
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
22.09.2012, 19:35     Вложенные циклы
Посмотрите здесь:

C++ Вложенные циклы
Вложенные циклы C++
Вложенные циклы С++ C++
Вложенные циклы C++
Вложенные циклы C++
После регистрации реклама в сообщениях будет скрыта и будут доступны все возможности форума.
Andrey.K
 Аватар для Andrey.K
338 / 259 / 15
Регистрация: 14.11.2010
Сообщений: 480
22.09.2012, 19:43     Вложенные циклы #2
Фигурные скобки указывают на блок, между ними. Также они позволяют использовать или объединять несколько операров в циклах как здесь:
C++
1
2
3
4
for(int d=0; d<y; d++){
        cout<<str;
        cout<<endl;
}
alsav22
5282 / 4801 / 442
Регистрация: 04.06.2011
Сообщений: 13,587
22.09.2012, 19:45     Вложенные циклы #3
Если есть скобки, то цикл - то что в них. В них: 1) вывести str, 2) перевод строки. Если скобок нет, то цикл то, что до ; , а это 1) вывести str, а уже после выхода из for() перевести строку.
snyppimylt
 Аватар для snyppimylt
7 / 7 / 1
Регистрация: 18.12.2011
Сообщений: 400
22.09.2012, 19:51  [ТС]     Вложенные циклы #4
Цитата Сообщение от alsav22 Посмотреть сообщение
Если есть скобки, то цикл - то что в них. В них: 1) вывести str, 2) перевод строки. Если скобок нет, то цикл то, что до ; , а это 1) вывести str, а после выхода из for() перевести строку.
Еще раз.. не очень понял.

Добавлено через 3 минуты
Andrey.K, т.е. получается если фигурные скобки стоят во вторичном вложенном цикле, тогда это считается под функцией которая уже работает отдельно?
DebieCooper
 Аватар для DebieCooper
34 / 34 / 1
Регистрация: 12.10.2011
Сообщений: 285
22.09.2012, 19:52     Вложенные циклы #5
Что там непонятного?. Читайте книги, либо в интернете напишите: Цикл for
Andrey.K выше вам уже все обьяснил)
snyppimylt
 Аватар для snyppimylt
7 / 7 / 1
Регистрация: 18.12.2011
Сообщений: 400
22.09.2012, 19:54  [ТС]     Вложенные циклы #6
Цитата Сообщение от DebieCooper Посмотреть сообщение
Что там непонятного?. Читайте книги, либо в интернете напишите: Цикл for
Я что и делаю... просто решил уточнить именно по конкретному вопросу.
alsav22
5282 / 4801 / 442
Регистрация: 04.06.2011
Сообщений: 13,587
22.09.2012, 20:00     Вложенные циклы #7
C++
1
2
3
4
for(int d=0; d<y; d++){
        cout<<str;
        cout<<endl;
}
Здесь, при каждой итерации цикла (y раз), будут выполняться два действия: 1) вывод str, 2) переход на новую строку. Получится столбик. Если так:
C++
1
2
3
for(int d=0; d<y; d++)
        cout<<str;
        cout<<endl;
, то при каждой итерации цикла (y раз) будет выводится str, и всё. Получится линия символов. После окончания цикла выполнится cout << endl;

Добавлено через 4 минуты
Если так:
C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
#include <iostream>
using namespace std;
 
int  main(){
 
int x=10,y=10;
char str='r';
 
for (int i=0; i<x; i++)
{
 
    for(int d=0; d<y; d++)
        cout<<str;
    cout<<endl; // внешний цикл.
}
 
 system("pause");
  return 0;
}
Второй cout << endl; относится к внешнему циклу. То есть внутренниий цикл выведет y раз str (получится линия символов). Потом будет cout << endl;(переход на следующую строку) и следующая итерация внешнего цикла.
Andrey.K
 Аватар для Andrey.K
338 / 259 / 15
Регистрация: 14.11.2010
Сообщений: 480
22.09.2012, 20:02     Вложенные циклы #8
Да, но чтобы она начала работать, сначала должен быть вход в самый верхний блок. И тогда вложенный блок отработает.
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
22.09.2012, 20:15     Вложенные циклы
Еще ссылки по теме:

Вложенные циклы for C++
Вложенные циклы C++
Вложенные циклы C++

Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
snyppimylt
 Аватар для snyppimylt
7 / 7 / 1
Регистрация: 18.12.2011
Сообщений: 400
22.09.2012, 20:15  [ТС]     Вложенные циклы #9
Всем спасибо, все понятно
Yandex
Объявления
22.09.2012, 20:15     Вложенные циклы
Ответ Создать тему
Опции темы

Текущее время: 04:10. Часовой пояс GMT +3.
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2016, vBulletin Solutions, Inc.
Рейтинг@Mail.ru