<?xml version='1.0' encoding="utf-8"?>
      <rss version='2.0'>
      <channel>
      <title>Форум на Исходниках.RU</title>
      <link>https://forum.sources.ru</link>
      <description>Форум на Исходниках.RU</description>
      <generator>Форум на Исходниках.RU</generator>
  	
      <item>
        <guid isPermaLink='true'>https://forum.sources.ru/index.php?showtopic=408923&amp;view=findpost&amp;p=3672634</guid>
        <pubDate>Thu, 02 Jun 2016 12:56:19 +0000</pubDate>
        <title>Поиск выигрышной стратегии - две кучи фишек</title>
        <link>https://forum.sources.ru/index.php?showtopic=408923&amp;view=findpost&amp;p=3672634</link>
        <description><![CDATA[Vesper: это вроде как Пролог, какой-то из вариантов. А что надо-то? Интерактивная игра, расчет вариантов для заданных А, Б и предела?]]></description>
        <author>Vesper</author>
        <category>Prolog</category>
      </item>
	
      <item>
        <guid isPermaLink='true'>https://forum.sources.ru/index.php?showtopic=408923&amp;view=findpost&amp;p=3672628</guid>
        <pubDate>Thu, 02 Jun 2016 12:09:41 +0000</pubDate>
        <title>Поиск выигрышной стратегии - две кучи фишек</title>
        <link>https://forum.sources.ru/index.php?showtopic=408923&amp;view=findpost&amp;p=3672628</link>
        <description><![CDATA[xNut: Какой? занятный язык <br>
<br>
<span class="tag-color tag-color-named" data-value="mergepost" style="color: mergepost"><span class='tag-size' data-value='7' style='font-size:7pt;'>Добавлено <time class="tag-mergetime" datetime="2016-06-02T12:52:18+00:00">02.06.16, 12:52</time></span></span><br>
1. Первый выигрывает за один ход, если кучи (&gt;=5, &gt;=9) и (&gt;=3, &gt;=10)<br>
2. Он проигрывает, когда своим ходом делает кучи из п.1, т.е. при (3, 9), (5, 8), (7, 7)<br>
3. Первый выигрывает вторым ходом, если если первым приводит к ситуации из п.2, т.е. при (3, 7), (5, 6), (5, 7)<br>
4. Тогда, если из (3, 5) сделать, что-то отличное от (5, 5), то проиграешь, т.е. первый побеждает из (3, 5)]]></description>
        <author>xNut</author>
        <category>Prolog</category>
      </item>
	
      <item>
        <guid isPermaLink='true'>https://forum.sources.ru/index.php?showtopic=408923&amp;view=findpost&amp;p=3672625</guid>
        <pubDate>Thu, 02 Jun 2016 12:05:39 +0000</pubDate>
        <title>Поиск выигрышной стратегии - две кучи фишек</title>
        <link>https://forum.sources.ru/index.php?showtopic=408923&amp;view=findpost&amp;p=3672625</link>
        <description><![CDATA[Kronos0041: Два игрока играют в следующую игру. Перед ними лежат две кучки фишек, в первой из которых 3, а во второй - 5 фишек. У каждого игрока неограниченно много фишек. Ходят игроки по очереди. Делая очередной ход, игрок или увеличивает в какой-то кучке число фишек в 2 раза, или добавляет в какую-то кучку 2 фишки. Выигрывает тот игрок, после хода которого общее число фишек в двух кучках становится не менее 23. Выяснить, кто выигрывает при правильной игре - первый или второй игрок.<br>
<br>
Но мне еще нужно добавить чтобы ходы игроков выводились в графическом виде. Вот моя попытка, но я думаю что это как то неправильно, как мне сделать чтобы было более наглядно?<br>
<br>
<div class='tag-code'><span class='pre_code'></span><div class='code  code_collapsed ' title='Подсветка синтаксиса доступна зарегистрированным участникам Форума.' style=''><div><div><ol type="1"><div class="code_line">swap(1,2).</div><div class="code_line">swap(2,1).</div><div class="code_line">win(Winer,P,[A,B]):- A + B &#62; 23, ! ,Winer = P.</div><div class="code_line">win(Winer,P,[A,B]):-swap(P,P1), write(&quot;\nGo player&quot;), write(P1),</div><div class="code_line">A1 is A*2,win(Winer,P1,[A1,B]), write(&quot;\nbunch is: &quot;), write(A1), write(&quot;,&quot;), write(B),</div><div class="code_line">B1 is B*2,win(Winer,P1,[A,B1]), write(&quot;\nbunch is: &quot;), write(A), write(&quot;,&quot;), write(B1),</div><div class="code_line">A2 is A+2,win(Winer,P1,[A2,B]), write(&quot;\nbunch is: &quot;), write(A2), write(&quot;,&quot;), write(B),</div><div class="code_line">B2 is B+2,win(Winer,P1,[A,B2]), write(&quot;\nbunch is: &quot;), write(A), write(&quot;,&quot;), write(B2).</div><div class="code_line">win(P1,P,_):-swap(P,P1).</div></ol></div></div></div></div><script>preloadCodeButtons('1');</script><br>
<br>
Тесты:<br>
<br>
<div class='tag-code'><span class='pre_code'></span><div class='code  code_collapsed ' title='Подсветка синтаксиса доступна зарегистрированным участникам Форума.' style=''><div><div><ol type="1"><div class="code_line">?- win(1,2,[3,5]).</div><div class="code_line">Go player1</div><div class="code_line">Go player2</div><div class="code_line">Go player1</div><div class="code_line">bunch is: 24,5</div><div class="code_line">Go player2</div><div class="code_line">bunch is: 12,5</div><div class="code_line">Go player1</div><div class="code_line">Go player2</div><div class="code_line">bunch is: 6,10</div><div class="code_line">Go player1</div><div class="code_line">Go player2</div><div class="code_line">bunch is: 8,5</div><div class="code_line">Go player1</div><div class="code_line">Go player2</div><div class="code_line">bunch is: 6,7</div><div class="code_line">bunch is: 6,5</div><div class="code_line">Go player2</div><div class="code_line">Go player1</div><div class="code_line">Go player2</div><div class="code_line">bunch is: 6,10</div><div class="code_line">Go player1</div><div class="code_line">bunch is: 6,20</div><div class="code_line">bunch is: 3,40</div><div class="code_line">bunch is: 5,20</div><div class="code_line">bunch is: 3,22</div><div class="code_line">bunch is: 3,20</div><div class="code_line">Go player1</div><div class="code_line">Go player2</div><div class="code_line">bunch is: 5,10</div><div class="code_line">Go player1</div><div class="code_line">...</div><div class="code_line">true.</div></ol></div></div></div></div>]]></description>
        <author>Kronos0041</author>
        <category>Prolog</category>
      </item>
	
      </channel>
      </rss>
	