<?xml version="1.0" encoding="windows-1251"?>
<rss version="2.0" xmlns:atom="http://www.w3.org/2005/Atom">
	<channel>
		<atom:link href="https://programki.0pk.me/export.php?type=rss" rel="self" type="application/rss+xml" />
		<title>Форум программистов</title>
		<link>http://programki.0pk.me/</link>
		<description>Форум программистов</description>
		<language>ru-ru</language>
		<lastBuildDate>Mon, 03 Jul 2023 04:04:49 +0300</lastBuildDate>
		<generator>MyBB/mybb.ru</generator>
		<item>
			<title>Топовые мобильные прокси фермы MobileProxy.ru</title>
			<link>http://programki.0pk.me/viewtopic.php?pid=57#p57</link>
			<description>&lt;p&gt;&lt;a href=&quot;https://postimages.org/&quot; rel=&quot;nofollow&quot; target=&quot;_blank&quot;&gt;&lt;img class=&quot;postimg&quot; loading=&quot;lazy&quot; src=&quot;https://i.postimg.cc/Y2VrXMMs/topgoods.jpg&quot; alt=&quot;https://i.postimg.cc/Y2VrXMMs/topgoods.jpg&quot; /&gt;&lt;/a&gt; Внимание, владельцы бизнеса! Представляем вам уникальное решение для оптимизации вашего интернет-присутствия - топовые мобильные прокси фермы от Mobileproxy.ru! &amp;#9989; Наше оборудование это передовое устройство, которое позволяет вам выходить в интернет сразу с нескольких IP-адресов из одного места. &amp;#9989; Однако важно отметить, что наша техника не обеспечивает анонимность и она не предназначена для обхода блокировок, выход в сеть осуществляется с использованием купленных вами сим-карт. &amp;#9989; Теперь самое интересное! Приобретая оборудование от Mobileproxy.ru с использованием промокода s455, вы получаете невероятную скидку в размере 5000 рублей! Это отличная возможность сэкономить и воспользоваться передовыми технологиями для вашего бизнеса. &amp;#9989; Наши мобильные прокси фермы откроют перед вами широкие возможности. Вы сможете одновременно управлять несколькими аккаунтами, заниматься продвижением сайтов, сдавать прокси ферму в аренду, собирать данные с разных источников одновременно и многое другое где нужно одновременно несколько подключений к сети и периодическая смена ip адреса. С Mobileproxy.ru ваш бизнес будет оперативным, эффективным и успешным! &amp;#9989; Не упустите возможность улучшить свое интернет-присутствие и сэкономить деньги! Посетите наш веб-сайт &lt;a href=&quot;https://mobileproxy.ru/,&quot; rel=&quot;nofollow&quot; target=&quot;_blank&quot;&gt;https://mobileproxy.ru/,&lt;/a&gt; выберите подходящее оборудование, введите промокод s455 при оформлении заказа и получите скидку в размере 5000 рублей! &amp;#9989; Mobileproxy.ru - ваш надежный партнер для успешного интернет-бизнеса! Перейти:&amp;#160; &lt;a href=&quot;https://is.gd/XeVnmR&quot; rel=&quot;nofollow&quot; target=&quot;_blank&quot;&gt;https://is.gd/XeVnmR&lt;/a&gt;&lt;/p&gt;</description>
			<author>mybb@mybb.ru (smkjyhatih)</author>
			<pubDate>Mon, 03 Jul 2023 04:04:49 +0300</pubDate>
			<guid>http://programki.0pk.me/viewtopic.php?pid=57#p57</guid>
		</item>
		<item>
			<title>Топовые мобильные прокси фермы MobileProxy.ru</title>
			<link>http://programki.0pk.me/viewtopic.php?pid=56#p56</link>
			<description>&lt;p&gt;&lt;a href=&quot;https://postimages.org/&quot; rel=&quot;nofollow&quot; target=&quot;_blank&quot;&gt;&lt;img class=&quot;postimg&quot; loading=&quot;lazy&quot; src=&quot;https://i.postimg.cc/Y2VrXMMs/topgoods.jpg&quot; alt=&quot;https://i.postimg.cc/Y2VrXMMs/topgoods.jpg&quot; /&gt;&lt;/a&gt; Внимание, владельцы бизнеса! Представляем вам уникальное решение для оптимизации вашего интернет-присутствия - топовые мобильные прокси фермы от Mobileproxy.ru! &amp;#9989; Наше оборудование это передовое устройство, которое позволяет вам выходить в интернет сразу с нескольких IP-адресов из одного места. &amp;#9989; Однако важно отметить, что наша техника не обеспечивает анонимность и она не предназначена для обхода блокировок, выход в сеть осуществляется с использованием купленных вами сим-карт. &amp;#9989; Теперь самое интересное! Приобретая оборудование от Mobileproxy.ru с использованием промокода s455, вы получаете невероятную скидку в размере 5000 рублей! Это отличная возможность сэкономить и воспользоваться передовыми технологиями для вашего бизнеса. &amp;#9989; Наши мобильные прокси фермы откроют перед вами широкие возможности. Вы сможете одновременно управлять несколькими аккаунтами, заниматься продвижением сайтов, сдавать прокси ферму в аренду, собирать данные с разных источников одновременно и многое другое где нужно одновременно несколько подключений к сети и периодическая смена ip адреса. С Mobileproxy.ru ваш бизнес будет оперативным, эффективным и успешным! &amp;#9989; Не упустите возможность улучшить свое интернет-присутствие и сэкономить деньги! Посетите наш веб-сайт &amp;lt;a href=&amp;quot;https://mobileproxy.ru/&amp;quot;&amp;gt;MobileProxy.ru&amp;lt;/a&amp;gt;, выберите подходящее оборудование, введите промокод s455 при оформлении заказа и получите скидку в размере 5000 рублей! &amp;#9989; Mobileproxy.ru - ваш надежный партнер для успешного интернет-бизнеса!&lt;/p&gt;</description>
			<author>mybb@mybb.ru (smkjyhatih)</author>
			<pubDate>Fri, 30 Jun 2023 23:13:21 +0300</pubDate>
			<guid>http://programki.0pk.me/viewtopic.php?pid=56#p56</guid>
		</item>
		<item>
			<title>Ремонт компьютеров,ноутбуков по России</title>
			<link>http://programki.0pk.me/viewtopic.php?pid=55#p55</link>
			<description>&lt;p&gt;Компьютеры, ноутбуки - техника современная и не застрахована от поломок. К такому типу техники нужен своевременный и комплексный подход, который могут обеспечить наши компетентные мастера. Самостоятельно починить компьютер сможет 5 человек из 100, а поломки происходят у каждого второго! Мы предоставляем услуги высокого качества по ремонту и исправлению проблем компьютерной техники более чем в 60 городах по РФ. Так же наши филиалы представлены в Республике Беларусь. Заявки обрабатываются нашими сотрудниками и не перепродаются в сторонние компании. Перейти:&amp;#160; &lt;a href=&quot;https://rempc-v-mo.ru/?t=33705&quot; rel=&quot;nofollow&quot; target=&quot;_blank&quot;&gt;https://rempc-v-mo.ru/?t=33705&lt;/a&gt;&lt;/p&gt;</description>
			<author>mybb@mybb.ru (smkjyhatih)</author>
			<pubDate>Fri, 17 Mar 2023 11:40:52 +0300</pubDate>
			<guid>http://programki.0pk.me/viewtopic.php?pid=55#p55</guid>
		</item>
		<item>
			<title>Проблемы</title>
			<link>http://programki.0pk.me/viewtopic.php?pid=53#p53</link>
			<description>&lt;p&gt;&lt;span class=&quot;highlight-text&quot;&gt;Материал был удален администрацией сервиса.&lt;/span&gt;&lt;/p&gt;</description>
			<author>mybb@mybb.ru (Lyubovj)</author>
			<pubDate>Sat, 04 Aug 2018 14:56:55 +0300</pubDate>
			<guid>http://programki.0pk.me/viewtopic.php?pid=53#p53</guid>
		</item>
		<item>
			<title>Создание, продвижение и оптимизация сайта</title>
			<link>http://programki.0pk.me/viewtopic.php?pid=51#p51</link>
			<description>&lt;p&gt;Добрый день! Я представляю компанию IT-ОБСЛУЖИВАНИЕ, которая занимается созданием, продвижением сайтов «под ключ», а также доработкой начатых проектов. Имеем уникальные эффективные стратегии продвижения. Контекстная реклама, реклама вк, директ – со всеми инструментами работаем грамотно и умело. Обращайтесь!&lt;/p&gt;
						&lt;p&gt;Раскрутка сайта, создание сайта с нуля, продвижение интернет-магазина в Краснодаре – Быстро, Эффективно, Недорого! &lt;/p&gt;
						&lt;p&gt;Моментальное продвижение: реклама в инстаграм, вконтакте, настройка яндекс директ. Высокая Эффективность! Связь через наш сайт wwwit-servicing-it.ru или по почте Info@ityug.ru&lt;br /&gt;С уважением, директор компании Аркадий Гребенников.&lt;/p&gt;
						&lt;p&gt;Уважаемые участники форума, предлагаю вам воспользоваться высокоэффективными услугами:&lt;br /&gt;- создание сайтов;&lt;br /&gt;- продвижение сайта;&lt;br /&gt;- оптимизация сайта;&lt;br /&gt;- монетизация проекта;&lt;br /&gt;- настройка интернет-магазина;&lt;br /&gt;- раскрутка и ведение групп в соцсетях.&lt;br /&gt;Доступные цены, вежливый сервис. &lt;/p&gt;
						&lt;p&gt;Доброго времени суток, уважаемые форумчане! Если среди вас есть те, кто находится в поисках компетентного SEO-специалиста, то я приглашаю к себе на сайт wwwit-servicing-it.ru . Создание и продвижение сайтов – мой профиль.&lt;/p&gt;
						&lt;p&gt;Предлагаю&amp;#160; услуги продвижения сайтов в Краснодаре и крае. Быстро, надежно, результативно. Семантическое ядро, все виды рекламы, продвижение в соцсетях. Ждем вас на сайте.&lt;/p&gt;</description>
			<author>mybb@mybb.ru (Evgenij83)</author>
			<pubDate>Fri, 16 Jun 2017 14:42:11 +0300</pubDate>
			<guid>http://programki.0pk.me/viewtopic.php?pid=51#p51</guid>
		</item>
		<item>
			<title>Решение задач с сайта e-olimp.com</title>
			<link>http://programki.0pk.me/viewtopic.php?pid=50#p50</link>
			<description>&lt;p&gt;70 Пчелы труженицы&lt;br /&gt;&amp;#160; &amp;#160;Не секрет, что самые трудолюбивые в мире - пчелы. Только некоторые труженицы пчелки присматривают за собранным медом. В нашем улье были установлены следующие правила.&lt;/p&gt;
						&lt;p&gt;&amp;#160; &amp;#160;Каждая пчела имела свою рабочую территорию, которая зависела от ее ранга.&lt;/p&gt;
						&lt;p&gt;&amp;#160; &amp;#160;Пчела первого ранга имела территорию 1 соту(шестиугольник), 2-го – 7 сот (одна сота и вокруг нее еще 6 сот), третьего рангу – 19 сот – одна сота + 6 сот вокруг + еще 12 сот вокруг. То есть в распоряжении пчелы K-того ранга была фигура, образованная из шестиугольников, радиусом K – шестиугольников.&lt;/p&gt;
						&lt;p&gt;&amp;#160; &amp;#160;Нумерация сот начинается с левой нижней соты, и происходит в н&lt;a href=&quot;http://uploads.ru/0iuSr.jpg&quot; rel=&quot;nofollow&quot; target=&quot;_blank&quot;&gt;&lt;img class=&quot;postimg&quot; loading=&quot;lazy&quot; src=&quot;http://s2.uploads.ru/t/0iuSr.jpg&quot; alt=&quot;http://s2.uploads.ru/t/0iuSr.jpg&quot; /&gt;&lt;/a&gt;&lt;br /&gt;&lt;a href=&quot;http://uploads.ru/0iuSr.jpg&quot; rel=&quot;nofollow&quot; target=&quot;_blank&quot;&gt;&lt;img class=&quot;postimg&quot; loading=&quot;lazy&quot; src=&quot;http://s2.uploads.ru/t/0iuSr.jpg&quot; alt=&quot;http://s2.uploads.ru/t/0iuSr.jpg&quot; /&gt;&lt;/a&gt;&lt;br /&gt;аправлении левой-нижней стороны по рядах (см. рисунок).&lt;/p&gt;
						&lt;p&gt;&amp;#160; &amp;#160;Для присмотра за каждой сотой пчелка двигается из соты под номером 1 к соте под номером N, но каждый раз другим путем, чтобы параллельно контролировать и остальные соты. Чтобы попасть из первой соты в N-тую пчелка решила двигаться одним из трех направлений: вверх, вверх-вправо и вниз-вправо. Сколькими способами пчелка с рангом K может попасть из соты с номером 1 в соту под номером N?&lt;/p&gt;
						&lt;p&gt;var a, c:array[0..27,0..27] of int64;&lt;br /&gt;&amp;#160; &amp;#160; b:array[0..27,0..27] of boolean;&lt;br /&gt;&amp;#160; &amp;#160; count, r, n, i, j, max:longint;&lt;br /&gt;&amp;#160; &amp;#160; rez:int64;&lt;br /&gt;procedure out;&lt;br /&gt;begin&lt;br /&gt;&amp;#160; &amp;#160; &amp;#160;writeln (rez);&lt;br /&gt;end;&lt;br /&gt;begin&lt;br /&gt;&amp;#160; &amp;#160; &amp;#160;readln (r, n);&lt;br /&gt;&amp;#160; &amp;#160; &amp;#160;fillchar (a, sizeof(a), 0);&lt;br /&gt;&amp;#160; &amp;#160; &amp;#160;fillchar (c, sizeof(c), 0);&lt;br /&gt;&amp;#160; &amp;#160; &amp;#160;fillchar (b, sizeof(b), false);&lt;br /&gt;&amp;#160; &amp;#160; &amp;#160;max:=1;&lt;br /&gt;&amp;#160; &amp;#160; &amp;#160;for i:=2 to r do&lt;br /&gt;&amp;#160; &amp;#160; &amp;#160; &amp;#160; max:=max+6*(i-1);&lt;br /&gt;&amp;#160; &amp;#160; &amp;#160;if n&amp;gt;max then begin rez:=0; out; halt; end;&lt;br /&gt;&amp;#160; &amp;#160; &amp;#160;count:=1;&lt;br /&gt;&amp;#160; &amp;#160; &amp;#160;for i:=1 to r do&lt;br /&gt;&amp;#160; &amp;#160; &amp;#160; &amp;#160; &amp;#160;for j:=1 to r+i-1 do&lt;br /&gt;&amp;#160; &amp;#160; &amp;#160; &amp;#160; &amp;#160;begin&lt;br /&gt;&amp;#160; &amp;#160; &amp;#160; &amp;#160; &amp;#160; &amp;#160; &amp;#160; a[i,j]:=count;&lt;br /&gt;&amp;#160; &amp;#160; &amp;#160; &amp;#160; &amp;#160; &amp;#160; &amp;#160; b[i,j]:=true;&lt;br /&gt;&amp;#160; &amp;#160; &amp;#160; &amp;#160; &amp;#160; &amp;#160; &amp;#160; inc (count);&lt;br /&gt;&amp;#160; &amp;#160; &amp;#160; &amp;#160; &amp;#160;end;&lt;br /&gt;&amp;#160; &amp;#160; &amp;#160;for i:=r+1 to r+r-1 do&lt;br /&gt;&amp;#160; &amp;#160; &amp;#160; &amp;#160; &amp;#160;for j:=i-r+1 to r+r-1 do&lt;br /&gt;&amp;#160; &amp;#160; &amp;#160; &amp;#160; &amp;#160;begin&lt;br /&gt;&amp;#160; &amp;#160; &amp;#160; &amp;#160; &amp;#160; &amp;#160; &amp;#160; a[i,j]:=count;&lt;br /&gt;&amp;#160; &amp;#160; &amp;#160; &amp;#160; &amp;#160; &amp;#160; &amp;#160; b[i,j]:=true;&lt;br /&gt;&amp;#160; &amp;#160; &amp;#160; &amp;#160; &amp;#160; &amp;#160; &amp;#160; inc (count);&lt;br /&gt;&amp;#160; &amp;#160; &amp;#160; &amp;#160; &amp;#160;end;&lt;br /&gt;&amp;#160; &amp;#160; &amp;#160;for i:=1 to r do&lt;br /&gt;&amp;#160; &amp;#160; &amp;#160;begin&lt;br /&gt;&amp;#160; &amp;#160; &amp;#160; &amp;#160; &amp;#160; c[1,i]:=1;&lt;br /&gt;&amp;#160; &amp;#160; &amp;#160; &amp;#160; &amp;#160; c[i,1]:=1;&lt;br /&gt;&amp;#160; &amp;#160; &amp;#160;end;&lt;br /&gt;&amp;#160; &amp;#160; &amp;#160;for i:=2 to 2*r-1 do&lt;br /&gt;&amp;#160; &amp;#160; &amp;#160; &amp;#160; &amp;#160;for j:=2 to 2*r-1 do&lt;br /&gt;&amp;#160; &amp;#160; &amp;#160; &amp;#160; &amp;#160; &amp;#160; &amp;#160;if b[i,j] then&lt;br /&gt;&amp;#160; &amp;#160; &amp;#160; &amp;#160; &amp;#160; &amp;#160; &amp;#160; &amp;#160; &amp;#160; &amp;#160; &amp;#160; &amp;#160; &amp;#160; &amp;#160;c[i,j]:=c[i-1,j]+c[i,j-1]+c[i-1,j-1];&lt;br /&gt;&amp;#160; &amp;#160; &amp;#160;for i:=1 to 2*r-1 do&lt;br /&gt;&amp;#160; &amp;#160; &amp;#160; &amp;#160; for j:=1 to 2*r-1 do&lt;br /&gt;&amp;#160; &amp;#160; &amp;#160; &amp;#160; &amp;#160; &amp;#160; if a[i,j]=n then rez:=c[i,j];&lt;br /&gt;&amp;#160; &amp;#160; &amp;#160;out;&lt;br /&gt;end.&lt;/p&gt;</description>
			<author>mybb@mybb.ru (Алекс Гонг)</author>
			<pubDate>Thu, 24 Mar 2016 01:17:34 +0300</pubDate>
			<guid>http://programki.0pk.me/viewtopic.php?pid=50#p50</guid>
		</item>
		<item>
			<title>HTML</title>
			<link>http://programki.0pk.me/viewtopic.php?pid=47#p47</link>
			<description>&lt;p&gt;Создаем сайты&lt;/p&gt;</description>
			<author>mybb@mybb.ru (Alfred)</author>
			<pubDate>Thu, 24 Mar 2016 01:04:41 +0300</pubDate>
			<guid>http://programki.0pk.me/viewtopic.php?pid=47#p47</guid>
		</item>
		<item>
			<title>Программы</title>
			<link>http://programki.0pk.me/viewtopic.php?pid=46#p46</link>
			<description>&lt;p&gt;Игра Kill Them&lt;/p&gt;
						&lt;p&gt;uses ABCObjects,GraphABC,Timers;&lt;/p&gt;
						&lt;p&gt;const &lt;br /&gt;&amp;#160; clPlayer = Color.BurlyWood;&lt;/p&gt;
						&lt;p&gt;var&lt;br /&gt;&amp;#160; kLeftKey,kRightKey: boolean;&lt;br /&gt;&amp;#160; kSpaceKey: integer;&lt;br /&gt;&amp;#160; /// Игрок&lt;br /&gt;&amp;#160; Player: RectangleABC;&lt;br /&gt;&amp;#160; /// Таймер движения врагов&lt;br /&gt;&amp;#160; t: Timer;&lt;br /&gt;&amp;#160; /// Флаг конца игры&lt;br /&gt;&amp;#160; EndOfGame: boolean;&lt;br /&gt;&amp;#160; /// Количество неигровых объектов&lt;br /&gt;&amp;#160; StaticObjectsCount: integer;&lt;br /&gt;&amp;#160; /// Счетчик выигрышей&lt;br /&gt;&amp;#160; Wins: integer;&lt;br /&gt;&amp;#160; /// Счетчик проигрышей&lt;br /&gt;&amp;#160; Falls: integer;&lt;br /&gt;&amp;#160; /// Информационная строка&lt;br /&gt;&amp;#160; InfoString: RectangleABC;&lt;br /&gt;&amp;#160; /// Сообщение в начале игры&lt;br /&gt;&amp;#160; NewGame: RoundRectABC;&lt;/p&gt;
						&lt;p&gt;type&lt;br /&gt;&amp;#160; KeysType = (kLeft,kRight);&lt;br /&gt;&amp;#160; &lt;br /&gt;&amp;#160; /// Класс пули&lt;br /&gt;&amp;#160; Pulya = class(CircleABC)&lt;br /&gt;&amp;#160; public&lt;br /&gt;&amp;#160; &amp;#160; constructor Create(x,y: integer);&lt;br /&gt;&amp;#160; &amp;#160; procedure Move; override;&lt;br /&gt;&amp;#160; end;&lt;br /&gt;&amp;#160; &lt;br /&gt;&amp;#160; /// Класс врага&lt;br /&gt;&amp;#160; Enemy = class(RectangleABC)&lt;br /&gt;&amp;#160; public&lt;br /&gt;&amp;#160; &amp;#160; constructor Create(x,y,w: integer);&lt;br /&gt;&amp;#160; &amp;#160; procedure Move; override;&lt;br /&gt;&amp;#160; end;&lt;/p&gt;
						&lt;p&gt;constructor Pulya.Create(x,y: integer);&lt;br /&gt;begin&lt;br /&gt;&amp;#160; inherited Create(x,y,5,clRed);&lt;br /&gt;&amp;#160; dx := 0; &lt;br /&gt;&amp;#160; dy := -5;&lt;br /&gt;end;&lt;/p&gt;
						&lt;p&gt;procedure Pulya.Move; &lt;br /&gt;begin&lt;br /&gt;&amp;#160; inherited Move; &lt;br /&gt;&amp;#160; if Top&amp;lt;0 then&lt;br /&gt;&amp;#160; &amp;#160; Visible := False;&lt;br /&gt;&amp;#160; for var j:=StaticObjectsCount to Objects.Count-1 do&lt;br /&gt;&amp;#160; &amp;#160; // При столкновении пуля и объект становятся невидимыми&lt;br /&gt;&amp;#160; &amp;#160; if (Objects[j]&amp;lt;&amp;gt;Self) and Intersect(Objects[j]) then&lt;br /&gt;&amp;#160; &amp;#160; begin&lt;br /&gt;&amp;#160; &amp;#160; &amp;#160; Objects[j].Visible := False;&lt;br /&gt;&amp;#160; &amp;#160; &amp;#160; Visible := False;&lt;br /&gt;&amp;#160; &amp;#160; end;&lt;br /&gt;end;&lt;/p&gt;
						&lt;p&gt;constructor Enemy.Create(x,y,w: integer);&lt;br /&gt;begin&lt;br /&gt;&amp;#160; inherited Create(x,y,w,20,clRandom);&lt;br /&gt;&amp;#160; if Random(2)=0 then&lt;br /&gt;&amp;#160; &amp;#160; dx := 5&lt;br /&gt;&amp;#160; else dx := -5;&lt;br /&gt;&amp;#160; dy := 0;&lt;br /&gt;end;&lt;/p&gt;
						&lt;p&gt;procedure Enemy.Move; &lt;br /&gt;begin&lt;br /&gt;&amp;#160; if Random(2)&amp;lt;&amp;gt;0 then &lt;br /&gt;&amp;#160; &amp;#160; Exit;&lt;br /&gt;&amp;#160; if Random(10)=0 then &lt;br /&gt;&amp;#160; &amp;#160; dy := 5;&lt;br /&gt;&amp;#160; if (Left&amp;lt;0) or (Left+Width&amp;gt;Window.Width) or (Random(30)=0) then&lt;br /&gt;&amp;#160; &amp;#160; dx := -dx;&lt;br /&gt;&amp;#160; inherited Move;&lt;br /&gt;&amp;#160; if dy&amp;lt;&amp;gt;0 then &lt;br /&gt;&amp;#160; &amp;#160; dy := 0;&lt;br /&gt;&amp;#160; if Top&amp;gt;Window.Height-50 then&lt;br /&gt;&amp;#160; &amp;#160; EndOfGame := True;&lt;br /&gt;end;&lt;/p&gt;
						&lt;p&gt;/// Количество врагов&lt;br /&gt;function NumberOfEnemies: integer;&lt;br /&gt;begin&lt;br /&gt;&amp;#160; Result := 0;&lt;br /&gt;&amp;#160; for var i:=0 to Objects.Count-1 do&lt;br /&gt;&amp;#160; &amp;#160; if Objects[i] is Enemy then&lt;br /&gt;&amp;#160; &amp;#160; &amp;#160; Result += 1;&lt;br /&gt;end;&lt;/p&gt;
						&lt;p&gt;/// Создание игрока и врагов&lt;br /&gt;procedure CreateObjects;&lt;br /&gt;begin&lt;br /&gt;&amp;#160; Player := new RectangleABC(280,WindowHeight-30,100,20,clPlayer);&lt;br /&gt;&amp;#160; for var i:=1 to 100 do&lt;br /&gt;&amp;#160; begin&lt;br /&gt;&amp;#160; &amp;#160; var r1 := new Enemy(Random(WindowWidth-50),40+Random(10),50);&lt;br /&gt;&amp;#160; &amp;#160; r1.TextVisible := True;&lt;br /&gt;&amp;#160; &amp;#160; r1.Number := i;&lt;br /&gt;&amp;#160; end;&lt;br /&gt;end;&lt;/p&gt;
						&lt;p&gt;/// Разрушение игрока и врагов&lt;br /&gt;procedure DestroyObjects;&lt;br /&gt;begin&lt;br /&gt;&amp;#160; for var i:=Objects.Count-1 downto StaticObjectsCount do&lt;br /&gt;&amp;#160; &amp;#160; Objects[i].Destroy;&lt;br /&gt;end;&lt;/p&gt;
						&lt;p&gt;/// Перемещение врагов&lt;br /&gt;procedure MoveObjects;&lt;br /&gt;begin&lt;br /&gt;&amp;#160; for var i:=StaticObjectsCount+1 to Objects.Count-1 do&lt;br /&gt;&amp;#160; &amp;#160; Objects[i].Move;&lt;br /&gt;end;&lt;/p&gt;
						&lt;p&gt;/// Удаление уничтоженных объектов&lt;br /&gt;procedure DestroyKilledObjects;&lt;br /&gt;begin&lt;br /&gt;&amp;#160; for var i:=ObjectsCount-1 downto StaticObjectsCount+1 do&lt;br /&gt;&amp;#160; &amp;#160; if not Objects[i].Visible then&lt;br /&gt;&amp;#160; &amp;#160; &amp;#160; Objects[i].Destroy;&lt;br /&gt;end;&lt;/p&gt;
						&lt;p&gt;/// Обработчик нажатия клавиши&lt;br /&gt;procedure KeyDown(Key: integer);&lt;br /&gt;begin&lt;br /&gt;&amp;#160; case Key of&lt;br /&gt;vk_Left:&amp;#160; kLeftKey := True;&lt;br /&gt;vk_Right: kRightKey := True;&lt;br /&gt;vk_Space: if kSpaceKey=2 then kSpaceKey := 1;&lt;br /&gt;&amp;#160; end;&lt;br /&gt;end;&lt;/p&gt;
						&lt;p&gt;/// Обработчик отжатия клавиши&lt;br /&gt;procedure KeyUp(Key: integer);&lt;br /&gt;begin&lt;br /&gt;&amp;#160; case Key of&lt;br /&gt;vk_Left:&amp;#160; kLeftKey := False;&lt;br /&gt;vk_Right: kRightKey := False;&lt;br /&gt;vk_Space: kSpaceKey := 2;&lt;br /&gt;&amp;#160; end;&lt;br /&gt;end;&lt;/p&gt;
						&lt;p&gt;/// Изменение информационной строки&lt;br /&gt;procedure ChangeInfoString;&lt;br /&gt;begin&lt;br /&gt;&amp;#160; InfoString.Text := &#039;Врагов: &#039;+IntToStr(NumberOfEnemies)+&#039;&amp;#160; &amp;#160; &amp;#160; Побед: &#039;+IntToStr(Wins)+&#039;&amp;#160; &amp;#160; &amp;#160; Поражений: &#039;+IntToStr(Falls);&lt;br /&gt;end;&lt;/p&gt;
						&lt;p&gt;/// Обработчик нажатия символьной клавиши&lt;br /&gt;procedure KeyPress(Key: char);&lt;br /&gt;begin&lt;br /&gt;&amp;#160; if (Key in [&#039;G&#039;,&#039;П&#039;,&#039;g&#039;,&#039;п&#039;]) and EndOfGame then&lt;br /&gt;&amp;#160; begin&lt;br /&gt;&amp;#160; &amp;#160; NewGame.Visible := False;&lt;br /&gt;&amp;#160; &amp;#160; EndOfGame := False;&lt;br /&gt;&amp;#160; &amp;#160; t.Start;&lt;br /&gt;&amp;#160; &amp;#160; CreateObjects;&lt;br /&gt;&amp;#160; &amp;#160; kSpaceKey := 2;&lt;br /&gt;&amp;#160; &amp;#160; kLeftKey := False;&lt;br /&gt;&amp;#160; &amp;#160; kRightKey := False;&lt;br /&gt;&amp;#160; end;&lt;br /&gt;end;&lt;/p&gt;
						&lt;p&gt;/// Обработчик отжатия мыши&lt;br /&gt;procedure MouseUp(x,y,mb: integer);&lt;br /&gt;begin&lt;br /&gt;&amp;#160; if NewGame.PTInside(x,y) then&lt;br /&gt;&amp;#160; &amp;#160; KeyPress(&#039;G&#039;);&lt;br /&gt;end;&lt;/p&gt;
						&lt;p&gt;/// Обработчик таймера&lt;br /&gt;procedure TimerProc;&lt;br /&gt;begin&lt;br /&gt;&amp;#160; if kLeftKey and (Player.Left&amp;gt;0) then&lt;br /&gt;&amp;#160; &amp;#160; Player.MoveOn(-10,0);&lt;br /&gt;&amp;#160; if kRightKey and (Player.Left+Player.Width&amp;lt;WindowWidth) then&lt;br /&gt;&amp;#160; &amp;#160; Player.MoveOn(10,0);&lt;br /&gt;&amp;#160; if kSpaceKey=1 then&lt;br /&gt;&amp;#160; begin&lt;br /&gt;&amp;#160; &amp;#160; new Pulya(Player.Left+Player.Width div 2,Player.Top-10);&lt;br /&gt;&amp;#160; &amp;#160; kSpaceKey := 0;&lt;br /&gt;&amp;#160; end;&lt;br /&gt;&amp;#160; MoveObjects;&lt;br /&gt;&amp;#160; DestroyKilledObjects;&lt;br /&gt;&amp;#160; RedrawObjects;&lt;br /&gt;&amp;#160; ChangeInfoString;&lt;br /&gt;&amp;#160; var n := NumberOfEnemies;&lt;br /&gt;&amp;#160; // Страховка от случая, когда процедура таймера выполняется одновременно в нескольких потоках&lt;br /&gt;&amp;#160; if n=0 then&lt;br /&gt;&amp;#160; &amp;#160; EndOfGame := True;&lt;br /&gt;&amp;#160; if EndOfGame then&lt;br /&gt;&amp;#160; begin&lt;br /&gt;&amp;#160; &amp;#160; if t.Enabled=False then Exit;&amp;#160; &lt;br /&gt;&amp;#160; &amp;#160; t.Stop;&lt;br /&gt;&amp;#160; &amp;#160; if n&amp;gt;0 then&lt;br /&gt;&amp;#160; &amp;#160; &amp;#160; Falls += 1&lt;br /&gt;&amp;#160; &amp;#160; else Wins += 1;&lt;br /&gt;&amp;#160; &amp;#160; NewGame.Visible := True;&lt;br /&gt;&amp;#160; &amp;#160; DestroyObjects;&lt;br /&gt;&amp;#160; &amp;#160; ChangeInfoString;&lt;br /&gt;&amp;#160; &amp;#160; RedrawObjects;&lt;br /&gt;&amp;#160; end;&lt;br /&gt;end;&lt;/p&gt;
						&lt;p&gt;begin&lt;br /&gt;&amp;#160; Window.Title := &#039;Стрелялка&#039;;&lt;br /&gt;&amp;#160; Window.IsFixedSize := True;&lt;br /&gt;&amp;#160; ClearWindow(clBlack);&lt;br /&gt;&amp;#160; LockDrawingObjects;&lt;br /&gt;&amp;#160; EndOfGame := True;&lt;br /&gt;&amp;#160; InfoString := new RectangleABC(0,0,Window.Width,38,Color.DarkBlue);&lt;br /&gt;&amp;#160; InfoString.Bordered := False;&lt;br /&gt;&amp;#160; InfoString.FontColor := clWhite;&lt;br /&gt;&amp;#160; InfoString.TextScale := 0.9;&lt;br /&gt;&amp;#160; &lt;br /&gt;&amp;#160; var zz := 100;&lt;br /&gt;&amp;#160; NewGame := new RoundRectABC(zz,200,400,200,30,Color.Violet);&lt;br /&gt;&amp;#160; NewGame.Center := Window.Center;&lt;br /&gt;&amp;#160; NewGame.Text := &#039;G - Новая игра&#039;;&lt;br /&gt;&amp;#160; StaticObjectsCount := Objects.Count;&lt;br /&gt;&amp;#160; ChangeInfoString;&lt;br /&gt;&amp;#160; RedrawObjects;&lt;/p&gt;
						&lt;p&gt;&amp;#160; OnKeyDown := KeyDown;&lt;br /&gt;&amp;#160; OnKeyPress := KeyPress;&lt;br /&gt;&amp;#160; OnKeyUp := KeyUp;&lt;br /&gt;&amp;#160; OnMouseUp := MouseUp;&lt;/p&gt;
						&lt;p&gt;&amp;#160; t := new Timer(1,TimerProc);&lt;br /&gt;end.&lt;/p&gt;</description>
			<author>mybb@mybb.ru (Анна Жук)</author>
			<pubDate>Thu, 24 Mar 2016 01:00:23 +0300</pubDate>
			<guid>http://programki.0pk.me/viewtopic.php?pid=46#p46</guid>
		</item>
		<item>
			<title>Руководство C++</title>
			<link>http://programki.0pk.me/viewtopic.php?pid=33#p33</link>
			<description>&lt;p&gt;Цикл for&lt;/p&gt;
						&lt;p&gt;Если мы знаем точное количество действий (итераций) цикла, то можем использовать цикл for. Синтаксис его выглядит примерно так:&lt;/p&gt;
						&lt;p&gt;for (действие до начала цикла;&lt;br /&gt;&amp;#160; &amp;#160; &amp;#160;условие продолжения цикла;&lt;br /&gt;&amp;#160; &amp;#160; &amp;#160;действия в конце каждой итерации цикла) {&lt;br /&gt;&amp;#160; &amp;#160; &amp;#160; &amp;#160; &amp;#160;инструкция цикла;&lt;br /&gt;&amp;#160; &amp;#160; &amp;#160; &amp;#160; &amp;#160;инструкция цикла 2;&lt;br /&gt;&amp;#160; &amp;#160; &amp;#160; &amp;#160; &amp;#160;инструкция цикла N;&lt;br /&gt;}&lt;br /&gt;Итерацией цикла называется один проход этого цикла&lt;/p&gt;
						&lt;p&gt;Существует частный случай этой записи, который мы сегодня и разберем:&lt;/p&gt;
						&lt;p&gt;for (счетчик = значение; счетчик &amp;lt; значение; шаг цикла) {&lt;br /&gt;&amp;#160; &amp;#160; тело цикла;&lt;br /&gt;}&lt;br /&gt;Счетчик цикла — это переменная, в которой хранится количество проходов данного цикла.&lt;/p&gt;
						&lt;p&gt;Описание синтаксиса&lt;/p&gt;
						&lt;p&gt;Сначала присваивается первоначальное значение счетчику, после чего ставится точка с запятой.&lt;/p&gt;
						&lt;p&gt;Затем задается конечное конечное значение счетчика цикла. После того, как значение счетчика достигнет указанного предела, цикл завершится. Снова ставим точку с запятой.&lt;/p&gt;
						&lt;p&gt;Задаем шаг цикла. Шаг цикла — это значение, на которое будет увеличиваться или уменьшаться счетчик цикла при каждом проходе.&lt;/p&gt;
						&lt;p&gt;Пример кода&lt;/p&gt;
						&lt;p&gt;Напишем программу, которая будет считать сумму всех чисел от 1 до 1000.&lt;/p&gt;
						&lt;p&gt;#include &amp;lt;iostream&amp;gt;&lt;br /&gt;using namespace std;&lt;/p&gt;
						&lt;p&gt;int main()&lt;br /&gt;{&lt;br /&gt;&amp;#160; &amp;#160; int i; // счетчик цикла&lt;br /&gt;&amp;#160; &amp;#160; int sum = 0; // сумма чисел от 1 до 1000.&lt;br /&gt;&amp;#160; &amp;#160; setlocale(0, &amp;quot;&amp;quot;);&lt;br /&gt;&amp;#160; &amp;#160; for (i = 1; i &amp;lt;= 1000; i++) // задаем начальное значение 1, конечное 1000 и задаем шаг цикла - 1.&lt;br /&gt;&amp;#160; &amp;#160; {&lt;br /&gt;&amp;#160; &amp;#160; &amp;#160; &amp;#160; sum = sum + i;&lt;br /&gt;&amp;#160; &amp;#160; }&lt;br /&gt;&amp;#160; &amp;#160; cout &amp;lt;&amp;lt; &amp;quot;Сумма чисел от 1 до 1000 = &amp;quot; &amp;lt;&amp;lt; sum &amp;lt;&amp;lt; endl;&amp;#160; &amp;#160; &amp;#160; &amp;#160; &amp;#160;&lt;br /&gt;&amp;#160; &amp;#160; return 0;&lt;br /&gt;}&lt;br /&gt;Если мы скомпилируем этот код и запустим программу, то она покажет нам ответ: 500500. Это и есть сумма всех целых чисел от 1 до 1000. Если считать это вручную, понадобится очень много времени и сил. Цикл выполнил всю рутинную работу за нас.&lt;/p&gt;
						&lt;p&gt;Заметьте, что конечное значение счетчика я задал нестрогим неравенством ( &amp;lt;= — меньше либо равно), поскольку, если бы я поставил знак меньше, то цикл произвел бы 999 итераций, т.е. на одну меньше, чем требуется. Это довольно важный момент, т.к. здесь новички часто допускают ошибки, особенно при работе с массивами (о них будет рассказано в следующем уроке). Значение шага цикла я задал равное единице. i++ — это тоже самое, что и i = i + 1.&lt;/p&gt;
						&lt;p&gt;В теле цикла, при каждом проходе программа увеличивает значение переменной sum на i. Еще один очень важный момент — в начале программы я присвоил переменной sum значение нуля. Если бы я этого не сделал, программа вылетела вы в сегфолт. При объявлении переменной без ее инициализации что эта переменная будет хранить «мусор».&lt;/p&gt;
						&lt;p&gt;Естественно к мусору мы ничего прибавить не можем. Некоторые компиляторы, такие как gcc, инициализирует переменную нулем при ее объявлении.&lt;/p&gt;
						&lt;p&gt;Цикл while&lt;/p&gt;
						&lt;p&gt;Когда мы не знаем, сколько итераций должен произвести цикл, нам понадобится цикл while или do...while. Синтаксис цикла while в C++ выглядит следующим образом.&lt;/p&gt;
						&lt;p&gt;while (Условие) {&lt;br /&gt;&amp;#160; &amp;#160; Тело цикла;&lt;br /&gt;}&lt;br /&gt;Данный цикл будет выполняться, пока условие, указанное в круглых скобках является истиной. Решим ту же задачу с помощью цикла while. Хотя здесь мы точно знаем, сколько итераций должен выполнить цикл, очень часто бывают ситуации, когда это значение неизвестно.&lt;/p&gt;
						&lt;p&gt;Ниже приведен исходный код программы, считающей сумму всех целых чисел от 1 до 1000.&lt;/p&gt;
						&lt;p&gt;#include &amp;lt;iostream&amp;gt;&lt;br /&gt;using namespace std;&lt;/p&gt;
						&lt;p&gt;int main()&lt;br /&gt;{&lt;br /&gt;&amp;#160; &amp;#160; setlocale(0, &amp;quot;&amp;quot;);&lt;br /&gt;&amp;#160; &amp;#160; int i = 0; // инициализируем счетчик цикла.&lt;br /&gt;&amp;#160; &amp;#160; int sum = 0; // инициализируем счетчик суммы.&lt;br /&gt;&amp;#160; &amp;#160; while (i &amp;lt; 1000)&lt;br /&gt;&amp;#160; &amp;#160; {&lt;br /&gt;&amp;#160; &amp;#160; &amp;#160; &amp;#160; i++;&lt;br /&gt;&amp;#160; &amp;#160; &amp;#160; &amp;#160; sum += i;&lt;br /&gt;&amp;#160; &amp;#160; }&lt;br /&gt;&amp;#160; &amp;#160; cout &amp;lt;&amp;lt; &amp;quot;Сумма чисел от 1 до 1000 = &amp;quot; &amp;lt;&amp;lt; sum &amp;lt;&amp;lt; endl; &lt;br /&gt;&amp;#160; &amp;#160; return 0;&lt;br /&gt;}&lt;br /&gt;После компиляции программа выдаст результат, аналогичный результату работы предыдущей программы. Но поясним несколько важных моментов. Я задал строгое неравенство в условии цикла и инициализировал счетчик i нулем, так как в цикле while происходит на одну итерацию больше, потому он будет выполняться, до тех пор, пока значение счетчика перестает удовлетворять условию, но данная итерация все равно выполнится. Если бы мы поставили нестрогое неравенство, то цикл бы закончился, когда переменная i стала бы равна 1001 и выполнилось бы на одну итерацию больше.&lt;/p&gt;
						&lt;p&gt;Теперь давайте рассмотрим по порядку исходный код нашей программы. Сначала мы инициализируем счетчик цикла и переменную, хранящую сумму чисел.&lt;/p&gt;
						&lt;p&gt;В данном случае мы обязательно должны присвоить счетчику цикла какое-либо значение, т.к. в предыдущей программе мы это значение присваивали внутри цикла for, здесь же, если мы не инициализируем счетчик цикла, то в него попадет «мусор» и компилятор в лучшем случае выдаст нам ошибку, а в худшем, если программа соберется — сегфолт практически неизбежен.&lt;/p&gt;
						&lt;p&gt;Затем мы описываем условие цикла — «пока переменная i меньше 1000 — выполняй цикл». При каждой итерации цикла значение переменной-счетчика i увеличивается на единицу внутри цикла.&lt;/p&gt;
						&lt;p&gt;Когда выполнится 1000 итераций цикла, счетчик станет равным 999 и следующая итерация уже не выполнится, поскольку 1000 не меньше 1000. Выражение sum += i является укороченной записью sum = sum + i.&lt;/p&gt;
						&lt;p&gt;После окончания выполнения цикла, выводим сообщение с ответом.&lt;/p&gt;
						&lt;p&gt;Цикл do while&lt;/p&gt;
						&lt;p&gt;Цикл do while очень похож на цикл while. Единственное их различие в том, что при выполнении цикла do while один проход цикла будет выполнен независимо от условия. Решение задачи на поиск суммы чисел от 1 до 1000, с применением цикла do while.&lt;/p&gt;
						&lt;p&gt;#include &amp;lt;iostream&amp;gt;&lt;br /&gt;using namespace std;&lt;/p&gt;
						&lt;p&gt;int main ()&lt;br /&gt;{&lt;br /&gt;&amp;#160; &amp;#160; setlocale(0, &amp;quot;&amp;quot;);&lt;br /&gt;&amp;#160; &amp;#160; int i = 0; // инициализируем счетчик цикла.&lt;br /&gt;&amp;#160; &amp;#160; int sum = 0; // инициализируем счетчик суммы.&lt;br /&gt;&amp;#160; &amp;#160; do {// выполняем цикл.&lt;br /&gt;&amp;#160; &amp;#160; &amp;#160; &amp;#160; i++;&lt;br /&gt;&amp;#160; &amp;#160; &amp;#160; &amp;#160; sum += i;&lt;br /&gt;&amp;#160; &amp;#160; } while (i &amp;lt; 1000); // пока выполняется условие.&lt;br /&gt;&amp;#160; &amp;#160; cout &amp;lt;&amp;lt; &amp;quot;Сумма чисел от 1 до 1000 = &amp;quot; &amp;lt;&amp;lt; sum &amp;lt;&amp;lt; endl;&lt;br /&gt;&amp;#160; &amp;#160; return 0;&lt;br /&gt;}&lt;br /&gt;Принципиального отличия нет, но если присвоить переменной i значение, большее, чем 1000, то цикл все равно выполнит хотя бы один проход.&lt;/p&gt;
						&lt;p&gt;Попрактикуйтесь, поэкспериментируйте над собственными примерами задач. Циклы — очень важная вещь, поэтому им стоит уделить побольше внимания. Когда поймете, как работают циклы — можете смело переходить к изучению следующего урока.&lt;/p&gt;</description>
			<author>mybb@mybb.ru (Ваня Козаченко)</author>
			<pubDate>Wed, 23 Mar 2016 20:36:05 +0300</pubDate>
			<guid>http://programki.0pk.me/viewtopic.php?pid=33#p33</guid>
		</item>
		<item>
			<title>Тестовое сообщение</title>
			<link>http://programki.0pk.me/viewtopic.php?pid=1#p1</link>
			<description>&lt;p&gt;Благодарим за выбор нашего сервиса!&lt;/p&gt;</description>
			<author>mybb@mybb.ru (Dante)</author>
			<pubDate>Tue, 22 Mar 2016 22:00:40 +0300</pubDate>
			<guid>http://programki.0pk.me/viewtopic.php?pid=1#p1</guid>
		</item>
	</channel>
</rss>
