<?xml version="1.0" encoding="windows-1251" ?>
<rss version="2.0">
<channel>
	<title>Форум «Всё о Паскале»</title>
	<description>Всё о Паскале - исходники, методы, алгоритмы...</description>
	<link>http://forum.pascalnet.ru/index.php</link>
	<pubDate>Wed, 06 May 2026 20:32:43 +0300</pubDate>
	<ttl>5</ttl>
	<item>
		<title>проблемы с модулем числа</title>
		<link>http://forum.pascalnet.ru/index.php?showtopic=31679</link>
		<description><![CDATA[Здравствуйте, знатоки.<br />Вопрос по FreePascal.<br />Столкнулся с непонятной для меня проблемой: необходимо сравнить модули чисел:<br /><style>
  <!--
  PRE{font:12px "Courier New";display:block;border:2px dotted #333399;background-color:#FFFFFF;padding:5px}
  PRE.inl{padding:1px;display:inline;border-width:1px;margin:0.3em;border:none}
  .identif{color:black}
  -->
  CODE {color:navy; font: 12px "Verdana"}
</style><link rel="STYLESHEET" type="text/css" href="http://forum.pascalnet.ru/common_files/css_13.css">
<script type="text/javascript" src="http://forum.pascalnet.ru/common_files/h_pas.js"></script>
<script type="text/javascript" src="http://forum.pascalnet.ru/common_files/h_core_19.js"></script>
<pre  id="pas_1" title="pas" border="1" bordercolor="#000000"><br />u:=u+(a*sin(al)+(ua-u)*v/r)*dt;<br />if abs (u)&lt;1 then<br />	u:=0;<br />v:=v+(a*cos(al)-sqr(ua/r)*ra+sqr(ua-u)/r)*dt;<br />if abc (v)&lt;1 then<br />	v:=0;<br /><br /></pre>
 <script>if (navigator.appName == "Netscape") parseOne('pas_1','pas')</script><br />с первым (<b>abs (u)</b>) все нормально, но вот со вторым (<b>abc (v)</b>) проблема. Компилятор ругается:<br /><!--quoteo--><div class='quotetop'>Цитата</div><div class='quotemain'><!--quotec-->... (72,9) Error: Identifier not found "abc"<!--QuoteEnd--></div><!--QuoteEEnd--><br /><br />Чего же он хочет-то? Может кто подскажет, что тут не так?]]></description>
		<pubDate>Mon, 28 Sep 2015 17:47:11 +0300</pubDate>
		<guid isPermaLink="false">31679</guid>
	</item>
	<item>
		<title>Лунолет-3</title>
		<link>http://forum.pascalnet.ru/index.php?showtopic=31661</link>
		<description><![CDATA[Бодрого всем дня.<br /><br />Преамбула.<br />Для начала хочу прояснить во избежание инфарктов и суицидов от увиденного.<br />Мне уже 30 лет и плюс еще несколько месяцев (больше 300 - это если кому интересно).<br />Я никогда не занимался программированием. ПМК не считается. Паскаль по книжкам/интернетам начал изучать не более 3 месяцев назад в не частые промежутки свободного времени.<br />Почему именно его? Просто он мне показался наиболее логичным. Возможно сильно заблуждаюсь.<br /><br />А теперь - амбула.<br />Те, кому в 80-х было больше 10 лет, возможно, помнят эпопею в "Технике Молодежи" с Лунолетом "Кон-Тики".<br />И вот я решил "воссоздать" это, но уже на ПК.<br />Ваялось это с помощью FPC в Линукс.<br />Найдутся ли желающие пощупать/просмотреть программулину. Принимаются ВСЕ советы и ЛЮБАЯ критика. Вплоть до телефона знакомого психиатра.<br />Особенно указания на ошибки, нелепости и глупости. Желательно с объяснением и, если не лень, примерами исправлений.<br /><br />PS. Вместе с "Лунолетом-3" у меня зреет не менее коварный план по написанию продолжения - ОС-1 и ОС-3 с попыткой их объединить вместе.]]></description>
		<pubDate>Fri, 25 Sep 2015 15:08:46 +0300</pubDate>
		<guid isPermaLink="false">31661</guid>
	</item>
	<item>
		<title>Выборочное чтение из файла</title>
		<link>http://forum.pascalnet.ru/index.php?showtopic=31295</link>
		<description><![CDATA[Бодрого дня, господа.<br />Ни как не могу найти решение проблемки.<br />Необходимо из файлика, допустим, info.txt:<br />Первая строка Первого пункта<br />Вторая строка Первого пункта<br />Третья строка Первого пункта<br />Первая строка Второго пункта<br />Вторая строка Второго пункта<br />Третья строка Второго пункта<br />Первая строка Третьего пункта<br />Вторая строка Третьего пункта<br />Третья строка Третьего пункта<br /><br />По "меню" выборочно прочитать и вывести на экран только первых 3 строки, или с 4 по 6 строки, или с 7 по 9 строки.]]></description>
		<pubDate>Wed, 16 Sep 2015 14:59:49 +0300</pubDate>
		<guid isPermaLink="false">31295</guid>
	</item>
	<item>
		<title>найти значение и относительную погрешность</title>
		<link>http://forum.pascalnet.ru/index.php?showtopic=31225</link>
		<description><![CDATA[Задали написать прогу в паскале:<br /><br /><br />надо посчитать значение, найти относительную погрешность, величины должны быть читабельны.<br /><br />y=(4q-x^2/sinx)*10^-k<br /><br />x начальное=18,1<br />x конечное=36,5<br /><br />q начальное=96,1<br />q конечное=115,0<br /><br />k начальное=9<br />k конечное=11<br /><br />Вид печати: Аргументы равны: Q= ,x= ,k=<br />Результат равен:y=<br /><br /><br />Помогите плиз]]></description>
		<pubDate>Tue, 15 Sep 2015 22:47:14 +0300</pubDate>
		<guid isPermaLink="false">31225</guid>
	</item>
	<item>
		<title>Удаление цифр из числа</title>
		<link>http://forum.pascalnet.ru/index.php?showtopic=30918</link>
		<description><![CDATA[Здраствуйте.Прошу помощи:никак не могу написать программу на эту задачу:Дано натуральное шеснадцатизначное число. Получите новое число удалив из него заданную цифру.<br />Заранее спасибо:)]]></description>
		<pubDate>Tue, 11 Aug 2015 13:50:39 +0300</pubDate>
		<guid isPermaLink="false">30918</guid>
	</item>
	<item>
		<title>Две очереди</title>
		<link>http://forum.pascalnet.ru/index.php?showtopic=30740</link>
		<description><![CDATA[<i>  Помогите,пожалуйста,решить задачу.</i><br /><br /><b>Даны 2 очереди, заполненные символами латинского алфавита и числами. Сделать из них две, так, чтобы в одной остались только символы, а в другой - только числа.</b>]]></description>
		<pubDate>Wed, 24 Jun 2015 15:21:42 +0300</pubDate>
		<guid isPermaLink="false">30740</guid>
	</item>
	<item>
		<title>Игра Сапер</title>
		<link>http://forum.pascalnet.ru/index.php?showtopic=30736</link>
		<description><![CDATA[На днях написал вот такое подобие Сапера:<br /><a href='http://forum.pascalnet.ru/index.php?act=Attach&type=post&id=13481'>http://forum.pascalnet.ru/index.php?act=Attach&type=post&id=13481</a>]]></description>
		<pubDate>Sun, 21 Jun 2015 20:38:51 +0300</pubDate>
		<guid isPermaLink="false">30736</guid>
	</item>
	<item>
		<title>PascalABC.NET - Рассмотреть класс геометрических фигур.</title>
		<link>http://forum.pascalnet.ru/index.php?showtopic=30731</link>
		<description><![CDATA[PascalABC.NET - Рассмотреть класс геометрических фигур, квадрат, круг, треугольник (наследование, полиморфизм, инкапсуляция.)<br />Помогите пожалуйста. В программирование не силен. <br />Как работать с классами не знаю.<br /><br />Нужно, что бы выглядело так:<br /><br />Меню программы:<br />1. Треугольник<br />2. Круг<br />3. Квадрат<br />Выбираем нужную геометрическую фигуру (вводим с клавиатуры например 2). <br />Программа просит, задать размер фигуры, в даном случае размер круга (его радиус). <br />Вводим с клавиатуры например 7.<br />Программа просит выбрать цвет фигуры.<br />1. Красный<br />2. Оранжевый<br />3. Желтый<br />4. Зеленый<br />5. Голубой<br />6. Синий<br />7. Фиолетовый<br />Выбираем нужный цвет например 4.<br />Программа выводит графическое окно, в которой нарисован зеленый круг радиусом 7.<br />И для всего этого добра нужно рассмотреть класс геометрических фигур.<br /><br />Есть мой код выглядит так, его надо доделывать сильно.<br /><br /><style>
  <!--
  PRE{font:12px "Courier New";display:block;border:2px dotted #333399;background-color:#FFFFFF;padding:5px}
  PRE.inl{padding:1px;display:inline;border-width:1px;margin:0.3em;border:none}
  .identif{color:black}
  -->
  CODE {color:navy; font: 12px "Verdana"}
</style><link rel="STYLESHEET" type="text/css" href="http://forum.pascalnet.ru/common_files/css_13.css">
<script type="text/javascript" src="http://forum.pascalnet.ru/common_files/h_pas.js"></script>
<script type="text/javascript" src="http://forum.pascalnet.ru/common_files/h_core_19.js"></script>
<pre  id="pas_1" title="pas" border="1" bordercolor="#000000"><br />Program classfigur;<br />Uses graphabc;<br />Var<br />  n: Byte;<br /> <br />procedure krug;<br />begin<br />Circle(500,200,100);<br />FLOODFILL(500,200,clred);<br />end;<br /> <br />procedure kvadr;<br />begin<br />line(200,1,440,1);<br />line(440,1,440,240);<br />line(440,240,200,240);<br />line(200,240,200,1);<br />FLOODFILL(240,200,clblue);<br />end;<br /> <br />procedure treug;<br />begin<br />line(300,100,500,300);<br />line(500,300,100,300);<br />line(100,300,300,100);<br />FLOODFILL(300,200,clgreen);<br />end;<br /> <br />begin<br />  repeat<br />  WriteLn('1-Круг');<br />  WriteLn('2-Квадрат');<br />  WriteLn('3-Треугольник');<br />  WriteLn('4-Выход');<br />  Write('5-Следующая фигура: ');<br />  ReadLn(n);<br />  Case n of<br />    1: krug;<br />    2: kvadr;<br />    3: treug;<br />  end;<br />  until n &lt;&gt; 0;<br />end.<br /><br /></pre>
 <script>if (navigator.appName == "Netscape") parseOne('pas_1','pas')</script><br /><br />Предусмотреть методы для создания объектов, изменения размеров и цвета.<br />Спасибо.<br /><br />Есть еще такие коды уже не мои, но вдруг пригодятся<br /><br /><style>
  <!--
  PRE{font:12px "Courier New";display:block;border:2px dotted #333399;background-color:#FFFFFF;padding:5px}
  PRE.inl{padding:1px;display:inline;border-width:1px;margin:0.3em;border:none}
  .identif{color:black}
  -->
  CODE {color:navy; font: 12px "Verdana"}
</style><link rel="STYLESHEET" type="text/css" href="http://forum.pascalnet.ru/common_files/css_13.css">
<script type="text/javascript" src="http://forum.pascalnet.ru/common_files/h_pas.js"></script>
<script type="text/javascript" src="http://forum.pascalnet.ru/common_files/h_core_19.js"></script>
<pre  id="pas_1" title="pas" border="1" bordercolor="#000000">uses GraphAbc;<br />var w:char;<br />    j:integer;<br />begin<br />  repeat<br />    ClearWindow;<br />    textout(1,10,'Выберите действие');<br />    textout(1,30,'1-нарисовать квадрат');<br />    textout(1,50,'2-нарисовать круг');<br />    textout(1,70,'другое выход');<br />    readln(w);<br />    case w of <br />    '1':begin<br />        textout(1,90,'Сторона:');<br />        readln(j);<br />        ClearWindow;<br />        Rectangle(WindowWidth div 2-j div 2,WindowHeight div 2-j div 2,WindowWidth div 2+j div 2,WindowHeight div 2+ j div 2);<br />        textout(WindowWidth div 2-50,10,'Нажмите Enter');<br />        readln;<br />        end;<br />    '2':begin<br />        textout(1,90,'радиус:');<br />        readln(j);<br />        ClearWindow;<br />        Circle(WindowWidth div 2,WindowHeight div 2,j);<br />        textout(WindowWidth div 2-50,10,'Нажмите Enter');<br />        readln;<br />       end;<br />     else exit;<br />   end;  <br />  until not (w in ['1','2']);   <br /> end.<br /><br /></pre>
 <script>if (navigator.appName == "Netscape") parseOne('pas_1','pas')</script><br /><br />и вот такой<br /><style>
  <!--
  PRE{font:12px "Courier New";display:block;border:2px dotted #333399;background-color:#FFFFFF;padding:5px}
  PRE.inl{padding:1px;display:inline;border-width:1px;margin:0.3em;border:none}
  .identif{color:black}
  -->
  CODE {color:navy; font: 12px "Verdana"}
</style><link rel="STYLESHEET" type="text/css" href="http://forum.pascalnet.ru/common_files/css_13.css">
<script type="text/javascript" src="http://forum.pascalnet.ru/common_files/h_pas.js"></script>
<script type="text/javascript" src="http://forum.pascalnet.ru/common_files/h_core_19.js"></script>
<pre  id="pas_1" title="pas" border="1" bordercolor="#000000"><br />type<br />    Shape = auto class<br />        x, y: integer;<br />        color: GraphABC.Color;<br />    end;<br /><br />    Square = class(Shape)        <br />        x1, y1: integer;<br />        <br />        constructor Create(x, y, x1, y1: integer; color: GraphABC.Color);<br />        begin<br />            self.x := x;<br />            self.x1 := x1;<br />            self.y := y;<br />            self.y1 := y1;<br />            self.color := color;<br />        end;<br />        <br />        procedure Draw();<br />        begin<br />            brush.Color := color;<br />            GraphABC.Rectangle(x, y, x1, y1);<br />            <br />            brush.Color := GraphABC.Color.Transparent;<br />        end;<br />    end;<br /><br /></pre>
 <script>if (navigator.appName == "Netscape") parseOne('pas_1','pas')</script><br /><br />]]></description>
		<pubDate>Sat, 20 Jun 2015 13:26:09 +0300</pubDate>
		<guid isPermaLink="false">30731</guid>
	</item>
	<item>
		<title>Соединить воедино две программы</title>
		<link>http://forum.pascalnet.ru/index.php?showtopic=30713</link>
		<description><![CDATA[Есть программа отделяющая корни уравнений:<br /><br /><style>
  <!--
  PRE{font:12px "Courier New";display:block;border:2px dotted #333399;background-color:#FFFFFF;padding:5px}
  PRE.inl{padding:1px;display:inline;border-width:1px;margin:0.3em;border:none}
  .identif{color:black}
  -->
  CODE {color:navy; font: 12px "Verdana"}
</style><link rel="STYLESHEET" type="text/css" href="http://forum.pascalnet.ru/common_files/css_13.css">
<script type="text/javascript" src="http://forum.pascalnet.ru/common_files/h_pas.js"></script>
<script type="text/javascript" src="http://forum.pascalnet.ru/common_files/h_core_19.js"></script>
<pre  id="pas_1" title="pas" border="1" bordercolor="#000000">uses crt;<br />var <br />a,b,x1,x2,y1,y2,h,w,y,e:real;<br />n,k:integer;<br /> <br /> <br />function f(x:real):real;<br />begin<br />f:=Sqr(x)-(0.1*exp(x))-5;<br />end;<br /> <br /> begin<br />a:=-3;<br />b:=7;<br />h:=0.5;<br />  clrscr;<br />    k:=0; x1:=a; x2:=x1+h; y1:=f(x1); y2:=f(x2);<br />  while x2&lt;b do<br /> <br />     begin y2:=f(x2);<br />       if y1*y2&lt;0 then<br />                 begin inc (k);<br />            writeln(k,'-й корень[',x1:4:1,';',x2:4:1,']')<br />         end;<br />     x1:=x2; x2:=x1+h; y1:=y2;<br />   end;<br />   <br /> repeat until keypressed<br /> <br /> <br />end.<br /></pre>
 <script>if (navigator.appName == "Netscape") parseOne('pas_1','pas')</script><br /><br /><br />Есть еще кусок кода, уточняющий корни:<br /><br /><style>
  <!--
  PRE{font:12px "Courier New";display:block;border:2px dotted #333399;background-color:#FFFFFF;padding:5px}
  PRE.inl{padding:1px;display:inline;border-width:1px;margin:0.3em;border:none}
  .identif{color:black}
  -->
  CODE {color:navy; font: 12px "Verdana"}
</style><link rel="STYLESHEET" type="text/css" href="http://forum.pascalnet.ru/common_files/css_13.css">
<script type="text/javascript" src="http://forum.pascalnet.ru/common_files/h_pas.js"></script>
<script type="text/javascript" src="http://forum.pascalnet.ru/common_files/h_core_19.js"></script>
<pre  id="pas_1" title="pas" border="1" bordercolor="#000000">repeat<br /> writeLn('Введите точность в пределах от 0 до 1 eps=');<br /> readln(eps);<br /> until (eps &gt;0) and (eps &lt;1);<br /> clrscr;<br /> {n := 0;}<br /> repeat<br />   c:=(f(b)*a-f(a)*b)/(f(b)-f(a));<br />   if f(a)*f&copy; &gt; 0 then a := c<br />   else b := c;<br />   {Inc(n)}<br /> until abs((f(b)*a-f(a)*b)/(f(b)-f(a))-c)&lt;eps;<br /> x := c;<br /> writeLn('Корень уравнения x=', x:10:7);<br /> write('Для выхода нажмите Enter');<br /> {writeLn('Количество итераций =  ',n);}<br /><br /></pre>
 <script>if (navigator.appName == "Netscape") parseOne('pas_1','pas')</script><br /><br />Никак не могу слепить их воедино, чтобы программа сначала отделяла корни, а потом их уточняла.<br /><br />По одиночке они работают, когда соединяю их прога зависает, видимо получается бесконечный цикл.]]></description>
		<pubDate>Fri, 12 Jun 2015 15:29:19 +0300</pubDate>
		<guid isPermaLink="false">30713</guid>
	</item>
	<item>
		<title>Разпознавание лица</title>
		<link>http://forum.pascalnet.ru/index.php?showtopic=30700</link>
		<description>Добрый день!Можете помочь с распознаванием лица? Например, Есть 5 фоток Гэри Барлоу и есть мои 5 фоток,надо сделать так,чтобы программа распознавала кто есть кто из нас? На входе должны быть 100 нейронов,на выходе-2,а внутренний слой из 50 нейронов.Желательно,чтобы распознавала на сколько процентов это я или он.</description>
		<pubDate>Sun, 07 Jun 2015 17:05:19 +0300</pubDate>
		<guid isPermaLink="false">30700</guid>
	</item>
	<item>
		<title>Двунаправленные списки. Help, please!</title>
		<link>http://forum.pascalnet.ru/index.php?showtopic=30691</link>
		<description><![CDATA[Help, please! Скоро зачет, а я вообще не понимаю как делать. Даны действительные числа A1..AN. N - чётное. Получить <br /><br />min(A<sub>1</sub>A<sub>N/2+1</sub>, A<sub>2</sub>A<sub>N/2+2</sub>, ..., A<sub>N/2</sub>A<sub>N</sub>).]]></description>
		<pubDate>Wed, 03 Jun 2015 10:23:27 +0300</pubDate>
		<guid isPermaLink="false">30691</guid>
	</item>
	<item>
		<title>Объясните код</title>
		<link>http://forum.pascalnet.ru/index.php?showtopic=30682</link>
		<description><![CDATA[<style>
  <!--
  PRE{font:12px "Courier New";display:block;border:2px dotted #333399;background-color:#FFFFFF;padding:5px}
  PRE.inl{padding:1px;display:inline;border-width:1px;margin:0.3em;border:none}
  .identif{color:black}
  -->
  CODE {color:navy; font: 12px "Verdana"}
</style><link rel="STYLESHEET" type="text/css" href="http://forum.pascalnet.ru/common_files/css_13.css">
<script type="text/javascript" src="http://forum.pascalnet.ru/common_files/h_pas.js"></script>
<script type="text/javascript" src="http://forum.pascalnet.ru/common_files/h_core_19.js"></script>
<pre  id="pas_1" title="pas" border="1" bordercolor="#000000">Program KL8;<br />uses crt;<br />var s,t:string;<br />i:integer;<br />begin<br />clrscr;<br />readln(s);<br />while s[1]=' ' do delete(s,1,1);<br />while pos('  ',s)&lt;&gt;0 do  delete(s,pos('  ',s),1);<br />while s[length(s)]=' ' do delete(s,length(s),1);<br />s:=s+' ';<br />t:='';<br />for i:=1 to length(s) do<br />if (s[i]&lt;&gt;' ') and (s[i]&lt;&gt;',')  then t:=t+s[i]<br />else begin<br />write('(',t,')',s[i]);<br />t:='';<br />readln;<br />end;<br />end.<br /></pre>
 <script>if (navigator.appName == "Netscape") parseOne('pas_1','pas')</script><br />]]></description>
		<pubDate>Sun, 31 May 2015 14:26:19 +0300</pubDate>
		<guid isPermaLink="false">30682</guid>
	</item>
	<item>
		<title>Строительные и дорожные работы</title>
		<link>http://forum.pascalnet.ru/index.php?showtopic=30678</link>
		<description>Всем привет! Нужна помощь. Работаю в дорожной службе. Необходимо заасфальтировать дорогу, но старые партнеры уже не удовлетворяют. Кто знает в самом деле неплохие службы, занимающиеся дорожными работами или производством материалов для них?</description>
		<pubDate>Fri, 29 May 2015 03:10:16 +0300</pubDate>
		<guid isPermaLink="false">30678</guid>
	</item>
	<item>
		<title>задача коммивояжера. гамильтонов цикл</title>
		<link>http://forum.pascalnet.ru/index.php?showtopic=30672</link>
		<description>задача коммивояжера с помощью гамильтонова цикла</description>
		<pubDate>Mon, 25 May 2015 15:34:26 +0300</pubDate>
		<guid isPermaLink="false">30672</guid>
	</item>
	<item>
		<title>Поиcк гамильтонова цикла в графе на Pascal ABC</title>
		<link>http://forum.pascalnet.ru/index.php?showtopic=30669</link>
		<description>программа поиcка гамильтонова цикла в графе на Pascal ABC</description>
		<pubDate>Sat, 23 May 2015 18:15:59 +0300</pubDate>
		<guid isPermaLink="false">30669</guid>
	</item>
	<item>
		<title>Функции.Паскаль</title>
		<link>http://forum.pascalnet.ru/index.php?showtopic=30665</link>
		<description>Помогите пожалуйста!!! Напишите функцию в Паскале, которая принимает в качестве аргументов две строки, а возвращает кол-во одинаковых слов в них</description>
		<pubDate>Thu, 21 May 2015 21:35:21 +0300</pubDate>
		<guid isPermaLink="false">30665</guid>
	</item>
	<item>
		<title>Продам мощные ультрафиолетовые фонари для поиска драгкамней</title>
		<link>http://forum.pascalnet.ru/index.php?showtopic=30663</link>
		<description></description>
		<pubDate>Thu, 21 May 2015 04:10:26 +0300</pubDate>
		<guid isPermaLink="false">30663</guid>
	</item>
	<item>
		<title>деление двоичных чисел</title>
		<link>http://forum.pascalnet.ru/index.php?showtopic=30654</link>
		<description>необходимо написать программу которая делит 2 двоичных числа друг на друга</description>
		<pubDate>Tue, 19 May 2015 01:11:47 +0300</pubDate>
		<guid isPermaLink="false">30654</guid>
	</item>
	<item>
		<title>Продам ювелирные изделия с сапфирами,изумрудами,бриллиантами недорого!</title>
		<link>http://forum.pascalnet.ru/index.php?showtopic=30633</link>
		<description></description>
		<pubDate>Fri, 15 May 2015 14:22:11 +0300</pubDate>
		<guid isPermaLink="false">30633</guid>
	</item>
	<item>
		<title>Двунаправленный список. Удалить след. элемент после нуля.</title>
		<link>http://forum.pascalnet.ru/index.php?showtopic=30629</link>
		<description><![CDATA[Двунаправленный список. Программа должна удалить следующий элемент после нуля.<br />Пример 8 9 10 0 20 7.<br />Ответ 8 9 10 20 7. <br />Преподаватель сказал, что проблема в процедуре, якобы не для двунаправленного списка.<br /><style>
  <!--
  PRE{font:12px "Courier New";display:block;border:2px dotted #333399;background-color:#FFFFFF;padding:5px}
  PRE.inl{padding:1px;display:inline;border-width:1px;margin:0.3em;border:none}
  .identif{color:black}
  -->
  CODE {color:navy; font: 12px "Verdana"}
</style><link rel="STYLESHEET" type="text/css" href="http://forum.pascalnet.ru/common_files/css_13.css">
<script type="text/javascript" src="http://forum.pascalnet.ru/common_files/h_pas.js"></script>
<script type="text/javascript" src="http://forum.pascalnet.ru/common_files/h_core_19.js"></script>
<pre  id="pas_1" title="pas" border="1" bordercolor="#000000">program spiski;<br /><br />type<br /><br />List = ^TList;<br />TList = record <br />data: integer;  <br />next,    <br />prev: List;   <br />end;<br /><br />var<br />nach,teck, ends: List;<br />  i, a: integer;<br /><br />Procedure Del(var first:List);<br /> Var z,x,dx:List;<br /> Begin<br /> z:=first; <br /> While z&lt;&gt;Nil do <br /> if z^.data=0 then <br />   if z=first then begin <br />   first:=first^.next;<br />   Dispose(x); <br />  <br />   end<br />   else begin<br />   if z &lt;&gt; nil then <br />   begin <br />   z:=z^.next; <br />   dx^.next^.next:=z^.next;<br />   Dispose(x);<br />                  end<br />             else begin {удалить последний}<br /> writeln ('удалить последний');<br />                  end;<br />                  end;<br />          dx:=z; z:=z^.next;         <br /> End;<br /> <br /> <br />procedure Print(spis1: List);<br />begin<br />  if spis1 = nil then <br />begin<br />writeln('Список пуст.');<br />exit;<br />end<br />  else begin <br />while spis1 &lt;&gt;nil do<br />    begin<br />Write(spis1^.data, '  ');<br />      spis1 := spis1^.next<br />end;<br />end;<br />end;<br /><br /><br />begin<br />  for i := 1 to 11 do <br />begin<br />a := random(8) - 5;<br />if nach = nil then <br />begin<br />      new(nach); <br />nach^.next := nil; <br />nach^.prev := nil; <br />      ends := nach; <br />end<br />    else <br />begin<br />      new(ends^.next); <br />ends^.next^.prev := ends; <br />ends := ends^.next;<br />ends^.next := nil; <br />end;<br />    ends^.data := a;<br />end;<br />teck:=nil;<br /> teck:=nach;<br />  Print(nach);<br />  writeln;<br />  Del(teck);<br />Print(nach);<br />  writeln;<br />end.<br /><br /></pre>
 <script>if (navigator.appName == "Netscape") parseOne('pas_1','pas')</script>]]></description>
		<pubDate>Thu, 14 May 2015 17:12:09 +0300</pubDate>
		<guid isPermaLink="false">30629</guid>
	</item>
	<item>
		<title><![CDATA[Игра "Змейка"]]></title>
		<link>http://forum.pascalnet.ru/index.php?showtopic=30627</link>
		<description><![CDATA[<!--fonto:Courier New--><span style="font-family:Courier New"><!--/fonto-->program moving_of_line;<br /><br />uses graph, crt;<br /><br />const<br />  coeff:  array[1..2, 1..12] of -2..2 =<br />    ((0, 1, 2, 2, 2, 1, 0, -1, -2, -2, -2, -1),<br />     (2, 2, 1, 0, -1, -2, -2, -2, -1, 0, 1, 2));<br />  delays: array[1..12] of byte =<br />     (50, 56, 56, 50, 56, 56, 50, 56, 56, 50, 56, 56);<br />  lm = 200;    {максимальная длина змейки}<br />  k = 4;       {радиус тела змейки}<br />  snake_color = 11;   {цвет тела змейки}<br />  apple_color = 14;  {цвет яблока}<br />  liter_color = 2;     {цвет букв}<br /><br />var<br />  i, x, y, d, m: integer;<br />  kl: char;<br />  j, n, sp: byte;               {n - счетчик тел змейки}<br />  snake: array[1..2, 1..lm] of integer;   {массив координат тел змейки}<br />  appl: boolean;          {наличие яблока на поле}<br />  apple: array[1..2] of integer;<br />  points: word;             {текущее число очков}<br />  spoints: string;          {перевод числа очков в строку}<br /><br />procedure nach;    forward;<br /><br />procedure ending;<br />begin<br />  sound(400);<br />  delay(800);<br />  NoSound;<br />  setcolor(liter_color);<br />  OutTextXY(100, 10, 'Игра окончена! Число очков: ' + spoints);<br />  OutTextXY(100, 24, 'Сыграть ещё? (Y / N)');<br />  {kl := readkey;}readln(kl);<br />  closegraph;<br />  if kl = 'Y' then nach<br />              else halt;<br />end;<br /><br />procedure krug(a, b: integer; c: shortint); {c - цвет линий}<br />begin<br />  setcolor&copy;;<br />  circle(a, b, k);<br />end;<br /><br />function color_pt: boolean;  {для яблока}<br />var<br />  i, j: integer;<br />begin<br />  color_pt := true;<br />  for i := 1 to k + 1 do<br />    for j := 1 to k + 1 do<br />      if getpixel(apple[1] - 3 + i, apple[2] - 3 + j) &lt;&gt; 0 then<br />        color_pt := false;<br />end;<br /><br />procedure scanner;      {сканирование первого тела на собственный цвет}<br />var<br />  t: integer;<br />begin<br />  for t := -k + 2 to k - 2 do<br />  begin<br />    if getpixel(x + t, y) = snake_color then ending;<br />    if getpixel(x, y + t) = snake_color then ending;<br />  end;<br />  if (x &lt;= 10 + k) or (x &gt;= 630 - k) or         {если голова вышла за пределы поля}<br />       (y &lt;= 40 + k) or (y &gt;= 470 - k) then ending;<br />end;<br /><br />procedure point;       {изменение кол-ва очков и вывод на экран}<br />begin<br />  inc(points, 5 * sp);<br />  sp := (points div 100) + 1;<br />  str(points, spoints);<br />  setcolor(red);<br />  rectangle(1, 1, 100, 35);<br />  setfillstyle(0, black);<br />  floodfill(2, 2, red);<br />  setcolor(black);<br />  rectangle(1, 1, 100, 35);<br />  setcolor(liter_color);<br />  OutTextXY(10, 10, 'Очки: ' + spoints);<br />end;<br /><br />procedure appling;     {помещение яблока на поле}<br />begin<br />  repeat<br />    apple[2] := 55 + random(400);<br />    apple[1] := 25 + random(590)<br />  until color_pt = true;<br />  krug(apple[1], apple[2], apple_color);<br />  appl := true;<br />end;<br /><br />procedure moving;<br />begin<br />  while not keypressed do<br />  begin<br />    inc(j);<br />    if j = lm + 1 then j := 1;<br />    snake[1, j] := x;<br />    snake[2, j] := y;<br />    krug(x, y, snake_color);<br />    if j &lt;= n then krug(snake[1, lm - n + j], snake[2, lm - n + j], 0)   {удаление последнего тела}<br />              else krug(snake[1, j - n], snake[2, j - n], 0);       {с целью имитации движения}<br /><br />    delay(trunc(2*delays[i]/sqrt(sp)));<br />    x := x + k * coeff[1, i];<br />    y := y + k * coeff[2, i];<br />    if appl = false then appling;<br />    if (abs(x - apple[1]) &lt; 2 * k) and (abs(y - apple[2]) &lt; 2 * k) then<br />    begin<br />      krug(apple[1], apple[2], 0);<br />      inc(n);<br />      point;<br />      appl := false;<br />    end;<br />    scanner;<br />  end;<br />  kl := readkey;<br />  {клавиша q - примитивная пауза}<br />  if kl = 'q' then while not keypressed do delay(100)<br />  else case kl of<br />    'a': inc(i);<br />    'd': dec(i);<br />  end;<br />  if i = 13 then i := 1;<br />  if i = 0  then i := 12;<br />end;<br /><br />procedure nach;<br />begin<br />  d := detect;<br />  initgraph(d, m, '');<br />  x := 320;<br />  y := 240;<br />  points := 0;<br />  sp := 1;<br />  appl := false;<br />  i := 1;   {переменная направления (в часах поворота)}<br />  n := 2;   {начальная длина змейки}<br />  setlinestyle(0, 0, ThickWidth);<br />  rectangle(10, 40, 630, 470);<br />  setlinestyle(0, 0,  NormWidth);<br />  settextstyle(2, 0, 5);<br />  setcolor(liter_color);<br />  outtextxy(10, 10, 'Очки: 0');<br />  randomize;<br />  repeat moving until j = 5;<br />  repeat moving until false;<br />end;<br /><br />begin<br />  nach;<br />end.<br /><!--fontc--></span><!--/fontc-->]]></description>
		<pubDate>Wed, 13 May 2015 12:42:44 +0300</pubDate>
		<guid isPermaLink="false">30627</guid>
	</item>
	<item>
		<title>Массивы процедуры функции</title>
		<link>http://forum.pascalnet.ru/index.php?showtopic=30625</link>
		<description><![CDATA[Пжл, кто может объяснить программу(расписать что означает каждая строчка). <br /><br />В массиве 10х10 целого типа отсортировать главную диагональ (процедура), вычислить ее сумму (функция), поменять местами строки, номера которых укажет пользователь. Вывод массива (процедура).<br /><br />Написать эту задачу: 1. все процедуры в одном файле<br />2. процедуры/файлы в библиотечном файле<br />3. вывод результатов в текстовый файл<br /><br /><br />Паскаль абс<br /><br />var p:array[1..10,1..10] of byte;<br />    i,j,n1,n2,z:byte;<br /><br />procedure vyvod;<br />var i,j:byte;<br />begin<br />   For i:=1 to 10 do<br />   begin<br />      For j:=1 to 10 do<br />         Write(p[i,j],'  ');<br />      Writeln;<br />   end;<br />   Writeln;<br />end;<br /><br />procedure sort;<br />var i,z:byte;<br />    b:boolean;<br />begin<br />   Repeat<br />      b:=true;<br />      For i:=1 to 9 do<br />         If p[i,i]&gt;p[i+1,i+1] then<br />         begin<br />            b:=false;<br />            z:=p[i,i];<br />            p[i,i]:=p[i+1,i+1];<br />            p[i+1,i+1]:=z;<br />         end;<br />   Until b;<br />end;<br /><br />function summ:integer;<br />var i:byte;<br />begin<br />   Result:=0;<br />   For i:=1 to 10 do<br />      Result:=Result+p[i,i];<br />end;<br /><br />begin<br />   Randomize;<br />   For i:=1 to 10 do<br />      For j:=1 to 10 do<br />         p[i,j]:=Random(21);<br />   vyvod;<br />   sort;<br />   vyvod;<br />   Writeln(summ);<br />   Writeln;<br />   Writeln('Nomera strok: ');<br />   Repeat<br />      Write('              n1 = ');<br />      Readln(n1);<br />      Write('              n2 = ');<br />      Readln(n2);<br />      If n1=n2 then<br />         Writeln('n1 = n2 = ',n1);<br />      If n1&gt;10 then<br />         Writeln(n1,' &gt; 10');<br />      If n2&gt;10 then<br />         Writeln(n2,' &gt; 10');<br />      If n1&lt;1 then<br />         Writeln(n1,' &lt; 1');<br />      If n2&lt;1 then<br />         Writeln(n2,' &lt; 1');<br />   Until (n1&lt;&gt;n2) and (n1&gt;=1) and (n1&lt;=10) and (n2&gt;=1) and (n2&lt;=10);<br />   For j:=1 to 10 do<br />   begin<br />      z:=p[n1,j];<br />      p[n1,j]:=p[n2,j];<br />      p[n2,j]:=z;<br />   end;<br />   vyvod;<br />   Readln;<br />end.]]></description>
		<pubDate>Sun, 10 May 2015 20:19:47 +0300</pubDate>
		<guid isPermaLink="false">30625</guid>
	</item>
	<item>
		<title>Задача с методом Greedy - Лифт</title>
		<link>http://forum.pascalnet.ru/index.php?showtopic=30618</link>
		<description><![CDATA[Помогите, пожалуйста, с написанием задачи с использованием метода Greedy.<br />Условие такое:<br />Есть лифт, пользователем считывается с клавиатуры максимальный вес, который не будет его перегружать.<br />Дальше вводится количество людей, которым нужно зайти в лифт (максимум 7) и для каждого отдельного человека пользователь вводит его вес, а программа смотрит, чтобы:<br />1. Количество людей не превышало максимальное<br />2. Если людей меньше, чем 7 (макс. количество), то программа суммирует вес всех людей и проверяет, не превышает ли он допустимый.<br />3. Если количество людей или вес таки превышают допустимые нормы, то программа выводит "Лифт перегружен, освободите место" и начинает считывать все данные заново.<br /><br />Нужно срочно. Заранее спасибо.]]></description>
		<pubDate>Mon, 04 May 2015 19:19:53 +0300</pubDate>
		<guid isPermaLink="false">30618</guid>
	</item>
	<item>
		<title>Диагонали правильного многоугольника</title>
		<link>http://forum.pascalnet.ru/index.php?showtopic=30605</link>
		<description><![CDATA[В правильном n-угольнике провели несколько диагоналей, причем никакие три не пересекаются в одной точке. На сколько частей диагонали разбили<br />n-угольник? Диагонали заданы номерами вершин n-угольника, которые они соединяют , все вершины перенумерованы по порядку числами 1, ...,n.]]></description>
		<pubDate>Thu, 23 Apr 2015 17:33:36 +0300</pubDate>
		<guid isPermaLink="false">30605</guid>
	</item>
	<item>
		<title>Задача с последовательными числами в PASCAL ABC</title>
		<link>http://forum.pascalnet.ru/index.php?showtopic=30604</link>
		<description>Ввести число если оно положительное то возвести его в куб, если оно отрицательное, убрать минус , если 0 то +5</description>
		<pubDate>Thu, 23 Apr 2015 15:02:25 +0300</pubDate>
		<guid isPermaLink="false">30604</guid>
	</item>
</channel>
</rss>