<?xml version="1.0" encoding="koi8-r"?>
<rss version="0.91">
<channel>
    <title>OpenForum RSS: Задачки интересные. И для ума, и для самопроверки.</title>
    <link>https://opennet.ru/openforum/vsluhforumID9/6956.html</link>
    <description>Вообщем решили открыть такой топик. Будем задават друг другу интересные задачи и вместе искать решения.&lt;br&gt;&lt;br&gt;Ну вот например задача от angra &quot;Как узнать текущее время при помощи ls&quot;.&lt;br&gt;Хотя ответ на этот вопрос есть в моем предидущем топике...&lt;br&gt;Я эту задачу привел просто для примера.&lt;br&gt;&lt;br&gt;Спасибо надеюсь топик заинтересует многих....&lt;br&gt;</description>

<item>
    <title>Задачки интересные. И для ума, и для самопроверки. (Ray Dudu)</title>
    <link>https://opennet.ru/openforum/vsluhforumID9/6956.html#55</link>
    <pubDate>Wed, 05 Dec 2007 10:04:47 GMT</pubDate>
    <description>это был баг в ЖЦЦ.&lt;br&gt;This is a bug of gcc which was recently fixed.&lt;br&gt;http://www.nabble.com/-PATCH--Fix-PR34130,-extract_muldiv-broken-t4826688.html&lt;br&gt;http://gcc.gnu.org/viewcvs?view=rev&amp;revision=130258&lt;br&gt;&lt;br&gt;If you use -fno-builtin option, you can avoid this bug.&lt;br&gt;&lt;br&gt;задачку можно считать решенной, если так можно сказать.&lt;br&gt;</description>
</item>

<item>
    <title>Задачки интересные. И для ума, и для самопроверки. (tux2002)</title>
    <link>https://opennet.ru/openforum/vsluhforumID9/6956.html#54</link>
    <pubDate>Tue, 04 Dec 2007 11:36:41 GMT</pubDate>
    <description>Тьфу -10&lt;br&gt;&lt;br&gt;</description>
</item>

<item>
    <title>Задачки интересные. И для ума, и для самопроверки. (tux2002)</title>
    <link>https://opennet.ru/openforum/vsluhforumID9/6956.html#53</link>
    <pubDate>Tue, 04 Dec 2007 11:34:44 GMT</pubDate>
    <description>Интересно что -10*abs(1-i) = 10 :)&lt;br&gt;</description>
</item>

<item>
    <title>Задачки интересные. И для ума, и для самопроверки. (Андрей)</title>
    <link>https://opennet.ru/openforum/vsluhforumID9/6956.html#52</link>
    <pubDate>Tue, 04 Dec 2007 05:18:10 GMT</pubDate>
    <description>&amp;gt;Вопрос: почему так происходить в линуксе? &lt;br&gt;&lt;br&gt;Это не в линуксе так происходит, а в gcc.&lt;br&gt;&lt;br&gt;man abs - GCC handles abs() and labs() as builtin functions.&lt;br&gt;&lt;br&gt;видимо в gcc abs определена как unsigned int abs (int) и соответственно всё приводится к unsigned.&lt;br&gt;&lt;br&gt;$ uname -a&lt;br&gt;Linux trantor 2.6.22-gentoo-r8 #1 SMP PREEMPT Fri Sep 28 23:15:32 EDT 2007 i686 AMD Athlon(tm) 64 X2 Dual Core Processor 3800+ AuthenticAMD GNU/Linux&lt;br&gt;&lt;br&gt;$ gcc -Wall -fno-builtin  -o test test.c&lt;br&gt;$ ./test&lt;br&gt;nothing special here&lt;br&gt;&lt;br&gt;$ gcc -Wall -o test test.c&lt;br&gt;$ ./test&lt;br&gt;OMG,-10==10 in linux!&lt;br&gt;&lt;br&gt;&lt;br&gt;</description>
</item>

<item>
    <title>Задачки интересные. И для ума, и для самопроверки. (f00l)</title>
    <link>https://opennet.ru/openforum/vsluhforumID9/6956.html#51</link>
    <pubDate>Mon, 03 Dec 2007 13:35:53 GMT</pubDate>
    <description>&amp;gt;&amp;gt;&amp;gt;   if(-10 * abs(i - 1) == 10 * abs(i - 1))&#123; &lt;br&gt;&amp;gt;&lt;br&gt;&amp;gt;вот например: printf(&quot;&#037;d &#037;d &#037;d&#092;n&quot;, i++, i++, i++) - тут неорпределенность о &lt;br&gt;&amp;gt;которой вы говорили. а вышеприведенном выражении умножение константы на вызов ф-и, &lt;br&gt;&amp;gt;какая же тут неопределенность. &lt;br&gt;&amp;gt;&lt;br&gt;&amp;gt;З.Ы. причем результат не зависит ни от значения i ни от замены &lt;br&gt;&amp;gt;10и на любое другое число. &lt;br&gt;&lt;br&gt; Самое интересное вот что получается при компиляции &lt;br&gt; gcc -Wall -O -c inet.c&lt;br&gt;//inet.c&lt;br&gt;int main(void)&lt;br&gt;&#123;&lt;br&gt;  int i=2;&lt;br&gt;  int i0,i1;&lt;br&gt;  if( ((-10) * (abs(i - 1))) == (10 * (abs(i - 1))))&#123;&lt;br&gt;    printf(&quot;OMG,-10==10 in linux!&#092;n&quot;);&lt;br&gt;  &#125;&lt;br&gt;  else &#123;&lt;br&gt;    printf(&quot;nothing special here&#092;n&quot;);&lt;br&gt;  &#125;&lt;br&gt;  return 0;&lt;br&gt;&#125;&lt;br&gt; &lt;br&gt;// init.s &lt;br&gt;.file   &quot;inet.c&quot;&lt;br&gt;.section    .rodata.str1.1,&quot;aMS&quot;,&#064;progbits,1&lt;br&gt;.LC0:&lt;br&gt;.string &quot;OMG,-10==10 in linux!&quot;&lt;br&gt;.text&lt;br&gt;.globl main&lt;br&gt;.type   main, &#064;function&lt;br&gt;main:&lt;br&gt;     pushl   Кp&lt;br&gt;     movl    &#037;esp, Кp&lt;br&gt;     subl    $8, &#037;esp&lt;br&gt;     andl    $-16, &#037;esp&lt;br&gt;     subl    $28, &#037;esp&lt;br&gt;     pushl   $.LC0&lt;br&gt;     call    puts&lt;br&gt;     addl    $16, &#037;esp&lt;br&gt;     movl    $0, Йx&lt;br&gt;  </description>
