<?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=14936&amp;view=findpost&amp;p=125483</guid>
        <pubDate>Sun, 16 Feb 2003 04:06:24 +0000</pubDate>
        <title>Время и положение стрелок часов</title>
        <link>https://forum.sources.ru/index.php?showtopic=14936&amp;view=findpost&amp;p=125483</link>
        <description><![CDATA[DOCTOR-121: извини я условие мельком прочитал!!!]]></description>
        <author>DOCTOR-121</author>
        <category>Pascal</category>
      </item>
	
      <item>
        <guid isPermaLink='true'>https://forum.sources.ru/index.php?showtopic=14936&amp;view=findpost&amp;p=125482</guid>
        <pubDate>Sun, 16 Feb 2003 04:03:20 +0000</pubDate>
        <title>Время и положение стрелок часов</title>
        <link>https://forum.sources.ru/index.php?showtopic=14936&amp;view=findpost&amp;p=125482</link>
        <description><![CDATA[DOCTOR-121: to exe смотри вроде так <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">programm cl;</div><div class="code_line">var</div><div class="code_line">z,j,h,m:integer;</div><div class="code_line">begin</div><div class="code_line">readln(h,m);</div><div class="code_line">j:=h*5 div m;</div><div class="code_line">if j=0 then</div><div class="code_line">writeln(&#39;Svpodaet&#39;);</div><div class="code_line">if m:=h*5+30 then</div><div class="code_line">writeln(&#39;perpendikylarni!&#39;);</div><div class="code_line">end.</div></ol></div></div></div></div><script>preloadCodeButtons('1');</script>]]></description>
        <author>DOCTOR-121</author>
        <category>Pascal</category>
      </item>
	
      <item>
        <guid isPermaLink='true'>https://forum.sources.ru/index.php?showtopic=14936&amp;view=findpost&amp;p=125481</guid>
        <pubDate>Sat, 15 Feb 2003 22:40:33 +0000</pubDate>
        <title>Время и положение стрелок часов</title>
        <link>https://forum.sources.ru/index.php?showtopic=14936&amp;view=findpost&amp;p=125481</link>
        <description><![CDATA[.exe: Кто-нибудь, пож-ста, поясните последнее решение!]]></description>
        <author>.exe</author>
        <category>Pascal</category>
      </item>
	
      <item>
        <guid isPermaLink='true'>https://forum.sources.ru/index.php?showtopic=14936&amp;view=findpost&amp;p=125480</guid>
        <pubDate>Mon, 03 Feb 2003 09:58:36 +0000</pubDate>
        <title>Время и положение стрелок часов</title>
        <link>https://forum.sources.ru/index.php?showtopic=14936&amp;view=findpost&amp;p=125480</link>
        <description><![CDATA[Serega_f1: А лучше - вроде этого:<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">program clock2;</div><div class="code_line">var</div><div class="code_line">&nbsp;h,m,s,t:integer;</div><div class="code_line">begin</div><div class="code_line">&nbsp;readln(h,m);</div><div class="code_line">&nbsp;t:=5*h-m+(h-1) div 2;</div><div class="code_line">&nbsp;s:=((t div abs(t))+1) div 2;</div><div class="code_line">&nbsp;t:=t+65*(1-s);</div><div class="code_line">&nbsp;writeln(t);</div><div class="code_line">end.</div></ol></div></div></div></div>]]></description>
        <author>Serega_f1</author>
        <category>Pascal</category>
      </item>
	
      <item>
        <guid isPermaLink='true'>https://forum.sources.ru/index.php?showtopic=14936&amp;view=findpost&amp;p=125479</guid>
        <pubDate>Mon, 03 Feb 2003 08:25:23 +0000</pubDate>
        <title>Время и положение стрелок часов</title>
        <link>https://forum.sources.ru/index.php?showtopic=14936&amp;view=findpost&amp;p=125479</link>
        <description><![CDATA[Serega_f1: Наверное, что-то вроде этого:<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">program clock1;</div><div class="code_line">var</div><div class="code_line">&nbsp;h,m,s,t:integer;</div><div class="code_line">begin</div><div class="code_line">&nbsp;readln(h,m);</div><div class="code_line">&nbsp;s:=((m-5*h-(m div 12)) div abs(m-5*h-(m div 12))+1) div 2;  (* s=0, если минутная стрелка</div><div class="code_line">&nbsp;позади часовой, иначе s=1 *)</div><div class="code_line">&nbsp;t:=(60-m)*s;</div><div class="code_line">&nbsp;h:=h+s;</div><div class="code_line">&nbsp;m:=m*(1-s);</div><div class="code_line">&nbsp;t:=t+5*h-m+(h-1) div 2;</div><div class="code_line">&nbsp;writeln(t);</div><div class="code_line">end.</div></ol></div></div></div></div>]]></description>
        <author>Serega_f1</author>
        <category>Pascal</category>
      </item>
	
      <item>
        <guid isPermaLink='true'>https://forum.sources.ru/index.php?showtopic=14936&amp;view=findpost&amp;p=125478</guid>
        <pubDate>Sun, 02 Feb 2003 20:53:05 +0000</pubDate>
        <title>Время и положение стрелок часов</title>
        <link>https://forum.sources.ru/index.php?showtopic=14936&amp;view=findpost&amp;p=125478</link>
        <description><![CDATA[.exe: Сформулировал не полностью - булевские выражения тоже низззя !!!! ???]]></description>
        <author>.exe</author>
        <category>Pascal</category>
      </item>
	
      <item>
        <guid isPermaLink='true'>https://forum.sources.ru/index.php?showtopic=14936&amp;view=findpost&amp;p=125477</guid>
        <pubDate>Sun, 02 Feb 2003 14:10:54 +0000</pubDate>
        <title>Время и положение стрелок часов</title>
        <link>https://forum.sources.ru/index.php?showtopic=14936&amp;view=findpost&amp;p=125477</link>
        <description><![CDATA[7in: Ну хорошо&#33;&#33;&#33;<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">Var</div><div class="code_line">&nbsp;  h, m: Integer;</div><div class="code_line">&nbsp;  Hpos, Mpos, Msovp, Mint: Real;</div><div class="code_line">&nbsp;</div><div class="code_line">Begin</div><div class="code_line">&nbsp;  Write(&#39;Введите Часы Минуты: &#39;);</div><div class="code_line">&nbsp;  ReadLn(h, m);</div><div class="code_line">&nbsp;  h := h mod 12;</div><div class="code_line">&nbsp;  Hpos := h + m/60;</div><div class="code_line">&nbsp;  Mpos := m/5;</div><div class="code_line">&nbsp;  h := (h + Ord(Mpos &#62; Hpos)) mod 12;</div><div class="code_line">&nbsp;  Msovp := h*60/11;</div><div class="code_line">&nbsp;  Mint := 60*Ord(Mpos &#62; Hpos) + Msovp - m;</div><div class="code_line">&nbsp;  WriteLn(&#39;Через &#39;, Trunc(Mint), &#39; минут &#39;, Trunc(Frac(Mint)*60), &#39; секунд&#39;)</div><div class="code_line">End.</div></ol></div></div></div></div><br>
Булевских переменных нет&#33;<br>
(есть только булевские выражения, но это же не переменные) ;D]]></description>
        <author>7in</author>
        <category>Pascal</category>
      </item>
	
      <item>
        <guid isPermaLink='true'>https://forum.sources.ru/index.php?showtopic=14936&amp;view=findpost&amp;p=125476</guid>
        <pubDate>Sat, 01 Feb 2003 21:55:11 +0000</pubDate>
        <title>Время и положение стрелок часов</title>
        <link>https://forum.sources.ru/index.php?showtopic=14936&amp;view=findpost&amp;p=125476</link>
        <description><![CDATA[Some1: Ужас....... <br>А промежуточные булевские можно ?<br>Ну без объявления самой переменной, ну как у меня выше.. <br>я не объявлял булевскую, а только в присваиваниях писал булевское условие. Это тоже нельзя ?]]></description>
        <author>Some1</author>
        <category>Pascal</category>
      </item>
	
      <item>
        <guid isPermaLink='true'>https://forum.sources.ru/index.php?showtopic=14936&amp;view=findpost&amp;p=125475</guid>
        <pubDate>Sat, 01 Feb 2003 20:50:01 +0000</pubDate>
        <title>Время и положение стрелок часов</title>
        <link>https://forum.sources.ru/index.php?showtopic=14936&amp;view=findpost&amp;p=125475</link>
        <description><![CDATA[.exe: Мужики, я уж извиняюсь, но &nbsp;как эту задачу можно сделать, если мало того, что оператор условия не дают использовать, так ещё и булевские переменные не разрешают?]]></description>
        <author>.exe</author>
        <category>Pascal</category>
      </item>
	
      <item>
        <guid isPermaLink='true'>https://forum.sources.ru/index.php?showtopic=14936&amp;view=findpost&amp;p=125474</guid>
        <pubDate>Thu, 30 Jan 2003 20:19:33 +0000</pubDate>
        <title>Время и положение стрелок часов</title>
        <link>https://forum.sources.ru/index.php?showtopic=14936&amp;view=findpost&amp;p=125474</link>
        <description><![CDATA[7in: Нет, не в 5 минут... Если она на 13 минутах, то будет 2.6 :)<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">Var</div><div class="code_line">&nbsp;  h, m: Integer;</div><div class="code_line">&nbsp;  Hpos, Mpos, Msovp, Mint: Real;</div><div class="code_line">&nbsp;  After: Boolean;</div><div class="code_line">&nbsp;</div><div class="code_line">Begin</div><div class="code_line">&nbsp;  Write(&#39;Введите Часы Минуты: &#39;);</div><div class="code_line">&nbsp;  ReadLn(h, m);</div><div class="code_line">&nbsp;  h := h mod 12;</div><div class="code_line">&nbsp;  Hpos := h + m/60;</div><div class="code_line">&nbsp;  Mpos := m/5;</div><div class="code_line">&nbsp;  After := Mpos &#62; Hpos;</div><div class="code_line">&nbsp;  h := (h + Ord(After)) mod 12;</div><div class="code_line">&nbsp;  Msovp := h*60/11;</div><div class="code_line">&nbsp;  Mint := 60*Ord(After) + Msovp - m;</div><div class="code_line">&nbsp;  WriteLn(&#39;Через &#39;, Trunc(Mint), &#39; минут &#39;, Trunc(Frac(Mint)*60), &#39; секунд&#39;)</div><div class="code_line">End.</div></ol></div></div></div></div><br>
P.S. Что, собственно, однохренственно ;D]]></description>
        <author>7in</author>
        <category>Pascal</category>
      </item>
	
      <item>
        <guid isPermaLink='true'>https://forum.sources.ru/index.php?showtopic=14936&amp;view=findpost&amp;p=125473</guid>
        <pubDate>Wed, 29 Jan 2003 19:45:42 +0000</pubDate>
        <title>Время и положение стрелок часов</title>
        <link>https://forum.sources.ru/index.php?showtopic=14936&amp;view=findpost&amp;p=125473</link>
        <description><![CDATA[Some1: <strong class='tag-b'>To Jin-X:</strong> Жека, прочитай внимательно последнюю строку условия (первого поста) :)))<br><strong class='tag-b'>To .exe:</strong> Ты часом условие не подправлял ? :)) А то мне кажется, там писалось, что надо найти время (без &quot;которое должно пройти&quot;) до совпадения стрелок, кажется автоматически подумал, что не важно, в какую сторону время считать :)))<br>Короче тогда делай, как сказал Jin-X :))<br>З.Ы. Жек, у тебя точно правильно ? А какой наименьший шаг у твоей часовой стрелки?? Не размером ли с пять минут ?... я что-то сегодня не очень соображаю :))) (ну в смысле у тебя не берётся за правило, что часовая стрелка делает одно движение в пять минут, и исходя из этого высчитывается угол ?) Я могу ошибаться :)]]></description>
        <author>Some1</author>
        <category>Pascal</category>
      </item>
	
      <item>
        <guid isPermaLink='true'>https://forum.sources.ru/index.php?showtopic=14936&amp;view=findpost&amp;p=125472</guid>
        <pubDate>Wed, 29 Jan 2003 16:18:41 +0000</pubDate>
        <title>Время и положение стрелок часов</title>
        <link>https://forum.sources.ru/index.php?showtopic=14936&amp;view=findpost&amp;p=125472</link>
        <description><![CDATA[7in: Во&#33; Вроде работает&#33; ;D<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">Var</div><div class="code_line">&nbsp;  h, m: Integer;</div><div class="code_line">&nbsp;  Hpos, Mpos, Msovp, Mint: Real;</div><div class="code_line">&nbsp;</div><div class="code_line">Begin</div><div class="code_line">&nbsp;  Write(&#39;Введите Часы Минуты: &#39;);</div><div class="code_line">&nbsp;  ReadLn(h, m);</div><div class="code_line">&nbsp;  h := h mod 12;</div><div class="code_line">&nbsp;  Hpos := h + m/60;</div><div class="code_line">&nbsp;  Mpos := m/5;</div><div class="code_line">&nbsp;  If Mpos &#60; Hpos then</div><div class="code_line">&nbsp;  Begin</div><div class="code_line">&nbsp;     Msovp := h*60/11;</div><div class="code_line">&nbsp;     Mint := Msovp - m</div><div class="code_line">&nbsp;  End</div><div class="code_line">&nbsp;  else If Mpos &#62; Hpos then</div><div class="code_line">&nbsp;  Begin</div><div class="code_line">&nbsp;     h := (h + 1) mod 12;</div><div class="code_line">&nbsp;     Msovp := h*60/11;</div><div class="code_line">&nbsp;     Mint := 60 + Msovp - m</div><div class="code_line">&nbsp;  End;</div><div class="code_line">&nbsp;  WriteLn(&#39;Через &#39;, Trunc(Mint), &#39; минут &#39;, Trunc(Frac(Mint)*60), &#39; секунд&#39;)</div><div class="code_line">End.</div></ol></div></div></div></div>]]></description>
        <author>7in</author>
        <category>Pascal</category>
      </item>
	
      <item>
        <guid isPermaLink='true'>https://forum.sources.ru/index.php?showtopic=14936&amp;view=findpost&amp;p=125471</guid>
        <pubDate>Wed, 29 Jan 2003 15:44:52 +0000</pubDate>
        <title>Время и положение стрелок часов</title>
        <link>https://forum.sources.ru/index.php?showtopic=14936&amp;view=findpost&amp;p=125471</link>
        <description><![CDATA[7in: А почему ты в &quot;Алгоритмы&quot; не напишешь?<br><br>Текущее положение стрелок (будем считать по большим цифрам, т.е. значения = 0..12):<br><strong class='tag-b'>h = h mod 12</strong><br><strong class='tag-b'>H<sub class='tag-sub'>pos</sub> = h + m/60</strong> - позиция часовой стрелки<br><strong class='tag-b'>M<sub class='tag-sub'>pos</sub> = m/5</strong> - позиция минутной стрелки<br><br>Теперь... если <strong class='tag-b'>M<sub class='tag-sub'>pos</sub> &lt; H<sub class='tag-sub'>pos</sub></strong>, значит минутная стрелка находится раньше часовой (относительно 12 часов), и они совпадут в этом часе. Если же <strong class='tag-b'>M<sub class='tag-sub'>pos</sub> &gt; H<sub class='tag-sub'>pos</sub></strong>, значит позже, и они совпадут в следующем часе.<br>[*] В первом случае:<br><strong class='tag-b'><span class="tag-color tag-color-named" data-value="blue" style="color: blue"><em class='tag-i'>h + m/60 = m/5<br>h = m*11/60</em></span><br>M<sub class='tag-sub'>sovpadut</sub> = h*60/11<br>M<sub class='tag-sub'>interval</sub> = M<sub class='tag-sub'>sovpadut</sub> - m</strong><br>[*] Во втором случае:<br><strong class='tag-b'>h = (h + 1) mod 12<br><span class="tag-color tag-color-named" data-value="blue" style="color: blue"><em class='tag-i'>h + m/60 = m/5<br>h = m*11/60</em></span><br>M<sub class='tag-sub'>sovpadut</sub> = h*60/11<br>M<sub class='tag-sub'>interval</sub> = 60 + M<sub class='tag-sub'>sovpadut</sub> - m</strong><br><br>Это теория... попробуй...<br>(то, что синим прогать не надо - это вывод формулы :))]]></description>
        <author>7in</author>
        <category>Pascal</category>
      </item>
	
      <item>
        <guid isPermaLink='true'>https://forum.sources.ru/index.php?showtopic=14936&amp;view=findpost&amp;p=125470</guid>
        <pubDate>Wed, 29 Jan 2003 04:08:13 +0000</pubDate>
        <title>Время и положение стрелок часов</title>
        <link>https://forum.sources.ru/index.php?showtopic=14936&amp;view=findpost&amp;p=125470</link>
        <description><![CDATA[.exe: Люди! Нашёл в задаче а ужасный баг( b пока не смотрел)!<br>В результате проги мы находим просто кол-во минут до времени , <br>в к-е стрелки совпадут. Т.е. ответ в некоторых случаях получается отрицательным!<br>А нам надо найти кол-во минут до ближайшего момента когда стрелки совпадут, отсчитывая этот момент с заданного времени!<br>Люди у кого какие идеи? Может другой алгоритм предложите (хотя и этот хорош - <br>только где то, что-то нужно подправить)?]]></description>
        <author>.exe</author>
        <category>Pascal</category>
      </item>
	
      <item>
        <guid isPermaLink='true'>https://forum.sources.ru/index.php?showtopic=14936&amp;view=findpost&amp;p=125469</guid>
        <pubDate>Wed, 15 Jan 2003 20:50:35 +0000</pubDate>
        <title>Время и положение стрелок часов</title>
        <link>https://forum.sources.ru/index.php?showtopic=14936&amp;view=findpost&amp;p=125469</link>
        <description><![CDATA[.exe: Some1, большое тебе спасибо!<br>Теперь всё хорошо ясно!]]></description>
        <author>.exe</author>
        <category>Pascal</category>
      </item>
	
      <item>
        <guid isPermaLink='true'>https://forum.sources.ru/index.php?showtopic=14936&amp;view=findpost&amp;p=125468</guid>
        <pubDate>Wed, 15 Jan 2003 09:14:12 +0000</pubDate>
        <title>Время и положение стрелок часов</title>
        <link>https://forum.sources.ru/index.php?showtopic=14936&amp;view=findpost&amp;p=125468</link>
        <description><![CDATA[Some1: Поясню полнее то, что сказал Ozzy:<br>Вот смотри, когда ты пишешь<br><strong class='tag-b'>if &lt;чёнить&gt; then &lt;ченить ещё&gt;</strong><br>то там, где <strong class='tag-b'>&lt;чёнить&gt;</strong> ты всегда пишешь переменную типа <strong class='tag-b'>boolean</strong> - тоесть условие.<br>Любое условие в паскале рассматривается как переменная типа <strong class='tag-b'>boolean</strong>.<br>Этот тип может иметь только два значения -<strong class='tag-b'>True</strong> или <strong class='tag-b'>False</strong>.<br>В первом случае условие - правда, а во втором случае - неправда.<br>Вот пример:<br>Если мы напишем <strong class='tag-b'>(100&lt;500)</strong> - то это правда. И следовательно паскаль воспримет всё это выражение как переменную типа boolean, равную <strong class='tag-b'>true</strong>.<br>Если мы теперь напишем <strong class='tag-b'>if (100&lt;500)=true then &lt;Чёнить&gt;</strong>, то наше условие выполнится, и выполнится <strong class='tag-b'>&lt;чёнить&gt;</strong><br>А если написать <strong class='tag-b'>if (100&lt;500)=false then &lt;Чёнить&gt;</strong>, то мы получим расхождение, и условие не выполнится, и не выполнится наше <strong class='tag-b'>&lt;чёнить&gt;</strong>.<br>Теперь смотри дальше - внутренне в паскале тип <strong class='tag-b'>Boolean</strong> занимает один байт в памяти, и является по сути байтом, у которого 0 - это неправда (False в паскале) и 1 - это правда (True в паскале).<br>В паскале есть такое хорошее свойство - приведение типов, при помощи него можно узнать, чему равен байт переменной типа <strong class='tag-b'>Boolean</strong>, если взять эту переменную в скобки и перед ней написать <strong class='tag-b'>byte</strong>.<br>byte(1&lt;10) будет равен 1 так как 1 действительно меньше 10 и значит наш <strong class='tag-b'>Boolean=True</strong> и в его байте содержится 1.<br>byte(1&gt;10) будет равен 0 так как 1&gt;10 это неправда и значит наш <strong class='tag-b'>Boolean=False</strong>и в его байте содержится 0.<br>Если написать <strong class='tag-b'>write(byte(100&lt;500))</strong> на экран выведется &quot;1&quot;.<br>Всё это удобно для использования условий прямо в операторах присваивания.<br>Ведь если умножать на &quot;0&quot; то получится &quot;0&quot;, а если умножать на &quot;1&quot; то получится то число, которое мы на &quot;1&quot; умножали :)))<br>Смотри, тебе написали: <strong class='tag-b'>result:=result1*byte(result1&lt;result2)+result2*byte(result2&lt;=result1); </strong><br>Если <strong class='tag-b'>result1&lt;result2</strong> это правда, то первый <strong class='tag-b'>byte</strong> будет равен 1, а второй 0, и тогда <strong class='tag-b'>result1</strong> будет умножен на 1, а <strong class='tag-b'>result2</strong> на 0, в результате чего он сократится, и <strong class='tag-b'>result</strong> будет равен <strong class='tag-b'>result1</strong>.<br>Если же <strong class='tag-b'>result1&lt;result2</strong> это неправда, то первый <strong class='tag-b'>byte</strong> будет равен 0, а второй 1, и тогда <strong class='tag-b'>result1</strong> будет умножен на 0 и сократится, а <strong class='tag-b'>result2</strong> на 1 и <strong class='tag-b'>result</strong> будет равен <strong class='tag-b'>result2</strong>.<br>Таким образом вся эта запись является аналогом такой:<br><strong class='tag-b'>If (result1&lt;result2)=true then result:=result1 else result:=result2;</strong>]]></description>
        <author>Some1</author>
        <category>Pascal</category>
      </item>
	
      <item>
        <guid isPermaLink='true'>https://forum.sources.ru/index.php?showtopic=14936&amp;view=findpost&amp;p=125467</guid>
        <pubDate>Wed, 15 Jan 2003 04:20:24 +0000</pubDate>
        <title>Время и положение стрелок часов</title>
        <link>https://forum.sources.ru/index.php?showtopic=14936&amp;view=findpost&amp;p=125467</link>
        <description><![CDATA[Булат Шакиров: Byte -тип такой - целые числа от 0 до 255 - занимает 1 байт. А в данном случае используется приведение типа boolean к этому типу.]]></description>
        <author>Булат Шакиров</author>
        <category>Pascal</category>
      </item>
	
      <item>
        <guid isPermaLink='true'>https://forum.sources.ru/index.php?showtopic=14936&amp;view=findpost&amp;p=125466</guid>
        <pubDate>Tue, 14 Jan 2003 21:56:33 +0000</pubDate>
        <title>Время и положение стрелок часов</title>
        <link>https://forum.sources.ru/index.php?showtopic=14936&amp;view=findpost&amp;p=125466</link>
        <description><![CDATA[.exe: Ну вы мужики понаписали!<br>Что за байты у вас в выражениях? Ничего не понимаю!<br>Объясните поподробнее что это за byte такой и с чем его едят!]]></description>
        <author>.exe</author>
        <category>Pascal</category>
      </item>
	
      <item>
        <guid isPermaLink='true'>https://forum.sources.ru/index.php?showtopic=14936&amp;view=findpost&amp;p=125465</guid>
        <pubDate>Tue, 14 Jan 2003 00:56:11 +0000</pubDate>
        <title>Время и положение стрелок часов</title>
        <link>https://forum.sources.ru/index.php?showtopic=14936&amp;view=findpost&amp;p=125465</link>
        <description><![CDATA[Some1: Не, я так тоже делать умею, тока я не думаю, что у него препод такой зверь :)))<br>Я как то своему в универе так &quot;оптимизировал прогу&quot; в 10 местах, он меня послал подальше с моими оптимизациями :)))) Пришлось переделывать.<br>ИМХО - Должен быть другой способ, возможно я где-то ошибся или выбрал не тот метод :)))))]]></description>
        <author>Some1</author>
        <category>Pascal</category>
      </item>
	
      <item>
        <guid isPermaLink='true'>https://forum.sources.ru/index.php?showtopic=14936&amp;view=findpost&amp;p=125464</guid>
        <pubDate>Mon, 13 Jan 2003 21:01:50 +0000</pubDate>
        <title>Время и положение стрелок часов</title>
        <link>https://forum.sources.ru/index.php?showtopic=14936&amp;view=findpost&amp;p=125464</link>
        <description><![CDATA[albom: А вот вариант как сделать задачку #2 без оперетора условия.<br>
Вникать, что там Some1 написал не охота, поэтому получаем код, на основе его рассуждений.<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">var result1,result2,result,m,h:longint;</div><div class="code_line">begin</div><div class="code_line">readln(h,m);</div><div class="code_line">result1:=(180+H*60)/11-M; {а может быть и так: result1:=abs((180+H*60)/11-M)};</div><div class="code_line">result2:=DeltaM=(H*60-180)/11-M; {аналогично}</div><div class="code_line">result:=result1*byte(result1&#60;result2)+result2*byte(result2&#60;=result1);</div><div class="code_line">writeln(result); </div><div class="code_line">end.</div></ol></div></div></div></div><br>
Т.е. выражение byte(100&lt;200) равно единице, а выражение byte(5&lt;&gt;5) равно нулю. Это и позволяет найти минимальное значение.]]></description>
        <author>albom</author>
        <category>Pascal</category>
      </item>
	
      <item>
        <guid isPermaLink='true'>https://forum.sources.ru/index.php?showtopic=14936&amp;view=findpost&amp;p=125463</guid>
        <pubDate>Sun, 12 Jan 2003 08:31:38 +0000</pubDate>
        <title>Время и положение стрелок часов</title>
        <link>https://forum.sources.ru/index.php?showtopic=14936&amp;view=findpost&amp;p=125463</link>
        <description><![CDATA[Some1: Теория такова:<br>Представь себе циферблат с двумя стрелками.<br>У каждой стрелки есть свой угол, в отношении с начальным положением (там где цифра 12).<br>12    1<br>&#124;--/  <br>&#124;  /      2<br>&#124; /<br>&#124;/<br>o<br><br>И каждая стрелка с каждым тиком изменяют этот угол по разному:<br>к примеру минутная стрелка изменяет угол с каждым движением на 360/60 градусов, а часовая на 360/12 градусов.<br>В то-же время есть взаимоотношение, что каждый тик часовой стрелки, это 60 тиков минутной, тоесть в каждые 360/12 градусов часовой стрелки входит 360 градусов минутной (полный оборот или 60 тиков). Следовательно с каждым движением минутной стрелки на 360/60 градусов часовая стрелка делает движение на (360/12)/60 градусов.<br>Посчитав всё это можно определить, что часовая стрелка изменяет своё положение на пол градуса в каждый тик минутной стрелки (за одну минуту).<br><br><span class="tag-color tag-color-named" data-value="green" style="color: green"><strong class='tag-b'>Рассмотрим теперь твою первую задачу:</strong></span><br>Пусть у нас даны исходный час - <strong class='tag-b'>H</strong> и исходные минуты - <strong class='tag-b'>M</strong>.<br>Найдём такое количество минут - <strong class='tag-b'>DeltaM</strong>, при добавлении которых исходному времени углы часовой и минутной стрелки совпали бы. Для этого составим следующее уравнение:<br>0.5*(H*60+M+DeltaM)=6*(M+DeltaM)<br>В этом уравнении нам неизвестна только искомая <strong class='tag-b'>DeltaM</strong>. С левой стороны уравнения выражен угол часовой стрелки, посчитанный из общего количества минут умноженных на изменение угла часовой стрелки за каждую минуту. С правой стороны уравнения выражен угол минутной стрелки, без учёта часов, так как минутная стрелка совпадёт с часовой хотябы один раз за час (тоесть меньше чем за час).<br>Теперь выразим из уравнения искомую <strong class='tag-b'>DeltaM</strong>:<br>Умножим обе стороны на <strong class='tag-b'>2</strong>:<br>H*60+M+DeltaM=12*M+12*DeltaM<br>Перенесём <strong class='tag-b'>DeltaM</strong> в левую сторону уравнения, а всё остальное в правую:<br>DeltaM-12*DeltaM=-H*60-M+12*M<br>-11*DeltaM=-H*60+11*M<br>Поменяем знаки уравнения:<br>11*DeltaM=H*60-11*M<br>Разделим обе части на <strong class='tag-b'>11</strong>:<br>DeltaM=(H*60-11*M)/11<br>DeltaM=H*60/11-M<br>DeltaM и будет разницей между заданным временем, и временем, когда часовая и минутная стрелки совпадут.<br><br><span class="tag-color tag-color-named" data-value="green" style="color: green"><strong class='tag-b'>Рассмотрим теперь твою вторую задачу:</strong></span><br>В этой задаче у нас углы часовой и минутной стрелки должны отличаться на 90 градусов в любую сторону (минутная левее, или правее).<br>Следовательно уравнение почти такое же, за исключением того, что надо учесть разницу в градусах в любую сторону:<br>abs(6*(M+DeltaM)-0.5*(H*60+M+DeltaM))=90<br>Здесь из угла минутной стрелки вычитается угол часовой, и разница по модулю должна быть равна 90 градусам.<br>Как и в прошлый раз, умножим обе стороны на <strong class='tag-b'>2</strong>:<br>abs(12*M+12*DeltaM-H*60-M-DeltaM)=180<br>abs(11*DeltaM+11*M-H*60)=180<br>Далее уравнение раскладывается на два пути:<br>11*DeltaM+11*M-H*60=180  и  11*DeltaM+11*M-H*60=-180<br>DeltaM=(180+H*60)/11-M  и  DeltaM=(H*60-180)/11-M<br>Получится так, что решения должны совпасть, но быть различными в знаках (По моему, но я могу и ошибаться).<br>Как эту задачу сделать без оператора условия я не знаю :)))]]></description>
        <author>Some1</author>
        <category>Pascal</category>
      </item>
	
      <item>
        <guid isPermaLink='true'>https://forum.sources.ru/index.php?showtopic=14936&amp;view=findpost&amp;p=125462</guid>
        <pubDate>Sat, 11 Jan 2003 21:56:17 +0000</pubDate>
        <title>Время и положение стрелок часов</title>
        <link>https://forum.sources.ru/index.php?showtopic=14936&amp;view=findpost&amp;p=125462</link>
        <description><![CDATA[.exe: Please,people!!!<br><br><br>Пусть даны целые числа h,m(часы,минуты),<br>0&lt;=h&lt;=11, 0&lt;=m&lt;=59, определяющие время суток. Опредилить<br>наименьшее время(число полных минут), к-е должно пройти<br>до того момента,когда часовая и минутная стрелки<br>на цферблате:<br>а)совпадут;<br>b)расположатся перпендикулярно друг другу;<br><br><br>                                           ВНИМАНИЕ!!!<br><br>!!!МОЖНО ИСПОЛЬЗОВАТЬ ТОЛЬКО ОПЕРАТОР ПРИСВАИВАНИЯ И ВВОДА/ВЫВОДА!!!]]></description>
        <author>.exe</author>
        <category>Pascal</category>
      </item>
	
      </channel>
      </rss>
	