Игры на паскаль примеры. Создание компьютерной игры на языке Pascal. Name, Head, Cl - строковые переменные, записываемые в файл

Признаюсь, я потратила 40 минут на то, чтобы написать первое предложение. Я писала и стирала, писала и стирала, писала и стирала. Приготовила кофе в надежде, что это поможет мне собраться, но увы, чудодейственная сила кофе на этот раз меня подвела. И все продолжилось заново. Писала и стирала, писала и стирала.

Я знаю, что многие рисующие жалуются на страх белого листа. Корень этого страха был для меня не ясен. Берете лист подешевле, заточенный карандаш и рисуете. Лист можно предварительно «подпортить», побрызгав на него краской или приклеив вырезки из журнала. Но что делать с белоснежным листом в Word? Его не измажешь тушью, не приклеишь стикеры, не проведешь хаотичные линии. Девственность электронного листа будет съедать глаза и заставлять сердце безжалостно колотиться в груди.

Писала и стирала, писала и стирала, писала и стирала. Часы предательски показывают 10:00. Значит прошел уже час, а я написала всего два абзаца. И даже не по теме сегодняшнего поста!

А тема простая – рисовальные челенджи. Они были придуманы такими же потерянными художниками, как мы с вами, которые постоянно находятся в поисках ответов на вечные вопросы: «Где взять сюжет для рисунка?», «Что рисовать?», «Как не повторяться?», «Где взять вдохновение?», «Я хочу рисовать, но не знаю что!».

Тему предложила моя подруга, и я с радостью за нее взялась. Но, когда я села писать текст (полтора часа назад), я и не думала, что это окажется так трудно. В чем дело? Неужели я не могу просто составить список популярных челенджей?

Оказалось, что такая безобидная и развлекательная тема спровоцировала меня на размышления более высокого порядка. Мне кажется, что неспособность написать вразумительный текст и отсутствие идей для рисунка имеют один корень. И его можно сформулировать так: «А что я черт подери хочу сказать?» Может, все те вопросы, что мы задавали себе раньше были сформулированы неправильно? И вместо вопроса: «Что рисовать?», нужно спросить себя: «А что я люблю? Что важно для меня?» Популярность некоторых тем в Инстаграме может сбивать с толку: пирожные, пончики, капкейки, макаруны, цветы, и Шерлоки, наброски в кафе, и скетчинг маркерами - все это пользуется большой популярностью, но оно вам надо? Это то, что действительно интересует вас? Мы мечемся из стороны в сторону, лихорадочно пытаясь повторить уже отрисованные сюжеты вместо того, чтобы спросить себя: «Кто я?»

Соглашусь, это чертовски сложный вопрос, который иногда лишает нас сна и аппетита. Но, возможно, ответ на него даст идеи для творчества? Для кого-то красота натуры – это самый главный источник вдохновения. Трепетное отношение к окружающей среде, дарам природы, милым сердцу безделушкам очень многое рассказывает о человеке (флешмоб или челендж от Натали Ратковски). А для кого-то вымысел является путеводной звездой, и никакая натура не способна справиться с могучей силой фантазии.

Кто вы? Любитель анимэ, защитник окружающей среды, фантазер, преданный поклонник Толкина, кошатник, или безумный собачник, меломан, шут, странник, гедонист, трудоголик, мама, рассказчик, выдумщик, спортсмен, феминистка, социопат, весельчак, любитель фруктов, и смузи, лентяй, сладкоежка, фланер, в душе дизайнер, мечтатель, кофеман, сноб, велолюбитель, путешественник?

Вы можете рассказывать о том, что вам нравится и что вас волнует, привлекать внимание людей к проблемам, которые по вашему мнению имеют вес, можете смешить и развлекать, обращать внимание зрителя на красоту мира, вдохновлять и показывать пример.

Многие готовы переплачивать в разы, чтобы лететь бизнес-классом.

Просто за возможность вытянуть ноги и выспаться в полете.

А как насчет жить бизнес-классом?

Мало кто осознает, что настоящий комфорт - он в голове, а не в удобных кожаных креслах.

Реальный бизнес-класс по жизни - это чистое и ясное сознание, внимательность, спокойный дрессированный ум.

Билет сюда за деньги не купить, только через внутреннюю работу, самоограничение и методичную практику.

Поэтому минимум раз в год надо ездить на ретрит. А для тех, кто сильно занятой - ДВАЖДЫ в год.

Конечно, выбор есть всегда.

В душном суетном экономе тоже можно жить, если нравится.

Но зачем, если всего за несколько дней интенсивной практики можно заслужить апгрейд в прохладный и чинный бизнес-класс?

«Ниббана» - буквально означает «прохлада».

Не загоняться и на залипать, быть внимательным, здесь и сейчас, на спокое, в доверии, в дружелюбии и принятии - это и есть прохлада.

Год выдался насыщенным на события и опыты, пришло время отутюжить свои читта-вритти (колебания ума) и прополоть самскары.

Так что завтра праздник - ухожу на очередной ретрит. На этот раз - в монастыре на Шри Ланке.

Желаю всем сделать свой ум пригодным местом для жизни и путешествовать по жизни только первым классом!

День #1

Вчера вернулся с ретрита. Он был короткий - всего пять дней. Но даже этого оказалось достаточно, чтобы соприкоснуться со своей внутренней тишиной и вспомнить.

Вспомнить о таких банальных, но от этого не менее важных истинах, как жить здесь и сейчас и не обкрадывать настоящий момент мыслями о прошлом и будущем; о том, что счастье - внутри и оно всегда с нами, ждет пока мы туда заглянем.

Собственно, за этим вспоминанием я и хожу на ретриты, пройдя уже более десяти за последние пять лет.

Как обычно, после ретрита полон вдохновения изменить мир к лучшему и сделать все, чтобы КАЖДЫЙ открыл для себя медитацию.

Но начать стоит с себя, конечно же.

Ведь каждый раз одна и та же история - на волне энтузиазма практикуешь несколько недель или даже месяцев, но потом начинается…

Сначала постепенно сокращаешь время практики до символических 15 минут, а потом и вовсе «забиваешь» в некоторые дни, ведь, само собой, времени нет сидеть, есть дела поважнее!

И когда «времени нет» это знак, что ты снова начинаешь забывать те самые прописные истины, которые так явно проживал на каждом ретрите.

