Never
|
|
« : 29-06-2011 11:17 » |
|
Может кто подскажет литературу или примеры. Задача снова дурноватая: язык- Си. Учимся основам программирования. Но среда, блин, консольная! А детишкам скушно. очень хочется как-то процесс разнообразить. Поэтому определю задачу так: Си и работа с каким-нить графическим движком. В принципе, если есть что-то аналогичное по С++, киньте, может я чего выжму.
|
|
|
Записан
|
не умеете летать- не мучайте метлу!
|
|
|
Джон
просто
Администратор
Offline
Пол:
|
|
« Ответ #1 : 29-06-2011 13:39 » |
|
Наташ, а вы делайте игрушки. Например "угадай число от ... и до ...". Три попытки. После каждой прога говорит "больше - меньше - угадал". Всё в консоли.
|
|
|
Записан
|
Я вам что? Дурак? По выходным и праздникам на работе работать. По выходным и праздникам я работаю дома. "Just because the language allows you to do something does not mean that it’s the correct thing to do." Trey Nash "Physics is like sex: sure, it may give some practical results, but that's not why we do it." Richard P. Feynman "All science is either physics or stamp collecting." Ernest Rutherford "Wer will, findet Wege, wer nicht will, findet Gründe."
|
|
|
RXL
|
|
« Ответ #2 : 29-06-2011 13:42 » |
|
Или рисуйте в консоли - это тоже интересно Рамки, графики - это все можно нарисовать.
|
|
|
Записан
|
... мы преодолеваем эту трудность без синтеза распределенных прототипов. (с) Жуков М.С.
|
|
|
Джон
просто
Администратор
Offline
Пол:
|
|
« Ответ #3 : 29-06-2011 15:11 » |
|
Ага, особенно псевдографикой. Можно даже карточные игры сделать.
|
|
|
Записан
|
Я вам что? Дурак? По выходным и праздникам на работе работать. По выходным и праздникам я работаю дома. "Just because the language allows you to do something does not mean that it’s the correct thing to do." Trey Nash "Physics is like sex: sure, it may give some practical results, but that's not why we do it." Richard P. Feynman "All science is either physics or stamp collecting." Ernest Rutherford "Wer will, findet Wege, wer nicht will, findet Gründe."
|
|
|
RXL
|
|
« Ответ #4 : 29-06-2011 17:09 » |
|
А если вспомнить игры для древних компов, где нолики стреляли единичками... Простор для творчества!
|
|
|
Записан
|
... мы преодолеваем эту трудность без синтеза распределенных прототипов. (с) Жуков М.С.
|
|
|
Never
|
|
« Ответ #5 : 06-07-2011 11:18 » |
|
где " угадай число", психотесты и т.д.- это мы и делали. Хочется че-нить графическое и жалательно с цветом. Во-о-т! Да, можно и рисунки в консоли, и графики. Примеры конкретные можно? Статьи? Книжки? Я как-то мимо этих моментов прошла. Кстати, нолики, стреляющие единичками ваще никогда не видела А если все-таки с движком... Ваще класс! )
|
|
« Последнее редактирование: 06-07-2011 11:35 от Never »
|
Записан
|
не умеете летать- не мучайте метлу!
|
|
|
Джон
просто
Администратор
Offline
Пол:
|
|
« Ответ #6 : 06-07-2011 13:31 » |
|
Наташ, а чуть конкретней. Что значит среда консольная? Консолька под виндой, или натуральная ДОС? Да, и какая среда разработки?
|
|
|
Записан
|
Я вам что? Дурак? По выходным и праздникам на работе работать. По выходным и праздникам я работаю дома. "Just because the language allows you to do something does not mean that it’s the correct thing to do." Trey Nash "Physics is like sex: sure, it may give some practical results, but that's not why we do it." Richard P. Feynman "All science is either physics or stamp collecting." Ernest Rutherford "Wer will, findet Wege, wer nicht will, findet Gründe."
|
|
|
Never
|
|
« Ответ #7 : 11-07-2011 11:15 » |
|
vs 8 или 10. А в ней выбрано consol аpplicаtion.
|
|
|
Записан
|
не умеете летать- не мучайте метлу!
|
|
|
Джон
просто
Администратор
Offline
Пол:
|
|
« Ответ #8 : 11-07-2011 12:51 » |
|
Хммм... А чё б тебе не плюнуть на консольку и забабахать это дело в окошке? Какая принципиальная разница? Боюсь, что графический движок под студийную консольку затруднительно будет найти. Особенно, если изучаются только основы программирования.
|
|
|
Записан
|
Я вам что? Дурак? По выходным и праздникам на работе работать. По выходным и праздникам я работаю дома. "Just because the language allows you to do something does not mean that it’s the correct thing to do." Trey Nash "Physics is like sex: sure, it may give some practical results, but that's not why we do it." Richard P. Feynman "All science is either physics or stamp collecting." Ernest Rutherford "Wer will, findet Wege, wer nicht will, findet Gründe."
|
|
|
Алексей++
глобальный и пушистый
Глобальный модератор
Offline
Сообщений: 13
|
|
« Ответ #9 : 11-07-2011 16:29 » |
|
|
|
|
Записан
|
|
|
|
Never
|
|
« Ответ #10 : 12-07-2011 07:28 » |
|
Джон, принципиальная разница в том, что не я у нас учебные программы сочиняю. у меня есть возможность некоторого отхода от обязаловки, но не полностью поменять исходные требования. я бы вообще начинающих учила на средах с компонентами - наглядно, прикольно, да и опыт мой показывает, что это лучше для малышни. но тут у мну руки связаны.
леш, спасибо, щас погляжу
|
|
|
Записан
|
не умеете летать- не мучайте метлу!
|
|
|
гайка
Гость
|
|
« Ответ #11 : 12-07-2011 13:54 » |
|
я вот на этой брошюрке училась http://www.spbdk.ru/catalog/331506/легко идет, в метро особенно... Добавлено через 5 минут и 9 секунд:да, действительно для тренировки самое то - писать незамысловатые игрушки. я помню, морской бой делала консольный (курсовик у нас был на 1 курсе)... преподаватель радовался как ребенок, когда я ему сдавала
|
|
« Последнее редактирование: 12-07-2011 13:59 от гайка »
|
Записан
|
|
|
|
Finch
Спокойный
Администратор
Offline
Пол:
Пролетал мимо
|
|
« Ответ #12 : 12-07-2011 15:52 » |
|
Гайка, Интересно, а у самой чувство гордости не возникало?
|
|
|
Записан
|
Не будите спашяго дракона. Джаффар (Коша)
|
|
|
гайка
Гость
|
|
« Ответ #13 : 13-07-2011 11:51 » |
|
Finch, ага, было дело... только тссс! не говори никому
|
|
|
Записан
|
|
|
|
Never
|
|
« Ответ #14 : 18-07-2011 18:20 » |
|
Гайка, а клеточки как изображала?
|
|
|
Записан
|
не умеете летать- не мучайте метлу!
|
|
|
гайка
Гость
|
|
« Ответ #15 : 18-07-2011 19:01 » |
|
тут есть где-то маленькая бага, но это мелочи вот так это выглядело:
|
|
|
Записан
|
|
|
|
Dimka
Деятель
Команда клуба
Offline
Пол:
|
|
« Ответ #16 : 18-07-2011 20:12 » |
|
Гайка, --------------------------- proba2.exe - Системная ошибка --------------------------- Запуск программы невозможен, так как на компьютере отсутствует MSVCP100D.dll. Попробуйте переустановить программу. --------------------------- ОК ---------------------------
А код выкладывать - жаба душит, или стесняешься?
|
|
|
Записан
|
Программировать - значит понимать (К. Нюгард) Невывернутое лучше, чем вправленное (М. Аврелий) Многие готовы скорее умереть, чем подумать (Б. Рассел)
|
|
|
гайка
Гость
|
|
« Ответ #17 : 18-07-2011 21:00 » |
|
это был мой первый "сурьезный" проект, код практически без комментариев (правда я и сейчас этим грешу) и к тому же мои познания в с++ в то время были крайне узкими, но я пыталась выкрутиться в рамках этих познаний. как результат - код, который могу понять только я, и то не факт Добавлено через 2 минуты и 55 секунд:А критики я, конечно, побаиваюсь, но она необходима для жизни. без нее ничему не научится. как говорила Wiks и Э.Хаббард: "Хочешь избежать критики - ничего не делай, ничего не говори и будь никем"
|
|
« Последнее редактирование: 18-07-2011 21:22 от Джон »
|
Записан
|
|
|
|
Алексей++
глобальный и пушистый
Глобальный модератор
Offline
Сообщений: 13
|
|
« Ответ #18 : 18-07-2011 21:09 » |
|
круто с клетками придумано
|
|
|
Записан
|
|
|
|
Джон
просто
Администратор
Offline
Пол:
|
|
« Ответ #19 : 18-07-2011 21:23 » |
|
код практически без комментариев (правда я и сейчас этим грешу) Хороший код сам себя документирует. Поэтому коментарии это не главный показатель хорошего кода.
|
|
|
Записан
|
Я вам что? Дурак? По выходным и праздникам на работе работать. По выходным и праздникам я работаю дома. "Just because the language allows you to do something does not mean that it’s the correct thing to do." Trey Nash "Physics is like sex: sure, it may give some practical results, but that's not why we do it." Richard P. Feynman "All science is either physics or stamp collecting." Ernest Rutherford "Wer will, findet Wege, wer nicht will, findet Gründe."
|
|
|
гайка
Гость
|
|
« Ответ #20 : 18-07-2011 21:48 » |
|
Джон, без комментариев я свой код (который, к примеру писала несколько месяцев назад) разбираю с огромным трудом. просто у меня довольно сложный почерк, что ли...
|
|
|
Записан
|
|
|
|
Антон (LogRus)
|
|
« Ответ #21 : 19-07-2011 03:53 » |
|
Гайка, где финики(код) та? Люблю читать чужой код
|
|
|
Записан
|
Странно всё это....
|
|
|
гайка
Гость
|
|
« Ответ #22 : 19-07-2011 14:22 » |
|
Антон, там есть пару косячков небольших, я все не могу собраться с духом и исправить их. если хочешь, я выложу кхе... "финики" в авторское ПО.
|
|
|
Записан
|
|
|
|
Finch
Спокойный
Администратор
Offline
Пол:
Пролетал мимо
|
|
« Ответ #23 : 19-07-2011 14:58 » |
|
Анна интересно, а почему ты так стесняешся выкладывать код?
|
|
|
Записан
|
Не будите спашяго дракона. Джаффар (Коша)
|
|
|
гайка
Гость
|
|
« Ответ #24 : 19-07-2011 15:00 » |
|
Хватит флудить давай в чат:) Добавлено через 28 минут и 7 секунд:функции там не по-порядку лежат, так что читайте снизу, с мэйна. есть 2 косяка, я их чуть позже исправлю: когда убиваешь корабль окончательно, вокруг него расставляются точки - места, куда стрелять нет смысла, так вот иногда эти точки всплывают где-то за границей поля вместо одной из букв или цифр. и еще программа иногда "разрешает" неправильно строить корабли: вместо 4 однопалубных с удовольствием хавает 6, но это редко вылетает
|
|
« Последнее редактирование: 19-07-2011 15:28 от гайка »
|
Записан
|
|
|
|
Dimka
Деятель
Команда клуба
Offline
Пол:
|
|
« Ответ #25 : 19-07-2011 17:28 » |
|
Ну вот, сразу всё понятно стало.
|
|
|
Записан
|
Программировать - значит понимать (К. Нюгард) Невывернутое лучше, чем вправленное (М. Аврелий) Многие готовы скорее умереть, чем подумать (Б. Рассел)
|
|
|
гайка
Гость
|
|
« Ответ #26 : 19-07-2011 17:34 » |
|
прям так сразу и всё-всё понятно? если это действительно так, то я тебе завидую...
|
|
|
Записан
|
|
|
|
Dimka
Деятель
Команда клуба
Offline
Пол:
|
|
« Ответ #27 : 19-07-2011 19:27 » |
|
Гайка, читать студенческий код - моя профессия У тебя он хотя бы отформатирован!
|
|
|
Записан
|
Программировать - значит понимать (К. Нюгард) Невывернутое лучше, чем вправленное (М. Аврелий) Многие готовы скорее умереть, чем подумать (Б. Рассел)
|
|
|
Антон (LogRus)
|
|
« Ответ #28 : 20-07-2011 04:50 » |
|
ну ничего так, сильно лучше чем у многих кстати в input_ij лучше заменить каскад if на switch ну и помелочи есть к чему придратся, например функция check: - индексы для циклов лучше объявлять внутри for если ты не собираешься после for как-то использовать индекс - результат лучше возврашать, а не передавать по ссылке - результат долже быть элемент enum, а не magic number - зачем передавать 2 массива, потом их копировать в зависимости от player, если можно в зависимости от player передавать снаружи, то что надо - массивы лучше передавать по ссылке, а т.к. они не меняются то по константной ссылке - я так понял check просто проверяет занятость диагональных клеток (если не смотреть в check_check), помоему ты немного перемудрила у меня получилось вот так: enum ECHECK_RESULT { ECHECK_BUSY = 1, ECHECK_NEAR, ECHECK_OK, ECHECK_LONG, ECHECK_MANY, };
bool isOnField(int i, int j, int max_i, int max_j) { return i < 0 || j < 0 || !(i < max_i && j < max_j); }
bool isOnFieldAndBusy(const bool & sub[n][n], int i, int j) { return isOnField(i-1, j-1, n, n) && sub[i][j]; }
ECHECK_RESULT check(int &i, int &j, int &kol, const bool & sub[n][n], int paluba[4]) { ECHECK_RESULT result = ECHECK_OK; if(sub[i][j]) return ECHECK_BUSY;// неверно, клетка уже занята
bool busy = isOnFieldAndBusy(sub, i, j) || isOnFieldAndBusy(sub, i-1, j-1) || isOnFieldAndBusy(sub, i-1, j+1) || isOnFieldAndBusy(sub, i+1, j-1) || isOnFieldAndBusy(sub, i+1, j+1); if (busy) result = ECHECK_BUSY;
if (result == ECHECK_OK) { kol++; result = check_check(i,j,kol,sub,paluba); } else kol=0; return result; } а код проверки результата выглядит так ECHECK_RESULT result = ECHECK_OK; do { input_ij(i,j); result = check(i,j,kol, (player ? sub1 : sub2 ),paluba); switch(result) { case ECHECK_BUSY: cout<<"Тут уже стоит корабль"<<endl; break; case ECHECK_NEAR: cout<<"Корабли нельзя ставить вплотную"<<endl; break; case ECHECK_LONG: cout<<"Слишком длинный корабль"<<endl; kol = 0; break; case ECHECK_MANY: cout<<"Слишком много "<<kol<<"-палубных кораблей"<<endl; kol = 0; break; } } ну и так далее
|
|
|
Записан
|
Странно всё это....
|
|
|
Never
|
|
« Ответ #29 : 20-07-2011 05:29 » |
|
Ага, правда клеточки прикольные. Спасибо за идею! Давайте, может еще кто что-то интересное вспомнит... Мало ли чего при обучении делали. Например, помню, мне было очень интересно делать задание по кодированию музыкальных звуков и привязке их к клавиатуре. Можно было играть несложные мелодии на клаве или записывать определенную последовательность заранее и комп это озвучивал. А препод наш сказал, глядя на наше оживление, что с товки зрения обучения программированию это задание абсолютно бесполезное, но "вы играйтесь, играйтесь..." )))
|
|
|
Записан
|
не умеете летать- не мучайте метлу!
|
|
|
RXL
|
|
« Ответ #30 : 20-07-2011 08:07 » |
|
Согласен - совершенно бесполезное Массив соответствий нажатых кнопок тонам - вся сложность.
|
|
|
Записан
|
... мы преодолеваем эту трудность без синтеза распределенных прототипов. (с) Жуков М.С.
|
|
|
гайка
Гость
|
|
« Ответ #31 : 20-07-2011 10:41 » |
|
кстати в input_ij лучше заменить каскад if на switch
свич тут не прокатит, свич не терпит string. там лучше if((s>='а')&&(s<='к')) j=(int)s+32; else { if((s>='А')&&(s<='К'))j=(int)s+64; } я так понял check просто проверяет занятость диагональных клеток
ну да, вроде того да я там много чего тогда перемудрила, просто очень многого еще не знала. и переменные называла транслитом : Добавлено через 1 минуту и 48 секунд:да и сейчас многого еще не знаю... ^_^ Добавлено через 5 минут и 1 секунду:а большинство массивов можно было объявить публично...
|
|
« Последнее редактирование: 20-07-2011 10:47 от гайка »
|
Записан
|
|
|
|
гайка
Гость
|
|
« Ответ #32 : 20-07-2011 12:47 » |
|
Джон, а я что? меня попросили выложить код (так настоятельно попросили, обвинили в стеснительности). спросила "куда?", говорят "сюда, в книги по с++", ну дык мне и не жалко его, конечно, использовать как учебное пособие по с++ смешно, но поковыряться и полюбопытствовать можно
|
|
|
Записан
|
|
|
|
Алексей++
глобальный и пушистый
Глобальный модератор
Offline
Сообщений: 13
|
|
« Ответ #33 : 20-07-2011 15:29 » |
|
Гайка, вместо свича можно ассоциировать строки с чем угодно
|
|
|
Записан
|
|
|
|
гайка
Гость
|
|
« Ответ #34 : 20-07-2011 16:28 » |
|
Гайка, вместо свича можно ассоциировать строки с чем угодно Как это сделать? PS: я еще не переварила рефакторинг Антона : Добавлено через 2 минуты и 4 секунды:Да и к тому же, зачем? чем тебе мой вариант не нравится (не тот, что в файле, а тот что я новый написала). правда он не совсем мой, это Finch, его идея.
|
|
« Последнее редактирование: 20-07-2011 16:30 от гайка »
|
Записан
|
|
|
|
Алексей++
глобальный и пушистый
Глобальный модератор
Offline
Сообщений: 13
|
|
« Ответ #35 : 20-07-2011 16:40 » |
|
Гайка, дык при помощи, к примеру, мапа std::map< std::string, тут_тип_ассоциированной_сущности> myswitcher; чем тебе мой вариант не нравится а про какой вариант речь ? Про лесенку ? Лесенка жутко не нравится
|
|
|
Записан
|
|
|
|
гайка
Гость
|
|
« Ответ #36 : 20-07-2011 17:11 » |
|
чем тебе мой вариант не нравится (не тот, что в файле, а тот что я новый написала)
if((s>='а')&&(s<='к')) j=(int)s+32; else { if((s>='А')&&(s<='К'))j=(int)s+64; } - это вместо половины лесенки, вторую лесенку можно через atoi Алексей, ты не обижайся, но все-таки не забывай, что я всего лишь студент (да-да, именно такой, каких А.П. Чехов и Dimka терпеть не могут ), про мап впервые слышу.... вижу, точнее. Добавлено через 7 минут и 59 секунд:Кому ж они нравятся, лесенки эти... просто пол года назад, когда я с книжкой в руках учила плюсы, я другого выхода не видела...
|
|
« Последнее редактирование: 20-07-2011 17:19 от гайка »
|
Записан
|
|
|
|
Антон (LogRus)
|
|
« Ответ #37 : 20-07-2011 17:28 » |
|
погодите насколько я помню 'A' это не строка, а символ, т.е. 8бит знакового целого (обычно так), а switch работает с числами какой-то жестокий offtop пошел, может разделим темку?
|
|
|
Записан
|
Странно всё это....
|
|
|
гайка
Гость
|
|
« Ответ #38 : 20-07-2011 18:01 » |
|
Антон, да ты прав. но последний вариант все равно короче, чем свич! вспомнила... я пыталась (тогда еще) свичом сделать вторую "лесенку", там m - строка (это необходимо, ведь вторая координата не всегда состоит из 1 символа, да и пользователь своими кривыми ручками может ввести что угодно) и из-за этого компилятор ругался. ребята, ну чего вы так прицепились к этой несчастной "защите от дураков"? разве это в игрушке главное? главное в check(), check_check(), go(), show_dead(). зачем делить тему?
|
|
|
Записан
|
|
|
|
Dimka
Деятель
Команда клуба
Offline
Пол:
|
|
« Ответ #39 : 20-07-2011 19:32 » |
|
Вот я тоже думаю. Девушка выложила из архивов свои старые первые "пробы пера", а их тут взялись разбирать, критиковать. Неужели кто-то думает, что Гайка будет переписывать свой старый морской бой?? Вот я свои "крестики-нолики" 8 класса берёг как память и назидание самому себе - мне и в голову не приходило их переписывать. Я над ними медитировал, сравнивая себя нынешнего с собою прошлым и гордясь тем, как я вырос над собой.
|
|
|
Записан
|
Программировать - значит понимать (К. Нюгард) Невывернутое лучше, чем вправленное (М. Аврелий) Многие готовы скорее умереть, чем подумать (Б. Рассел)
|
|
|
гайка
Гость
|
|
« Ответ #40 : 20-07-2011 21:36 » |
|
Dimka, в некоторых школах первоклассников просят нарисовать, кем они хотят стать, а перед выпуском в 11 классе им показывают эти рисунки. вот тут что-то подобное. нет, ребят, не подумайте, что я вам запрещаю ковыряться в коде... бога ради (чем бы дитя не тешилось ), не зря же я его выложила. можете даже попробовать сделать из него вкусную конфетку я и сама понимаю (и сразу вам об этом сказала), что код дилетантский. каждый из вас когда-то писал программульки с костылями и "лесенками"
|
|
|
Записан
|
|
|
|
Ochkarik
|
|
« Ответ #41 : 21-07-2011 14:06 » |
|
Never, шарик который отскакивает от стенок монитора) в школе была задачка) алгоритм строчек в 15-20) потом можно на его основе кучу игрушек придумать) и в консоли пойдет легко)
|
|
|
Записан
|
RTFM уже хоть раз наконец! :[ ну или хотя бы STFW...
|
|
|
гайка
Гость
|
|
« Ответ #42 : 21-07-2011 14:18 » |
|
Ochkarik, я могу растянуть строчек на 100, я умею
|
|
|
Записан
|
|
|
|
Never
|
|
« Ответ #43 : 21-07-2011 14:21 » |
|
Ochkarik, да, пожалуй, у меня это на Флеше было реализовано. Можно, спасибо
|
|
|
Записан
|
не умеете летать- не мучайте метлу!
|
|
|
Dale
|
|
« Ответ #44 : 21-07-2011 15:10 » |
|
Never, я вот что вспомнил: на закате СССР под редакцией С. Капицы издавался очень интересный журнал "В мире науки" (перевод "Scientific American" примерно 2-месячной давности). Там была постоянная рубрика "Занимательный компьютер" под редакцией Алана Дьюдни (и несколько статей его предшественника Б. Хэйеса), где на домашних компьютерах решались всякие увлекательные задачи. Причем персоналки тех лет графикой не баловали, в основном все делалось на консоли, зачастую хватало даже Basic'a. Вот здесь указатель статей за 1983-1993 гг. (то есть до того самого момента, когда журнал угробили перестройкой). Поищите там автора Дьюдни. Сам журнал нашел на торрентах. В данный момент на раздачах 44 сида, качается быстро. Еще есть книга Ж. Арсак, "Программирование игр и головоломок". Качать здесь. Там тоже практически все можно реализовать на консоли. Правда, задачи Дьюдни показались мне интереснее. P.S. В свое время получал массу удовольствия, воплощая эти нехитрые игры на самодельном домашнем компьютере. Надеюсь, начинающим они понравятся и сегодня.
|
|
|
Записан
|
Всего лишь неделя кодирования с последующей неделей отладки могут сэкономить целый час, потраченный на планирование программы. - Дж. Коплин.
Ходить по воде и разрабатывать программное обеспечение по спецификациям очень просто, когда и то, и другое заморожено. - Edward V. Berard
Любые проблемы в информатике решаются добавлением еще одного уровня косвенности – кроме, разумеется, проблемы переизбытка уровней косвенности. — Дэвид Уилер.
|
|
|
Алексей++
глобальный и пушистый
Глобальный модератор
Offline
Сообщений: 13
|
|
« Ответ #45 : 21-07-2011 15:48 » |
|
Ж. Арсак, "Программирование игр и головоломок"
ооо, глаз зацепился за знакомое имя и знакомое название... Посмотрел обложку - ага, есть у меня где-то такая книжка ) Только вот что-то поделать по ней вроде так руки и не дошли
|
|
|
Записан
|
|
|
|
гайка
Гость
|
|
« Ответ #46 : 21-07-2011 19:01 » |
|
Шарик, пожалуйста, забацала... получите, распишитесь
|
|
« Последнее редактирование: 21-07-2011 19:32 от Джон »
|
Записан
|
|
|
|
Finch
Спокойный
Администратор
Offline
Пол:
Пролетал мимо
|
|
« Ответ #47 : 21-07-2011 19:27 » |
|
Гайка, Первое что бросается в глаза. У тебя слишком много в коде "магических чисел".
|
|
|
Записан
|
Не будите спашяго дракона. Джаффар (Коша)
|
|
|
гайка
Гость
|
|
« Ответ #48 : 21-07-2011 19:29 » |
|
Finch, каких чисел?
|
|
|
Записан
|
|
|
|
Finch
Спокойный
Администратор
Offline
Пол:
Пролетал мимо
|
|
« Ответ #49 : 21-07-2011 19:35 » |
|
Вот например твой код void print_ball(int &i,int &j) { int k,l; for(k=1;k<n-1;k++) { for(l=1;l<m-1;l++) field[k][l]=' '; } for(k=0;k<7;k++) { for(l=0;l<10;l++) { if(((k==0)||(k==6))&&((l>1)&&(l<8))) field[i+k][j+l]='#'; else { if(((k==1)||(k==5))&&((l>0)&&(l<9))) field[i+k][j+l]='#'; else { if((k>1)&&(k<5)) field[i+k][j+l]='#'; else field[i+k][j+l]=' '; } } } } output(); } Сама через пол года будеш долго вспоминать что такое: 10, 7, 5, 6, 9, 8. Почему именно их выбрали? Вот такие необъяснимые числа с первого взгляда и называются "магические числа". Я сам порой грешу, но стараюсь как можно меньше использовать. Лучше всего обозначить их через #define и закоментировать прокоментировать.
|
|
« Последнее редактирование: 21-07-2011 19:53 от RXL »
|
Записан
|
Не будите спашяго дракона. Джаффар (Коша)
|
|
|
Джон
просто
Администратор
Offline
Пол:
|
|
« Ответ #50 : 21-07-2011 19:35 » |
|
Джон, окей, я на сипипи файл заменила
Я же был прицепил полностью твой проект, только без файлов, которые генерятся студией. Так что всё в порядке. На будущее, всё что в Debug папке, можешь удалять, кроме ЕХЕ. Потом .suo .sdf и папку ipch тоже нафик.
|
|
|
Записан
|
Я вам что? Дурак? По выходным и праздникам на работе работать. По выходным и праздникам я работаю дома. "Just because the language allows you to do something does not mean that it’s the correct thing to do." Trey Nash "Physics is like sex: sure, it may give some practical results, but that's not why we do it." Richard P. Feynman "All science is either physics or stamp collecting." Ernest Rutherford "Wer will, findet Wege, wer nicht will, findet Gründe."
|
|
|
гайка
Гость
|
|
« Ответ #51 : 21-07-2011 19:46 » |
|
Джон, предупреждать надо к тому же проект был прицеплен через яндекс.народ.ру (ужасное место), а ты ссылку не менял вроде... Finch, ты прав, я просто ленюсь... эти цифры связаны с размером "шарика", он у меня не совсем круглый, 7*10 символов. рандомная точка - в верхнем левом углу, от нее начинается построение фигуры (у меня язык не поднимается ее шариком назвать). Добавлено через 5 минут и 25 секунд:Кстати, в этом куске кода последний else можно нахрен удалить...
|
|
« Последнее редактирование: 21-07-2011 19:51 от гайка »
|
Записан
|
|
|
|
Джон
просто
Администратор
Offline
Пол:
|
|
« Ответ #52 : 21-07-2011 19:53 » |
|
Дык, а чего предупреждать? Я ж к сообщению прицепил. Размер 14 кБ - вполне нормально. А на яндексе для гигантоманов-любителей, я ничего менять и не собирался.
|
|
|
Записан
|
Я вам что? Дурак? По выходным и праздникам на работе работать. По выходным и праздникам я работаю дома. "Just because the language allows you to do something does not mean that it’s the correct thing to do." Trey Nash "Physics is like sex: sure, it may give some practical results, but that's not why we do it." Richard P. Feynman "All science is either physics or stamp collecting." Ernest Rutherford "Wer will, findet Wege, wer nicht will, findet Gründe."
|
|
|
гайка
Гость
|
|
« Ответ #53 : 21-07-2011 20:00 » |
|
ну дык никто же не знает, что по ссылке для гигантоманов... 8) не знал...
|
|
|
Записан
|
|
|
|
Never
|
|
« Ответ #54 : 22-07-2011 21:10 » |
|
Dale, спасибо за ценную инфу. И вообще, ребята, всем участвовавшим в теме, спасибо. Я получила даже больше чем расчитывала
|
|
|
Записан
|
не умеете летать- не мучайте метлу!
|
|
|
itrobo
Новенький
Offline
|
|
« Ответ #55 : 30-12-2018 07:00 » |
|
уже три года веду кружок программирования и разработал интересный практикум программирования на си http://itrobo.ru/programmirovanie/praktikum-programmirovanija-po-si.html в него входит анимация, диалог с компьютером, игры крестики нолики и движение в лабиринте думаю для начинающих будет очень интересно
|
|
« Последнее редактирование: 30-12-2018 11:41 от RXL »
|
Записан
|
|
|
|
|