| Гелла |
30.03.2006 19:50
Сообщение
#1
|
![]() Пионер ![]() ![]() Группа: Пользователи Сообщений: 84 Пол: Женский Репутация: 0 |
Я вот хочу научится программировать..один очень хороший человек на этом форуме подсказал, что лучше учиться программировать в процессе написания игр........какую самую простую игру вы можете посоветовать..Заранее Большое Спасибо....Не умею правильно пользоваться поиском по форуму..поэтому не отсылайте плиз в поиск........
-------------------- И полусонным стрелкам лень
Ворочаться на циферблате И дольше века длится день.. И не кончается объятье... |
![]() ![]() |
| Гелла |
10.04.2006 16:58
Сообщение
#2
|
![]() Пионер ![]() ![]() Группа: Пользователи Сообщений: 84 Пол: Женский Репутация: 0 |
Программа работает!У меня был неправильный паскаль...стоило переустапновить паскаль и всё заработало...вроде во всём разобралась...
Goodwind: "..это неправильные пчелы.. "© Винни-Пух Сообщение отредактировано: GoodWind - 11.04.2006 6:26 -------------------- И полусонным стрелкам лень
Ворочаться на циферблате И дольше века длится день.. И не кончается объятье... |
| Lapp |
12.04.2006 11:40
Сообщение
#3
|
![]() Уникум ![]() ![]() ![]() ![]() ![]() ![]() ![]() Группа: Модераторы Сообщений: 6 823 Пол: Мужской Реальное имя: Лопáрь (Андрей) Репутация: 159 |
Гелла, привет. Режь меня - не могу представить ситуацию, чтоб "неправильный" Паскаль компилил прогу так, чтоб она неправильно работала! Мистика какая-то.. У Турбо Паскаля и установки-то как таковой нету - просто копируй файлы, да и все.
Ну, что ж - можно топать вперед.. Но только движение вперед всегда относительно. Сейчас мы сделаем программу, которая делает в точности то же самое Мы оптимизируем, или просто улучшим программу. Любая сколь-нибудь серьезная программа может быть улучшена сразу после написания. Сначала ты пишешь текст, отлаживаешь, видишь - все работает. Но после этого замечаешь, что программа может быть улучшена.. Посмотри текст внизу. Запусти его (можешь на этот раз скопировать), убедись, что все действительно работает по-старому. После этого сравни его со старым текстом. Найди, как грится, десять отличий. И попытайся тут высказать, какие улучшения мне удалось сделать в этой совсем небольшой программке {Version 02}
-------------------- я - ветер, я северный холодный ветер
я час расставанья, я год возвращенья домой |
| Гелла |
13.04.2006 16:42
Сообщение
#4
|
![]() Пионер ![]() ![]() Группа: Пользователи Сообщений: 84 Пол: Женский Репутация: 0 |
program snake_2; Она не работает...только не понимаю почему..ошибок никаких, а на экране вообще ничего не появляется... просто чёрный экран... Сообщение отредактировано: volvo - 2.11.2006 12:33 -------------------- И полусонным стрелкам лень
Ворочаться на циферблате И дольше века длится день.. И не кончается объятье... |
| Lapp |
14.04.2006 6:06
Сообщение
#5
|
![]() Уникум ![]() ![]() ![]() ![]() ![]() ![]() ![]() Группа: Модераторы Сообщений: 6 823 Пол: Мужской Реальное имя: Лопáрь (Андрей) Репутация: 159 |
Цитата(Гелла @ 13.04.2006 16:42) Она не работает...только не понимаю почему..ошибок никаких, а на экране вообще ничего не появляется... Гелла, привет! просто чёрный экран... Ты молодец, я бы принес тебе большую конфету, если бы был твоим учителем! Ты не воспользовалась данным мной разрешением копировать текст (copy-paste), а набрала руками! Это оказалось неожиданно очень полезно - вылезла ошибка (не ошибка, скорее пробел), которую я бы пропустил. Слушай, если уж ты такая усердная - давай я тебя еще об одном попрошу, а? Пожалуйста, отвечай хотя бы коротко на все пункты (явные и неявные) в моих постах. Типа - "это - поняла, это просто!". Или: "а это - кажется, понятно но может не совсем.." Договорились? Итак, про тот пробел. В Паскале есть декларация CONST. Она означает, что величины в ней изменяться никогда не будут, всегда сохраняя значение, заданное в тексте программы. У меня такими константами заданы границы игрового поля (которое сейчас занимает весь текстовый экран), а также промежуток времени и символ головы. Поскольку величины, заданные в этом разделе, никогда не изменяются, то компилятор реально не отводит для них ячейки памяти. Он поступает проще: везде, где эта константа (скажем, xn или xx) встретится в тексте, он подставит число, которому она равна (в данном случае 1 или 80). То есть программа компилируется как если бы мы сразу написали 1 вместо xn и 80 вместо xx. Так зачем они тогда нужны, спрашивается? А нужны они для удобства программирования (как и вообще все языки Есть еще один большой плюс констант. Они могут использоваться в качестве границ при определении массивов. Более того, можно даже использовать арифметические выражения с ними при проеделении размерности массива (типа N*2+3). Это очень удобно, так как обычно в программе обычно присутствуют несколько массивов, размерности которых связаны между собой каким-либо образом (не обязательно равны). Но это еще не есть тот самый пробел. Это присказка. Двигаемся дальше.. Я начал разговор о константах потому, что причина того, почему программа у тебя не заработала, связана с константами. В Паскале есть еще понятие "типизированные константы". С ними может возникнуть путаница, так как это совсем не константы. Для них отводится память, как для переменных, они используются, как переменные. И их нельзя использовать в определении размерности массива. Почему они тогда называются константы? Это никому неизвестно. Но они действительно помещаются в раздел CONST. Вот так: const По сути, эти штуки лучше было бы назвать "инициализированные переменные", так как смысл именно тот: это обычная переменная, но имеющая определенное начальное значение (значение обычных переменных перед выполнением программы не определено). Так вот, в ТР7 это делается именно так, как я описал выше. Теперь идем еще дальше.. В FreePascal (FPC), которым пользуется твой покорный слуга, видимо, решили исправить это досадное недоразумение. Они разрешили инициировать переменные, то есть делать так: var Замечаешь разницу? Теперь заголовок var, а не const. То есть в FPC можно использовать и const, и var. Ну и я, ессно, использовал var! Когда ты набирала первую версию, ты вышла из этого положения корректно: ты перенесла инициализацию в исполняемый блок (молодец!). А во второй версии ты этого не сделала (теряюсь в догадках, почему). Собственно, ты сейчас должна догадаться, как исправить мой текст Версии 2. Да, правильно - изменить словечко var на const (первое из них, второе не надо). Теперь понятно? Уфф... пойду перекушу перед походом в зал - иначе упаду в середине игры.. Жду ответа с нетерпением. С отметками - что ясно, что нет.. Чао! -------------------- я - ветер, я северный холодный ветер
я час расставанья, я год возвращенья домой |
| volvo |
14.04.2006 15:01
Сообщение
#6
|
|
Гость |
Цитата(lapp @ 14.04.2006 6:06) Теперь идем еще дальше.. В FreePascal (FPC), которым пользуется твой покорный слуга, видимо, решили исправить это досадное недоразумение. Они разрешили инициировать переменные, то есть делать так: varЗамечаешь разницу? Теперь заголовок var, а не const. То есть в FPC можно использовать и const, и var. lapp, я понимаю, что это мое замечание немного не в тему, этому можно посвящать отдельную ветку, но все же... Я увидел, как ты, сам того не подозревая, даешь не совсем верную информацию, и просто не мог пройти мимо. Насчет: Цитата(lapp @ 14.04.2006 6:06) То есть в FPC можно использовать и const, и var. Можно-то можно, но это же не одно и то же... Ты здесь не столкнулся с проблемой только потому, что использовал ГЛОБАЛЬНЫЕ переменные/константы. И не только поэтому... Дело все в том, что FPC милостиво разрешает тебе использовать иVar a: integer = 1; и Const a: integer = 1; по одной простой причине: это делается для совместимости с Дельфи. И у тебя, скорее всего, в настройках среды установлена по-умолчанию именно совместимость с Дельфями... А я уже говорил, и опять повторяю, что нельзя надеяться, что у всех среда настроена так же, как у тебя. Если я хочу, чтобы у всех, кто попробует откомпилировать мою программу, результат был одинаков - я не буду полагаться на настройки IDE, а буду использовать ключи и режимы компиляции. Так вот попробуй свою программу откомпилировать при установленном первой строкой ключе {$mode TP}
и ты увидишь, что FPC может и кусаться, не всегда он ласково трется об руку и мурлычет Кроме того, вот тебе пример, иллюстрирующий разницу между типизированными константами и переменными с начальным значением (при использовании их ЛОКАЛЬНО): 1) procedure a; 2) procedure a; Вроде, одно и то же, правда? Откомпилируй, и почувствуй разницу... |
Гелла С какой игры начать? 30.03.2006 19:50
lapp Я тут попробовал провести небольшую классификацию ... 31.03.2006 7:10
Ozzя Гелла
Морской бой. Я начинал именно с него.
Далее... 31.03.2006 7:44
Бродяжник Гелла
Добро пожаловать в клуб игроделов-любителей... 31.03.2006 9:04
volvo Гелла, ты ответы ЧИТАЕШЬ, или БЕГЛО ПРОСМАТРИВАЕШЬ... 31.03.2006 19:52
Ozzя lapp
5. Еще есть синоним (?) - adventure
Interac... 31.03.2006 9:33
Гелла Блин...боюсь мне не под силу даже змейка и морской... 31.03.2006 19:47
Гелла :unsure:
Не надо так нервничать..... :no1: :uns... 31.03.2006 20:40
hardcase К теме. Видел книгу по созданию 3д стратегии на С+... 31.03.2006 22:23
Ozzя Гелла
Морской бой
Давай по порядку
Алгоритм игры с... 1.04.2006 9:03
Бродяжник Гелла, не расстраивайтесь. Вы сказали: "не зн... 3.04.2006 11:21
lapp Гелла, постарайся быть все же поактивнее! Теб... 4.04.2006 9:25
FreeMan Идея дальше - нужны яблоки :) заодно и работа с ма... 4.04.2006 16:39
Гелла program zmeika;
uses crt;
const
xn=1;
xx=80;
yn=1... 4.04.2006 21:36
lapp А змейка не появляется..Только целая строчка восьм... 5.04.2006 5:40
volvo Гелла, ты пропустила 2 оператора, которые как раз ... 4.04.2006 22:51
Бродяжник Гелла
Поздравляю с тем, что Вы таки начали это дел... 5.04.2006 12:27
lapp Гелла, интерес пропал? Скажи, что именно тебя сму... 7.04.2006 1:25
Гелла
Нет, всё в порядке....конечно мне это очень нужн... 7.04.2006 14:32
lapp Гелла, тебе не нужно было оправдываться.. Мне (да... 8.04.2006 5:33
suriv
X:=X+VX
после той запятой ставиться то число ... 7.04.2006 22:04
Гелла
а вот этого точно быть не может.. :wink: не могу... 8.04.2006 12:20
lapp
а вот этого точно быть не может.. :wink: не могу ... 9.04.2006 4:44
Гелла
:good: 9.04.2006 11:39
Phillip I can't hear anything over the sound of how as... 24.02.2013 5:50
Гелла
все удивляются..но так и было...на том старом пас... 12.04.2006 17:11
lapp volvo, спасибо, мне действительно недоставало ясно... 15.04.2006 14:13
Гелла Привет lapp!
Договорились...
это мне пон... 16.04.2006 18:53
volvo Гелла, делаешь очень опасную ошибку... Она никак н... 16.04.2006 20:22
Гелла
Спасибо, я даже не знала, что в TP cтолько тонко... 16.04.2006 22:53
Бродяжник Привет, Гелла!
Возможно, эта ошибка содержится... 17.04.2006 8:28
Гелла Привет Бродяжник!
поставила ....
Ура!О... 17.04.2006 12:32
Бродяжник Молодица!
:)
Теперь подумайте, чем эта прогр... 17.04.2006 13:19
Гелла
Нужно, чтобы змейка кушала, и становилась длинне... 17.04.2006 16:33
Бродяжник Угу.
Для этого нужно, чтобы:
а) было что кушать;
б... 17.04.2006 16:56
Гелла
я думаю, это будет двумерный массив?!? 17.04.2006 17:19
lapp Вот это я понимаю - коллективная работа!
Гелла... 18.04.2006 2:47
Бродяжник Гелла, слушайте Lappa :)
А я пока отдохну пойду..... 18.04.2006 8:26
Гелла
Что то я так запуталась в этой блок схеме...хоче... 20.04.2006 17:36
Гелла Привет lapp!
Вообщем мы убрали переменные x... 24.04.2006 16:00
GoodWind Гелла, у нас же не игра "найди 10 отличий... 25.04.2006 6:24
Гелла
:mega_chok: :unsure:
:unsure: :unsure: :... 27.04.2006 19:44
lapp
:mega_chok: :unsure:
:unsure: :unsure: :unsu... 28.04.2006 14:27
Гелла
Не поняла...?!? :blink: :wink: 28.04.2006 15:27
lapp
Не поняла...?!? :blink: :wink:
Была поздняя... 29.04.2006 0:45
lapp После некоторого перерыва (очень извиняюсь), возвр... 3.05.2006 13:10
ThEEnD Лазил я тут на форуме и вдруг нашёл эту тему! ... 18.09.2011 19:29
Krjuger Наверно потому что от обучаемой небыло вестей........ 18.09.2011 19:50
ThEEnD Ну, не всё ж обучаемой, на верняка многие за темой... 18.09.2011 20:40
Lapp Ну, не всё ж обучаемой, на верняка многие за темой... 19.09.2011 6:35
ThEEnD О'кей, потом выложишь? 19.09.2011 20:21
Игорь Извиняюсь что не по теме, но не мог бы ты, Lapp, к... 4.10.2011 18:29
Lapp Извиняюсь что не по теме, но не мог бы ты, Lapp, к... 5.10.2011 7:17
Игорь Чесно говоря, особо не углублялся в поиски поэтому... 6.10.2011 15:53
Гость
Я вот хочу научится программировать..один очень х... 12.08.2014 20:53
MEXAHIK
Я вот хочу научится программировать..один очень х... 12.08.2014 20:58![]() ![]() |
|
Текстовая версия | 8.12.2025 15:42 |