О том, что главное - это состояние. Это первично.

Дела и вся внешняя движуха - это производно (и зависимо) от первого.

Простыми словами, важнее не то, что ты делаешь, а в каком состоянии сознания ты это делаешь.

Прошу, пусть я это снова не забуду!

Вообщем, с намерением стабилизировать практику я решил устроить себе несладкий челлендж - 365 дней медитации.

Идея проста - медитировать кажый день и вести дневник, в котором делиться короткими заметками, относящимися (или не очень!) к практике.

Не знаю, что из этого получится. Ссыкотно, признаюсь, брать такой комитмент на целый год, ведь как все мы знаем, «обстоятельства бывают разные»… Но вместе с тем, обещаю честно делиться сложностями и обломами, которые возникают на пути, ведь для кого-то это тоже может быть ценно.

Сегодня хорошо позанимался - три часа в совокупности. Продышался, тушку размял, посидел 53 минуты.

В Коломбо дождь фигачит стеной уже второй день, обожаю под шум дождя медитировать. Из сложностей - только мухи, которые ползали по лицу и заползали в уши. Первые полчаса принимал и отпускал, потом все таки накинул сверху плед и посидел спокойно еще полчаса.

Одним словом, вот бы весь год так утро начинать, но не привязываемся - аничча - все непостоянно.

День #2

спасибо за поддержку, друзья.

Ну что, продолжим.

Спрашивали, где медитировал на Шри Ланке - центр называется Nilambe, легко гуглится.

Учитель там своеобразный. Упул зовут.

Вообще, мне нравятся учителя «без фанатизма» - которые не впадают в крайности.

Ну к примеру, Будда предписывал своим ученикам не есть после полудня. Поэтому на буддистких ретритах, где я был, строго соблюдалось это правило - завтрак рано утром и обед до 12, так чтобы уложиться до полудня, а потом - пост до следующего утра.

Так вот, удивлением было, что в Ниламбе помимо завтрака и обеда давали еще вечерний перекус - ну там, шпинатный супчик или тосты с арахисовой пастой.

Строго говоря, это в нарушение канона, но, черт возьми, это настолько по-человечески и адекватно этому конкретному месту! Центр расположен высоко в горах, поэтому там сыро и прохладно и к вечеру так хочется согреться чем-то горячим…

Так вот, про учителя. Его лекции были невыносимо скучными. Целый час он мог разжевывать какую-нибудь банальщину. Очень медленно. Делая минутные паузы между фразами. Повторяя то же самое еще раз.

На одной из лекций Упул рассказывал, как важно стать лучшим другом самому себе.

My dear Dhamma friends, it is very important to become best friend for yourself.

На разные лады он повторял одну и ту же фразу - снова и снова. Как будто он пытался объяснить что-то очень сложное группе умственно отсталых.

Ну сколько же можно долдонить одно и то же?! Я поглядывал на часы - до обеда еще полчаса…

И тут мое сердце открылось и я услышал его послание - не умом, но сердцем.

Я - свой лучший друг. Я - свой самый верный и надежный друг. Я есть у себя и этого достаточно. Я не одинок, мне хорошо с собой. Я есть у себя.

Эта фраза так глубоко зашла, что до сих пор внутри звучит его голос на ломанном английском «become best friend for yourself».

Сегодня я размышлял, а что же это значит? Как это - быть лучшим другом самому себе?

У каждого из нас есть хотя бы один хороший друг. И этот друг, конечно же, совсем не идеальный, но мы все равно его любим и принимаем - «как есть».

Стать другом себе означает принять и полюбить себя во всем своем несовершенстве.

Первый шаг к дружбе - знакомство.

На первых ретритах нас шокирует увидеть, сколько же внутри нас «говна» - навязчивых мыслей, паранойи, страхов, загонов, придуманных умом мелодрам, сколько подавленных эмоций - тоски, одиночества, скуки, похоти, агрессии, непринятия…

В жизни мы делаем все, чтобы убежать от себя, чтобы не видеть всего этого, а тут - вот оно, как под микроскопом.

Нужна смелость, чтобы заглянуть в темные уголки своего сознания, чтобы начать замечать свои теневые стороны.

Так мы знакомимся с собой. По мере того, как мы лучше узнаем себя, мы расстаемся со своими иллюзиями и это несладко.

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

Медитация учит нас все это видеть. Просто видеть, замечать и главное - позволять этому быть.

В этом и заключается трансформирующий ключ практики - позволять всему быть. Не подавлять, не прятать, не оценивать. Давать пространство, давать внимание, давать время. Позволять. Не вмешиваться.

Следующий шаг - мы начинаем лучше понимать себя и развивать сострадание к самому себе.

Начинаем принимать свое несовершенство. Более того, начинаем любить и ценить себя такими, какие мы есть.

Важно понять: практика не делает нас совершенными (упс, плохие новости!)

Я уже пять лет медитирую плюс-минус регулярно и прошел больше 10 ретритов и что ты думаешь, «говна» стало меньше?

Да ничего подобного!

Все так же загоняюсь, ревную, чувствую тоску и скуку, меня все так же может «вынести» какая-нибудь мелочь, иногда (почти каждый день) я чувствую вожделение, довольно часто - беспокойство и т.д.

Но вот что изменилось за эти пять лет - я стал лучше себя понимать. Стал с большим терпением относиться к себе. Стал больше принимать себя в своих различных проявлениях. И да - стал больше любить себя. Несмотря ни на что.

Скажем, пять лет назад я бы точно не решился публично признаться в своих «пороках» - скажем, приступах похоти, ревности или даже ненависти. Как же так? Ведь я же «хороший», я - «духовный».

Но сейчас я стал лучше понимать, как все это устроено у меня внутри, как работает ум. Мысли, эмоции, состояния - все это процессы, которые приходят и уходят в поле моего сознания, не делая меня ни плохим, ни хорошим. Я позволяю энергиям различных вибраций проходить через свою систему, не отождествляясь с ними и не присваивая их себе.

Сейчас я меньше боюсь одиночества и даже наслаждаюсь уединением. Я больше верю в себя и свои силы, лучше чувствую свои потребности.

Так рождается дружба с самим собой. Через принятие, не через насилие. Через понимание, не через подавление.

