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

С++ для начинающих

Войти
Регистрация
Восстановить пароль
 
m4r1kk
2 / 2 / 0
Регистрация: 12.10.2012
Сообщений: 43
#1

Как сократить запись? - C++

28.06.2013, 07:16. Просмотров 333. Ответов 5
Метки нет (Все метки)

Всем привет! Пишу ASCII-игру и вот такой вопросик по коду:
C++
1
2
3
4
5
6
7
8
9
10
 while(brk) play(level1);
 brk = 1;
 while(brk) play(level2);
 brk = 1;
 while(brk) play(level3);
 brk = 1;
 while(brk) play(level4);
 brk = 1;
 while(brk) play(level5);
 brk = 1;
Как можно сократить запись этого фрагмента кода?

Спасибо за ответы!
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
28.06.2013, 07:16     Как сократить запись?
Посмотрите здесь:

Как сократить запись? - C++
Здравствуйте, дорогие форумчане! Имеется вот такой код: for(int i = 0; i < n; i++) { int t; in >> t; // как сократить эти ...

Как сократить запись при инициализации статических переменных? - C++
Добрый день. Есть в шаблонном классе набор non-const статических переменных, которые инициализируется, соответственно, вне класса: ...

Как сократить до инициалов? - C++
Нужно сократить например Фамилия Имя Отчество до Фамилия И. О. Пожалуйста, подскажите или напишите как это сделать.

Корбен_Даллас-- //Как сократить текст пр-мы?))) - C++
Здравствуйте) Подозреваю о существовании указателей, но нигде не могу найти инф-ии как это использовать для сокращения кода (наверное...

Как можно сократить массив? - C++
Как можно сократить масив? К примеру есть масив: A =...

Путь к файлу, как сократить? - C++
Добрый день, Поисковик ответа не дал. Необходимо создать файл в папке, находящейся в корневом каталоге программы. Т.е. , к примеру,...

После регистрации реклама в сообщениях будет скрыта и будут доступны все возможности форума.
AntonChik
1084 / 582 / 21
Регистрация: 11.11.2008
Сообщений: 1,544
28.06.2013, 07:56     Как сократить запись? #2
какой тип у level1...5 ?
anmartex
...
1703 / 1196 / 495
Регистрация: 12.02.2013
Сообщений: 1,978
28.06.2013, 07:57     Как сократить запись? #3
Что-то вроде этого:
C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
const CLevelsCount = 5;
TMyLevel level[CLevelsCount];
 
// ...
 
for (i = 0; i < CLevelsCount; ++i)
{
    brk = 1;
    while (brk)
    {
        play(level[i]);
    }
}
 
// ...
m4r1kk
2 / 2 / 0
Регистрация: 12.10.2012
Сообщений: 43
28.06.2013, 08:24  [ТС]     Как сократить запись? #4
const int c = 13, r = 16;
char level1[c][r] = {//матрица};
AntonChik
1084 / 582 / 21
Регистрация: 11.11.2008
Сообщений: 1,544
28.06.2013, 08:33     Как сократить запись? #5
на лицо ошибка проектирования.
неправильно под каждый уровень заводить отдельную матрицу, храните массивы в файлах и подгружайте по надобности.
или бы уж делали массив матриц, чтоб индекс не в имени висел, а был в пользовании.т.е.
C++
1
char*** level[1][c][r] = {...} //и т.д.
а так ничего хорошего оптимизировать не получится.
разве что запихать эти статичные массивы в один динамический и уже тогда гонять циклы.
это примерно как написал anmartex, но в данном случае это может стать лишними затратами.
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
28.06.2013, 08:55     Как сократить запись?
Еще ссылки по теме:

Можно ли как-то сократить объявления using в начале программы? - C++
Запариля уже объявлять каждый раз в таком роде... using std::cin; using std::cout; using std::endl; using std::string; using...

Поделитесь советом. Как сократить еще 1 символ. =) - C++
c&gt;&gt;a; a--; while(g+=a&amp;1, a/=2); o&lt;&lt;g%3; Подскажите, пожалуйста, реально ли укоротить ее еще? )))

Сократить выражение - C++
Здравствуйте Фрагмент кода: Sum-=(c=Sum/25)*25; coins+=c; Sum-=(c=Sum/10)*10; coins+=c; ...

Сократить дробь - C++
Даны натуральные числа a и b, обозначающие соответственно числитель и знаменатель дроби. Сократите дробь, т.е найти такие натуральные p и...


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

Или воспользуйтесь поиском по форуму:
m4r1kk
2 / 2 / 0
Регистрация: 12.10.2012
Сообщений: 43
28.06.2013, 08:55  [ТС]     Как сократить запись? #6
Ни хрена не понел из выше сказанного... Но все таки спасибо)

Добавлено через 5 минут
Хотя нет, сейчас дошло =) Спасибо AntonChik и anmartex...
Yandex
Объявления
28.06.2013, 08:55     Как сократить запись?
Ответ Создать тему
Опции темы

КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2017, vBulletin Solutions, Inc.
Рейтинг@Mail.ru