</item>

<item>
    <title>Задачки интересные. И для ума, и для самопроверки. (Ray Dudu)</title>
    <link>https://opennet.ru/openforum/vsluhforumID9/6956.html#50</link>
    <pubDate>Mon, 03 Dec 2007 08:45:16 GMT</pubDate>
    <description>&amp;gt;&amp;gt;   if(-10 * abs(i - 1) == 10 * abs(i - 1))&#123; &lt;br&gt;&lt;br&gt;вот например: printf(&quot;&#037;d &#037;d &#037;d&#092;n&quot;, i++, i++, i++) - тут неорпределенность о которой вы говорили. а вышеприведенном выражении умножение константы на вызов ф-и, какая же тут неопределенность.&lt;br&gt;&lt;br&gt;З.Ы. причем результат не зависит ни от значения i ни от замены 10и на любое другое число.&lt;br&gt;</description>
</item>

<item>
    <title>Задачки интересные. И для ума, и для самопроверки. (f00l)</title>
    <link>https://opennet.ru/openforum/vsluhforumID9/6956.html#49</link>
    <pubDate>Fri, 30 Nov 2007 06:40:18 GMT</pubDate>
    <description>&amp;gt;   if(-10 * abs(i - 1) == 10 * abs(i - 1))&#123; &lt;br&gt;&amp;gt;Вопрос: почему так происходить в линуксе? &lt;br&gt;&lt;br&gt; В даном случаи есть понятие не определенность при компиляции. Разработчики могут на свое усмотрение вычислять в разной последовательности, даже в стандарте на компилятор указано что пока нет точки с запитой  значение переменных не определено и может быть любое и только  после точки с запитой выражение определено.&lt;br&gt;&lt;br&gt; Если четко определить последовательность то все работает правильно:&lt;br&gt; int i = 2;&lt;br&gt; int k,l;&lt;br&gt;&lt;br&gt; k = abs(i - 1);&lt;br&gt; k = -10 * k;&lt;br&gt; l =  abs(i - 1);&lt;br&gt; l = 10 * l;&lt;br&gt;&lt;br&gt;</description>
</item>

<item>
    <title>Задачки интересные. И для ума, и для самопроверки. (Ray Dudu)</title>
    <link>https://opennet.ru/openforum/vsluhforumID9/6956.html#48</link>
    <pubDate>Wed, 28 Nov 2007 14:42:53 GMT</pubDate>
    <description>#include &amp;lt;stdio.h&amp;gt;&lt;br&gt;#include &amp;lt;stdlib.h&amp;gt;&lt;br&gt;&lt;br&gt;int main(void)&#123;&lt;br&gt;   int i=2;&lt;br&gt;   if(-10 * abs(i - 1) == 10 * abs(i - 1))&#123;&lt;br&gt;       printf(&quot;OMG,-10==10 in linux!&#092;n&quot;);&lt;br&gt;   &#125; else &#123;&lt;br&gt;       printf(&quot;nothing special here&#092;n&quot;);&lt;br&gt;   &#125;&lt;br&gt;   return 0;&lt;br&gt;&#125;&lt;br&gt;&lt;br&gt;Вопрос: почему так происходить в линуксе?&lt;br&gt;</description>
</item>

<item>
    <title>Задачки интересные. И для ума, и для самопроверки. (Arpo)</title>
    <link>https://opennet.ru/openforum/vsluhforumID9/6956.html#47</link>
    <pubDate>Mon, 26 Nov 2007 09:46:17 GMT</pubDate>
    <description>&amp;gt;&#091;..&#093; &lt;br&gt;&amp;gt;&amp;gt;&amp;gt;Как все же удалить файлы, не трогая (вообще) директорию. &lt;br&gt;&amp;gt;&amp;gt;&amp;gt;Вариантов масса, попробуем найти лучший? &lt;br&gt;&amp;gt;&amp;gt;&lt;br&gt;&amp;gt;&amp;gt;можно что-та типа find . -type f &amp;#124;xargs rm или find . &lt;br&gt;&amp;gt;&amp;gt;-type f -exec rm &#123;&#125; &#092;; &lt;br&gt;&amp;gt;&lt;br&gt;&amp;gt;Можно короче: find . -type f -delete &lt;br&gt;&lt;br&gt;В Solaris-е не работает:(&lt;br&gt;</description>
</item>

</channel>
</rss>