Мы сами можем дать себе ту любовь, принятие и одобрение, которые обычно клянчим у окружающих.

А что для вас значит быть другом самому себе?

День #3

Чаще всего, в медитации ничего не происходит.

Ну в смысле, ничего особенного, ничего выдающегося. Такого, чтобы можно было рассказать друзьям за ужином, а они от удивления будут слушать с открытыми ртами.

Вот сегодня, например, была очень обычная практика.

Вчера переехал из Коломбо в колониальный Галле Форт и меня поселили на первом этаже - прямо по соседству с кафешкой при отеле.

Как раз когда сел медитировать, в кафешке началась жизнь - включили музыку и хоть она ненавязчивая и негромкая, все равно отчетливо слышно каждую мелодию.

Тут где-то неподалеку началась стройка - застучали молотками.

Вот в кафе кому-то выжимают сок, вот гремят тарелками.

Внутренний фон тоже довольно беспокойный - посторонних мыслей больше, чем обычно. Стабилизировать внимание в настоящем моменте тоже заняло гораздо дольше времени, чем вчера или позавчера.

Довольно скоро затекла правая нога и в дополнение ко всему добавился еще и физический дискомфорт, который постепенно начал нарастать.

Я поставил будильник на 55 минут. Судя по прослушанным мелодиям, осталось сидеть еще где-то полчаса. Уф, жестко.

Так, что это за болтовня опять?

Такие медитации я называю сложными.

Ошибочно считать такие сессии - плохими или неудачными. Все как раз наоборот. Именно такие медитации - это и есть честная практика и работа над собой, в этом и заключается суть медитации. Да, знаю, вы только что растеряли весь свой энтузиазм попробовать. Но что поделать, это правда.

Многие из вас знают, о чем я говорю. Если ваш стаж «отсидки» хотя бы сотню-другую часов, то вы знаете, что именно такие «сложные» медитации - самые ценные, они дают наибольшую практическую пользу.

В таких медитациях культивируется целый букет полезнейших качеств характера, таких как терпение, стойкость, усидчивость, выносливость, решимость, сила воли, выработка привычки выполнять данные себе обещания.

Еще один полезный эффект от «сложных» медитаций - принятие несовершенства жизни и «попускание» по поводу ожиданий.

Потому что с первых минут понимаешь, что ничего эпичного на этот раз не произойдет. Тарелки будут греметь, молотки стучать, ум отвлекаться, нога болеть - и так и пройдет этот час. И он будет тянуться целую вечность. И ничего особенного так и не произойдет.

А что вообще особенного должно происходить в медитации? Чего ты ждешь? Что особенного должно происходить в твоей жизни? Чего ты ждешь?

Нас обуславливают стремиться к пикам, к вершинам, к кульминации, к экстазу, к оргазму, к катарсису.

Которые, безусловно, прекрасны, я не спорю.

Но стремясь к «пикам», мы обесцениваем «долины» - из которых на 99.9% и состоит наша жизнь.

Обычные дни, когда ничего особенного не происходит.

Можем ли бы принять обыденность и несовершенство жизни? Можем ли мы разглядеть в этом красоту? Можем ли мы расслабиться в том, что есть и перестать ждать чего-то «особенного»?

Пусть это воскресенье будет таким, какое есть. Желаю вам ничего не ждать, хотя бы сегодня.

День #4

Поделюсь одним лайфхаком, который "спасает" мои медитации.

Запретить себе подглядывать, сколько еще осталось.

Казалось бы мелочь, но этот принцип «спас» уже не одну мою сессию.

Почему не стоит подглядывать?

Потому что ты в любом случае проиграешь и потеряешь настрой.

Допустим, сидеть уже невыносимо скучно/больно/грустно и ты приоткрыл глаза, чтобы посмотреть - «ну сколько там еще осталось?»

И тут по сути, возможно, два варианта.

Первый - ты видишь, что осталось самая малость, ну там меньше пяти минут.

Не знаю, как у других, но меня это всегда так огорчает!

«Блин, осталось всего пара минут! почему я не мог досидеть эту сессию с достоинством, без этой суеты? зачем поддался на игры ума?»

После таких сессий остается привкус легкой неудовлетворенности собой.

Другая ситуация.

Ты приоткрываешь глаза и видишь, что осталось еще, скажем, 17 минут.

СЕМНАДЦАТЬ!! что при текущих раскладах равно ВЕЧНОСТЬ.

Боевой настрой стремительно падает, запускается психодрама «О нет, еще таааак долго! Я не выдержу, сегодня не мой день, что-то не задалось.»

В любом из этих случаев, знание о том, сколько еще осталось никак не помогает медитировать.

Поэтому лучше не знать, сколько осталось. Пусть звук будильника всегда будет неожиданным и радостным.

Радостным, потому что он всегда означает хоть маленькую, но победу.

День #5

Спрашивают, а почему сижу именно 55 минут?

Сегодня расскажу, как выбрать оптимальную длительность медитации.


Внешняя пассивность медитации обманчива. Каждый, кто хоть раз пробовал посидеть 20-30 минут, знает, что медитация - это большая работа.

В медитации нагрузка идет сразу на нескольких уровнях:

Физический уровень - нарастающий телесный дискомфорт, боль, усталость

Ментальный уровень - слабая концентрация, поток неконтролируемых и навязчивых мыслей, нестабильность внимания, сонливость и вялость сознания

Психоэмоциональный уровень - нестабильный эмоциональный фон, негативные эмоции и состояния, психическая усталость, раздражение, отчаяние

Чем выше длительность, чем выше нагрузка, причем рост нагрузки идет непропорционально, а скорее по экспоненте.

Например, 60 минут это ГОРАЗДО сложнее чем 30 минут.

Это все равно, что тяжелоатлету поднять штангу в два раза тяжелей. Разумеется, это не просто в два раза сложнее. Это квантовый скачок, выход на принципиально новый уровень, требующий месяцы и даже годы упорных тренировок.

Поэтому нагрузку надо выбирать адекватную своему текущему уровню, с учетом своего образа жизни и прочих факторов.

Выбранная длительность должна давать вам ощутимую нагрузку (иначе не будет развития!), но эта нагрузка не должна быть для вас запредельной (иначе вы не выдержите).

Почувствовать, о какой нагрузке идет речь, и определить для себя оптимальную длительность, можно только на практике.

Новичкам 10-15 минут будет достаточно. После того, как на этом уровне закрепились (= регулярно практикуете по 10-15 минут), можно задуматься о том, чтобы сидеть дольше, если у вас есть такой запрос.

Увеличивать длительность надо постепенно, без сверх-амбиций - не больше чем на 5 минут от комфортной длительности, каждый раз снова стабилизируясь на новом уровне.

Так постепенно это будет 20 минут, потом 25, 30 и так далее.

Почему я выбрал для себя сидеть по 55 минут?

Потому что для меня на данный момент это оптимальная нагрузка. Отсидеть 55 минут - это реальный челлендж, это сложно, идет хорошая проработка по всем аспектам.

Но в то же время, это для меня не запредельно. На недавнем ретрите было 2-3 сессии каждый день, когда мы сидели примерно столько, поэтому я знаю, что могу.

Мой учитель Энтони, например, каждый день сидит по три часа - одной сессией, не вставая. Для меня это запредельно. Может один раз и высижу на морально-волевых, но регулярной практикой это не станет, а значит и смысла особо нет.

Еще одна причина - 55 минут это психологически не так страшно для ума, как час и меньше поводов для роста эго:)

Все таки сидеть по часу - это уже серьезный уровень практики, а мне сознательно хотелось снизить важность, поэтому решил выбрать чуть меньше часа.

День #6

Сегодня была «кайфовая» медитация.

С самого начала я чувствовал глубокое расслабление в теле, быстро стабилизировал внимание в настоящем моменте, мыслительный фон спокойный, эмоциональный фон стабильный, ничего не тревожит, ничего не отвлекает…

В таких медитациях обычно «ловишь кайф» в виде необычных и, как правило, весьма приятных ощущений, переживаний и состояний.

Например, у меня сегодня было чувство легкости и даже невесомости в теле.

Еще одно очень приятное переживание, которое сегодня было - ощущение внутреннего расширения. Это трудно словами объяснить, как будто бы с каждым дыханием ты становишься все больше - разрастаясь до размеров вселенной.

И параллельно с этим тело расслабляется все глубже, нигде нет ни малейшего дискомфорта…


Это одна из тех медитаций, когда забываешь о времени, хочется сидеть еще и еще и звонок будильника кажется преждевременным - «да ладно, неужели уже все?!»

Если честно между нами, разве это не то, к чему мы стремимся в медитации?

Улететь, выйти в астрал, раствориться, поймать дзен и т.д.

На самом деле, это очень распространенная ошибка начинающих - гнаться за кайфом в медитации. Я сам страдал этим первый год практики.

Тогда я считал, что именно такой и должна быть правильная медитация - необычной, психоделичной, блаженной.

Я считал, что именно к таким переживаниям в медитации НАДО стремиться. Что хорошая медитация - это когда мысли затихают и внутри происходит различный психодел - расширение до размеров Вселенной, сжатие в точку, фракталы, видения, потеря ощущения времени.

Мне казалось, что медитация ДОЛЖНА приводить к измененному состоянию сознания, а если этого не приходит, то я что-то неправильно делаю (и зря трачу свое время).

Поэтому когда в медитации ничего подобного не происходило (а чаще всего именно так и было, и есть, и будет!), я расстраивался.

К счастью, позже и благодаря мудрым учителям я осознал, что как раз гнаться за кайфом - это и есть пустая трата времени, а не честная практика.

Сейчас мое отношение к подобным «кайфовым» опытам сдержанное:

Да, иногда медитации бывают такими. Иногда приходят необычные состояния и переживания.

Нет, это не значит, что ты чего-то «достиг».

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

Потому что чаще всего когда необычные состояния приходят, мы настолько уходим за ними, что легко забываем об объекте медитации - ощущениях при дыхании.

Цель медитации не в том, чтобы куда-то улететь, а наоборот, в том чтобы максимально полно присутствовать в здесь и сейчас.

И в этом плане кайфовые медитации сложнее и опасней, чем обычные и скучные.

Уйти за кайфом очень соблазнительно, но зрелый медитатор в момент «расширения до размеров Вселенной» должен задать себе простой вопрос:

Прекрасно, а что я сейчас чувствую в районе пупка на вдохе?

День #7

Сегодня про критику.

Последнюю неделю я выкладывал свои заметки о медитации и спровоцировал ряд критических и порой язвительных замечаний:

  • Кто-то считает, что я недостаточно просветлен, чтобы вести эти заметки о СВОЕМ опыте медитации.
  • Кто-то уверен, что медитации, ретриты и путешествия - это просто моя жалкая попытка убежать от «реальности», которая, по мнению автора, наиболее проявлена в Челябинской области.
  • Кто-то советует все таки использовать мозг, а не «разрушать» его в медитации.
  • Кто-то подбадривает мол «посмотрим, сколько ты продержишься!»

Это хорошо.

За последние несколько лет я кое-что понял о критике.

Критика - это верный признак того, что вы делаете действительно что-то настоящее и ценное.

Потому что настоящее всегда цепляет, задевает, будоражит, гладит против шерсти.

И наоборот: если вас никто не критикует, скорей всего, в попытке понравиться всем вы не проживаете свою аутентичную жизнь, которая всегда требует смелых и нестандартных решений, которые не будут поняты и приняты большинством.

Я это по своему опыту могу сказать - каждый мой смелый и нестандартный шаг всегда вызывал критику.

  • Как насчет бросить карьеру юриста и начать этот блог по саморазвитию?
  • Или решение зарабатывать на своем любимом деле, проводить семинары?
  • Путешествовать большую часть года?

Мой каждый искренний пост вызывают критические комментарии, каждое видео на ютюбе собирает по несколько негативных откликов…

Честно говоря, последние пять лет я почти каждый день получаю критику в той или иной форме.

И знаете что?

Я благодарен за эту критику не меньше, чем я благодарен за одобрение и слова поддержки.

Критика моего творчества - признак того, что я затрагиваю действительно актуальные и острые темы. Критика моего образа жизни - признак того, что я на верном пути и живу своей жизнью, не обращая внимания на общепринятые стереотипы.

Тут главное научиться не воспринимать критику на свой счет.

Потому что как правило, критические замечания не имеют к вам ни малейшего отношения.

Критика напрямую относится к тому, кто ее выражает, потому что отражает внутренний мир человека, со всеми его внутренними неразрешенными конфликтами, сомнениями, неуверенность, комплексами, неудовлетворенностью жизнью и проекциями.

На вас же все это обрушивается, просто потому что вы своим текстом/примером/решением задели человека за живое, всколыхнули, поставили под сомнение устоявшиеся убеждения - одним словом, погладили против шерсти.

Значит остро, значит живое.

Что же, сегодня седьмой день, прошла неделя, как я начал свой челлендж - 365 дней медитации.

Я не знаю, чем закончится этот челлендж. Я не знаю, продержусь ли я до конца.

Но знаете что?

Бывают игры, в которых ты всегда выходишь победителем.

Вот что я знаю точно: пользу от практики я получаю каждый день.

Даже за эти семь дней ежедневной медитации после ретрита я чувствую себя очень хорошо, ясно, созидательно.

Хотите тоже поучаствовать в игре, в которой вы гарантированно выиграете в любом случае?

Предлагаю взять челлендж медитировать вместе со мной. На любой срок, не обязательно на год!

На семь дней, на 21, на месяц, на три…

При любом раскладе, вы все равно выигрываете.

Если вы вдохновились принять участие, просто напишите в комментариях ниже «беру челлендж медитировать 21 дней » , ну или сколько хотите.

Что если я не умею медитировать - с чего начать?

1. Если вы только начинаете знакомство с медитацией, то можете взять за основу семь уроков медитации моего бесплатного курса .

Чтобы получать уроки на почту, надо подписаться

  1. Если вводные уроки уже проходили, то советую задаться целью сформировать привычку медитировать и взять челлендж на 21 день .

За основу практики можете взять мой полный курс по медитации Mind Detox 21 . Уже не одна сотня человек ввели в свою жизнь регулярную медитацию с помощью этого курса.

Ну а если вы уже опытный практик, то вы и сами знаете, что и как надо делать, осталось только стабилизировать свою практику, потому что только через регулярную практику можно открыть для себя весь потенциал медитации.

Welcome to the dhamma club! Присоединяйтесь, будем вместе медитировать и вдохновлять друг друга.

P.S. понятия не имею, о чем писать каждый день целый год, так что если вам что-то интересно по практике медитации или просто о жизни, путешествиях, бизнесе и т.д., спрашивайте в комментариях.

Форма регистрации

Вдохновение и практическая мудрость в твоём ящике

70.000+ человек уже сделали свой выбор и читают мою рассылку. Многие письма я пишу только для подписчиков и больше нигде не публикую.

ОСТОРОЖНО! Дважды подумай, подписываться тебе или нет, потому что:

Во-первых, как ты уже понял, я из тех чудаков, кто пишет олдскульные лонгриды, требующие полчаса твоего времени. Во-вторых, мои посты неминуемо и необратимо будут "перепрошивать" твое сознание и как следствие - менять твою жизнь. В-третьих, ты окажешься в сообществе думающих и развивающихся людей, а это всегда челлендж.

Так что подумай дважды и подписывайся, только если ты готов развиваться.


Сегодня несложные игры, где нет ни графических, ни звуковых эффектов, переживают второе рождение. Играя в них, пользователь сосредотачивается на сюжете, а не на художественных приемах. Для создания таких игр хорошо подходит язык Паскаль.

Инструкция

  • Скачайте компилятор языка Паскаль со следующей страницы - http://edn.embarcadero.com/article/20803. Ознакомьтесь с условиями использования данного программного пакета, после чего установите его.
  • Попробуйте создать игру, в которой от игрока требуется угадать число в интервале от 0 до 100. Вначале введите название программы:program ugadayka;
  • Подключите модуль CRT:uses crt;
  • Обозначьте переменные следующим образом:var
  • zagadka,mnenie,popytki:integer;

  • Начните программу с очистки экрана и переменных, а также присвоения загаданному числу псевдослучайного значения:begin
  • zagadka:=int(rnd*100);

  • Заставьте компьютер спрашивать у пользователя, каким, по его мнению, является загаданное число, до тех пор, пока он его не угадает:while not mnenie=zagadka do
  • popytki:=popytki+1;

    writeln("Попытка номер ",popytki,".");

    write("Как ты думаешь, какое число загадано? ");

    if zagadka>mnenie then writeln("Нет, загаданное число больше!")

    else writeln("Нет, загаданное число меньше!")

  • После того как число будет угадано, автоматическое повторение указанных выше событий прекратится. Начнется выполнение следующих строк программы. В них заставьте машину вывести информацию о том, что пользователь угадал число:writeln("Поздравляю! Ты угадал число с попытки номер ",popytki,". Оно действительно равно ",zagadka,".");
  • knopochka:=readkey

  • Введите оператор для завершения работы программы:end.
  • Сохраните программу под любым желаемым именем, используя пункты меню file -> Save as. В дальнейшем после каждого редактирования сохраняйте ее нажатием клавиши F2.
  • Для запуска программы на исполнения нажмите одновременно клавиши Control и F9.
  • После завершения работы программы для того, чтобы увидеть, что она вывела на экран непосредственно перед этим, нажмите одновременно клавиши Alt и F5. Для возврата к редактору нажмите это же сочетание клавиш еще раз.
  • Отправить свою хорошую работу в базу знаний просто. Используйте форму, расположенную ниже

    хорошую работу на сайт">

    Студенты, аспиранты, молодые ученые, использующие базу знаний в своей учебе и работе, будут вам очень благодарны.

    Размещено на http://www.allbest.ru/

    Размещено на http://www.allbest.ru/

    Введение

    1. Постановка задачи

    2. Описание данных

    3. Алгоритмы и блок-схемы

    4. Программа на языке Pascal с комментариями

    Заключение

    Список использованной литературы

    ВВЕДЕНИЕ

    Основной целью данного курсового проекта является закрепление и демонстрация знаний, полученных при изучении курса информатики.

    Выполнение работы требует творческого подхода и применения дополнительных знаний из области графики. Курсовой проект не предполагает дальнейшего коммерческого использования данного программного продукта.

    1. Постановка задачи

    Требуется создать игру, основным смыслом которой является то, что в одной части экрана перемещаются объект одного типа(«Самолёт»), а в другой части экрана находится объект другого типа(«Средство противовоздушной обороны»), и «Средство ПВО» должно сбивать «Самолёт».

    а) Выбор, обоснование и изложение метода решения задачи.

    Я предпочёл использование динамической памяти, прорисовку текстур в отдельной процедуре.

    С динамической памятью в данном случае очень удобно организовать одновременное перемещение динамических объектов по экрану с минимальным мерцанием экрана.

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

    б) Построение алгоритма задачи.

    Программа начинается с меню, если же выбор пал на меню «Start Game» то сначала в динамическую память заносятся «чистые» квадраты экрана, затем последовательно на экран выводятся изображения динамических объектов и последовательно же заносятся в динамическую память. «Чистые» квадраты при этом накладываются на зарисованную область экрана, чтобы при сканировании последующих изображений не возникало конфузов.

    в) Создание и отладка программы.

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

    г) Оформление пояснительной записки и защита курсового проекта.

    2. Описание данных:

    Size1, Size2, Size3, Size4 - переменные целого типа, которые хранят в себе область, выделяемую для динамических переменных.

    Pustota, Sam1, Rocket, F16 - динамические переменные, которые хранят в себе объекты игры.

    Key - булиновая переменная, принимает значение TRUE при нажатии клавиш.

    Name , Head, Cl - строковые переменные, записываемые в файл:

    NAME - хранит имя игрока, вводимое с клавиатуры;

    HEAD и CL - содержат строку, представляющую из себя совокупность дискрипторов языка HTML, которые, после записи в файл, преобразовывают его в HTML страницу.

    F1 - файловая переменная

    Event - переменная, описывающая события (тип: Tevent);

    3. Блок-схема

    4. Программа на языке Pascal c комментариями

    Uses Crt,App,Dialogs,Objects,Drivers,Views,Graph;

    Procedure Super_Mega_Game;

    Label b1;

    var Driver1,Mode,Size,Size2,x,y,size3,n,xs,d2,d11,d12,m,xt,p,h,Size4:Integer; s:char; Pustota,Sam1,Rocket,F16:Pointer; key:boolean; Name,Head,Cl:String; F1:Text;

    begin

    Randomize;

    xs:=1;

    Driver1:=Detect;

    Mode:=Detect;

    InitGraph(Driver1,Mode,"");

    ClearDevice;

    SetBkColor(3);

    Size:=ImageSize(0,0,53,53);

    GetMem(Pustota,size);

    GetImage(0,0,53,53,Pustota^);

    Size2:=ImageSize(640,0,600,40);

    GetMem(Sam1,Size2);

    SetColor(Yellow);

    Line(605,35,630,35);

    LIne(630,35,635,40);

    LIne(600,40,605,35);

    Line(600,40,635,40);

    Line(615,35,615,29);

    Line(615,29,620,35);

    SetColor(6);

    Line(610,32,620,24);

    Line(610,29,620,21);

    SetColor(Red);

    Line(620,24,624,20);

    Line(620,21,624,20);

    Arc(610,30,0,90,2);

    GetImage(640,0,600,40,Sam1^);

    Size4:=ImageSize(100,100,150,150);

    GetMem(F16,Size4);

    {КОРПУС}

    SetColor(6);

    Line(105,120,135,120);

    Line(105,114,130,114);

    {КАБИНА}

    Setcolor(Blue);

    Arc(131,117,0,90,3);

    Setcolor(6);

    Line(134,117,144,118);

    Line(134,120,144,118);

    {ПЕРВОЕ КРЫЛО}

    Line(115,119,113,130);

    Line(113,130,117,130);

    Line(117,130,121,119);

    Line(115,119,121,119);

    {ХВОСТ}

    Line(105,114,101,110);

    Line(101,110,105,120);

    {ВТОРОЕ КРЫЛО}

    Line(119,114,117,109);

    Line(117,109,113,109);

    Line(113,109,114,114);

    GetImage(100,100,150,150,F16^);

    PutImage(100,100,Pustota^,NormalPut);

    Size3:=ImageSize(640,0,600,40);

    GetMem(Rocket,Size3);

    SetColor(6);

    Line(610,32,620,24);

    Line(610,29,620,21);

    SetColor(Red);

    Line(620,24,624,20);

    Line(620,21,624,20);

    Arc(610,30,0,90,2);

    GetImage(640,0,600,40,Rocket^);

    Setcolor(6);

    Line(1,460,640,460);

    x:=6;

    y:=400;

    n:=0;

    m:=0;

    xt:=5;

    p:=1;

    h:=0;

    PutImage(585,10,Pustota^,NormalPut);

    RepeatRepeatif p=1 then begin Delay(100); PutImage(xt,100,F16^,NormalPut); xt:=xt+1; h:=h+1; if h=550 then p:=0; end;if p=0 then begin delay(100); PutImage(xt,100,F16^,NormalPut); xt:=xt-1; h:=h-1; if h=0 then p:=1; end;key:=KeyPressed;if (key=True) then goto b1;until s=chr(27);

    b1:

    s:=ReadKey;

    if s=chr(77) then x:=x+4;

    if s=chr(75) then x:=x-4;

    if s=chr(72) then begin Repeat PutImage(x+51+n,y-35-n,RocKet^,NormalPut); inc(n); PutImage(x+51+n,y-35-n,Pustota^,NormalPut); if (x+51+n)=550 then n:=300; until n=300; PutImage(x+n,y-35-n,Pustota^,NormalPut); if ((y+51+n)>100) and ((x+51+n)>(xt-10)) and ((x+51+n)<(xt+60)) then begin OutTextXY(250,200,"F16-vipe out!!!"); s:=chr(27); end; n:=0; end;

    PutImage(x-4,y,Pustota^,NormalPut);

    PutImage(x,y,Sam1^,NormalPut);

    until s=chr(27);

    readln;

    CloseGraph;

    TextColor(Green);

    Write("Input Your Name: ");

    Readln(Name);

    Head:="
    Winer!!!

    ";

    Cl:="
    ";

    Head:=concat(Head," MegaMen: ",name,cl);

    assign(F1,"Namer.htm");

    Rewrite(f1);

    Write(f1,head);

    Close(f1);

    end;

    type

    PProg=^TProg;

    TProg=object(TApplication)

    Constructor Init;

    end;

    Pdial=^TDial;

    TDial=object(Tdialog)

    Procedure HandleEvent (var Event:TEvent);

    Virtual;

    end;

    constcmPrint = 100;

    Constructor TProg.Init;

    varR:TRect;Dia:Pdial;g:char;

    begin

    Inherited Init;

    R.assign(20,9,60,17);

    Dia:=New(PDial,Init(R,""));

    R.assign(3,4,22,6);

    Dia^.Insert(New(PButton,Init(R,"Start Game",cmPrint,bfDefault)));

    R.assign(23,4,35,6);

    Dia^.Insert(New(PButton,Init(R,"Quit",cmCancel,bfNormal)));

    if execView(Dia)=cmPrint then begin Super_Mega_Game; Writeln("Press "b" for back to main menu"); repeat g:=ReadKey; if g="b" then begin clrscr; end; until g="b"; Writeln("Press "Alt-x" for Quit"); end;

    end;

    Procedure TDial.HandleEvent (var Event:TEvent);

    begin

    Inherited HandleEvent(Event);

    if (Event.What=evCommand) and (Event.Command=cmPrint) then EndModal(cmPrint);

    end;

    Procedure Batva;

    var

    Prog:TProg;

    begin

    Prog.Init;

    Prog.Run;

    Prog.Done;

    end;

    begin

    batva;

    end.

    5. Руководство пользователя для работы в программе

    При запуске программы появляется меню, предлагающее широкий выбор пунктов.

    Курсор перемещается при помощи клавиш курсора, выбор осуществляется клавишей ENTER .

    При выборе какого-либо пункта меню появляется соответствующее сообщение, однако же, при выборе пункта «Программа» запускается непосредственно сама игра.

    Суть игры заключается в сбивании самолётов средством ПВО.

    Средство ПВО может с помощью курсора перемещаться по экрану в горизонтальном направлении. При нажатии клавиши «пробел» средство ПВО совершает выстрел. Если снаряд попадает в то появляется надпись-“F-16 wipe out”. После того, как самолёт сбит вам предлагается написать своё имя, а затем просит нажать “b” -которая выводит вас на экран, на котором при нажатии ALT+X выводит вас из программы.

    компьютерный игра текстура программа

    Заключение

    В процессе отладки программы возникли сложности с тем, что при сканировании полного экрана и последующем использовании этого объекта программа начинала резко замедлять скорость своей работы. Преодоление этого препятствия заключалось в сканировании небольших частей экрана и дальнейшем их использовании.

    Длителен также процесс детальной прорисовки графики.

    Необходимо, чтобы в той папке, где лежит данная программа, находился файл egavga.bgi . Этот файл имеется во многих версиях ТР в папке bin, он отвечает за инициализацию графики.

    Список использованной литературы.

    1. Меженный О.А. «Turbo Pascal-учитесь программировать»; Москва-С. Петербург-Киев; «Диалектика»; 2001; 448с.

    2. Бабушкин И.А.; «Практикум по ТР» - учебное пособие по курсам ИВТ; Москва, 1998.

    3. http://www.freepascal.org;

    4. http://www.geocities.com/~franzglaser/tp.htm;

    5. http://www.garbo.uwasa.fi/pc/turboobj.html;

    Размещено на Allbest.ru

    Подобные документы

      Разработка и реализация компьютерной игры "Змейка" с помощью языка программирования Pascal и модуля CRT. Составление общего алгоритма программы, выделение ее функциональных частей. Разработка тестовых примеров. Использование типизированных файлов.

      курсовая работа , добавлен 23.02.2011

      Характеристика вычислительной системы и инструментов разработки. Программирование на языке Pascal в среде Turbo Pascal и на языке Object Pascal в среде Delphi. Использование процедур, функций, массивов, бинарного поиска. Создание базы данных в виде файла.

      отчет по практике , добавлен 02.05.2014

      История развития языка программирования Java. История тетриса - культовой компьютерной игры, изобретённой в СССР. Правила проведения игры, особенности начисления очков. Создание интерфейса программы, ее реализация в среде Java, кодирование, тестирование.

      курсовая работа , добавлен 27.09.2013

      Алгоритмическое представление и описание правил игры "Эволюция". Построение диаграммы прецедентов. Разработка графического интерфейса пользователя. Реализация интерфейса в среде Unity. Структура файла сохранения игры. Проектирование поведения компьютера.

      дипломная работа , добавлен 18.02.2017

      Описание правил игры "Морской бой". Особенности современных компьютеров и искусственного интеллекта. Создание общей блок-схемы программы, ее внешний вид. Необходимые переменные, процедуры и функции. Характеристика объектов, используемых в приложении.

      курсовая работа , добавлен 05.11.2012

      Разработка программы логической игры в "крестики-нолики" пять в ряд на поле размера 15х15 клеток с применением графики на языке Pascal с использованием объектно-ориентированного программирования. Структура алгоритма программы и описание ее работы.

      курсовая работа , добавлен 13.02.2012

      Основы работы на языке высокого уровня Turbo Pascal. Основное оборудование и программное обеспечение. Операторы, необходимы для работы в графической среде Turbo Pascal. Запуск графического режима. Текст программы в графической среде Turbo Pascal.

      лабораторная работа , добавлен 14.05.2011

      Разработка программы казуальной игры "Zuma Deluxe" на языке С\С++. Использование стиля древних инков и ацтеков, возможностей графического движка HGE version 1.53. Назначение основных классов игры. Руководство пользователя, содержание главного меню.

      курсовая работа , добавлен 28.10.2014

      Язык программирования Pascal и его турбооболочка. Аналитический обзор игрового программного обеспечения. Функции модуля Crt. Постановка задачи создания несложной игровой программы "Турбозмей", алгоритм реализации и описание пользовательского интерфейса.

      курсовая работа , добавлен 15.05.2014

      Реализация основных алгоритмических структур. Усеченный условный оператор и оператор exit. Цикл с параметром (счетный цикл). Распечатка таблиц функций. Средства разработки программ на языке Free Pascal. Разработка игрового приложения "Быки и коровы".

    Textual {Игра сапер} uses GraphABC,ABCObjects,ABCButtons; Const N = 10; //Поле N х N sz = 40; //Размер клетки d0 = 10; //Отступ от левого и верхнего края zz = 2; //Растояние между ячейками NMines = 10; //Количество мин Type OneSellField = record mine: boolean; //Есть ли мина fl: boolean; //Есть ли флажок neighbours: integer; //полож.-Сколько соседей; отриц - нужны для алгоритма трассировки - открытия пустых клеток click: boolean; //Была ли открыта end; Var BtNewGame: ButtonABC; Sell: array of SquareABC; Field: array of OneSellField; c: shortint; //Для подсчета мин в соседних клетках Opened: shortint; //Сколько флажков правильно поставленно Nfl: Integer; //Количество поставленных флажков (для победы должно быть равно кол. мин) Procedure CreateField; begin for var y:= 1 to N do for var x:= 1 to N do begin Sell := new SquareABC(d0+(x-1)*(sz+zz),d0+(y-1)*(sz+zz), sz, clLightSeaGreen); Sell.BorderColor:= clGreen; Sell.BorderWidth:= 2; Sell.TextScale:= 0.7; end; end; Procedure NewGame; var Rx, Ry: integer; begin for var j:=1 to N do for var i:=1 to N do begin Field.mine:= false; Field.click:= false; Field.fl:= false; Field.neighbours:= 0; Sell.BorderColor:= clGreen; Sell.Text:= ""; Sell.Color:= clLightSeaGreen; end; //Размещаем мины for var i:= 1 to NMines do begin Rx:= Random(N)+1; Ry:= Random(N)+1; //Если в выбранной ячейки есть мины, то генерируем новые координаты мины while Field.mine do begin Rx:= Random(N)+1; Ry:= Random(N)+1; end; Field.mine:= true; end; { //Временная подсказка где мины for var j:=1 to N do for var i:=1 to N do begin if Field.mine then Sell.BorderColor:= clYellow; end; } var ii, jj:shortint; //Считаем мины вокруг for var j:=1 to N do for var i:=1 to N do begin c:= 0; for var dx:= -1 to 1 do begin for var dy:= -1 to 1 do if not ((dx = 0) and (dy = 0)) then begin ii:= i + dx; jj:= j + dy; if ((ii > 0) and (ii <= N) and (jj > 0) and (jj <= N)) then begin c:= c + Integer(Field.mine); end; end; end; Field.neighbours:= c; end; Opened:= 0; //Кол. открытых мин Nfl:= 0; //Кол. установленных флажков end; Procedure OpenZero(fx, fy: integer); var fl:boolean; step, ii, jj: integer; begin Field.neighbours:= -1; step:= -1; repeat fl:= true; for var x:= 1 to N do begin for var y:= 1 to N do begin if Field.neighbours < 0 then begin {*** Проверка соседних клеток ***} for var dx:= -1 to 1 do begin for var dy:= -1 to 1 do if not ((dx = 0) and (dy = 0)) then begin //Центральную клетку не считаем ii:= x + dx; jj:= y + dy; //Если не выходит за границы поля if ((ii > 0) and (ii <= N) and (jj > 0) and (jj <= N)) then begin if Field.neighbours = 0 then begin Sleep(30); //Для анимации открывания клеток Sell.Color:= clLightYellow; Field.click:= true; Field.neighbours:= step; fl:= false; //Была открыта клетка - ищем др. end; if Field.neighbours > 0 then begin Sell.Color:= clLightGreen; Sell.Text:= IntToStr(Field.neighbours); Field.click:= true; end; end; end; end; {********************} end; end; end; step:= step - 1; until fl; end; Procedure MouseDown(x, y, mb: integer); begin if ObjectUnderPoint(x,y)=nil then // Eсли мы щелкнули не на объекте, то не реагировать на мышь exit; var fx:= (x-d0) div (sz+zz) + 1; // Вычислить координаты на доске для ячейки, на которой мы щелкнули мышью var fy:= (y-d0) div (sz+zz) + 1; Field.click:= true; if mb = 1 then begin //Если щелкнули по мине if Field.mine then begin Sell.Text:= "M"; Sell.Color:= clRed; //writeln("Проиграл!"); end else begin //Если щелкнули по пустой клетке if (Field.neighbours = 0) then begin Sell.Color:= clLightYellow; if Field.fl then Sell.Text:= ""; //Вызов процедуры раскрытия пустых полей OpenZero(fx, fy); end else if Field.neighbours > 0 then begin Sell.Color:= clLightGreen; Sell.Text:= IntToStr(Field.neighbours); end; end; end; //Ставим и снимаем флажок if mb = 2 then begin if Field.fl then begin //Снимаем флажок Field.fl:= False; Sell.Text:= ""; Sell.Color:= clLightSeaGreen; Nfl -= 1; if (Opened = NMines) and (Nfl = NMines) then writeln("Победа!"); //Window.Title:= IntToStr(Nfl)+" M "+IntToStr(Opened); end else begin //Ставим флажок Field.fl:= true; Sell.Text:= "F"; Sell.Color:= clBlue; Nfl += 1; //Window.Title:= IntToStr(Nfl)+" M "+IntToStr(Opened); end; if Field.mine then begin if Field.fl then Opened += 1 else Opened -= 1; //Window.Title:= IntToStr(Nfl)+" M "+IntToStr(Opened); if (Opened = NMines) and (Nfl = NMines) then writeln("Победа!"); end; end; end; Procedure MouseMove(x, y, mb: integer); begin if ObjectUnderPoint(x,y)=nil then // Eсли мы щелкнули не на объекте, то не реагировать на мышь exit; var fx:= (x-d0) div (sz+zz) + 1; // Вычислить координаты на доске для ячейки, на которой мы щелкнули мышью var fy:= (y-d0) div (sz+zz) + 1; {Все клетки зеленые} for var j:= 1 to N do for var i:= 1 to N do begin if not Field.click then Sell.Color:= clLightSeaGreen; end; {Все клетки зеленые, а над которой мышка - ярко зеленая} if not Field.click then Sell.Color:= clLightGreen; end; BEGIN SetSmoothingOff; //Отключаем сглаживание Window.Title:= "Сапёр"; Window.IsFixedSize:= True; CreateField;//Создаем поле btNewGame:= ButtonABC.Create(535, d0, 100, "Новая игра", clSkyBlue); btNewGame.OnClick:= NewGame; NewGame; OnMouseDown:= MouseDown; OnMouseMove:= MouseMove; END.