<?xml version="1.0" encoding="UTF-8"?><rss xmlns:dc="http://purl.org/dc/elements/1.1/" xmlns:content="http://purl.org/rss/1.0/modules/content/" xmlns:atom="http://www.w3.org/2005/Atom" version="2.0"><channel><title><![CDATA[rechen operatoren]]></title><description><![CDATA[<p>Hi,</p>
<p>ich wollte wissen ob es nen rechen operator für wurzel ziehen und quadrieren gibt.<br />
Wenn nicht: gibt es irgentwo nen quelltext zu ner funktion fürs wurzel ziehen?</p>
<p>Mfg Yazoo</p>
]]></description><link>https://www.c-plusplus.net/forum/topic/200165/rechen-operatoren</link><generator>RSS for Node</generator><lastBuildDate>Sun, 04 Oct 2026 19:18:09 GMT</lastBuildDate><atom:link href="https://www.c-plusplus.net/forum/topic/200165.rss" rel="self" type="application/rss+xml"/><pubDate>Tue, 11 Dec 2007 13:48:22 GMT</pubDate><ttl>60</ttl><item><title><![CDATA[Reply to rechen operatoren on Tue, 11 Dec 2007 13:48:22 GMT]]></title><description><![CDATA[<p>Hi,</p>
<p>ich wollte wissen ob es nen rechen operator für wurzel ziehen und quadrieren gibt.<br />
Wenn nicht: gibt es irgentwo nen quelltext zu ner funktion fürs wurzel ziehen?</p>
<p>Mfg Yazoo</p>
]]></description><link>https://www.c-plusplus.net/forum/post/1418746</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1418746</guid><dc:creator><![CDATA[Yazoo]]></dc:creator><pubDate>Tue, 11 Dec 2007 13:48:22 GMT</pubDate></item><item><title><![CDATA[Reply to rechen operatoren on Tue, 11 Dec 2007 14:01:47 GMT]]></title><description><![CDATA[<p>Operatoren nein, aber Funktionen - Wurzel ziehen kannst du mit sqrt(), quadieren, indem du die Zahl mit sich selber multiplizierst.</p>
<p>(und für sonstige Potenzierungen gibt es noch pow() und exp())</p>
]]></description><link>https://www.c-plusplus.net/forum/post/1418760</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1418760</guid><dc:creator><![CDATA[CStoll]]></dc:creator><pubDate>Tue, 11 Dec 2007 14:01:47 GMT</pubDate></item><item><title><![CDATA[Reply to rechen operatoren on Tue, 11 Dec 2007 14:07:19 GMT]]></title><description><![CDATA[<p>liegen aber alle im Namensraum std und sind im Header &lt;cmath&gt;.</p>
]]></description><link>https://www.c-plusplus.net/forum/post/1418772</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1418772</guid><dc:creator><![CDATA[*D*Evil]]></dc:creator><pubDate>Tue, 11 Dec 2007 14:07:19 GMT</pubDate></item><item><title><![CDATA[Reply to rechen operatoren on Tue, 11 Dec 2007 16:22:42 GMT]]></title><description><![CDATA[<p>Yazoo schrieb:</p>
<blockquote>
<p>Wenn nicht: gibt es irgentwo nen quelltext zu ner funktion fürs wurzel ziehen?</p>
</blockquote>
<p>Auch wenn es das gibt, aber du eine performantere Wurzelfunktion als die sqrt() brauchst, für Positionsberechnungen von Pixeln etc., insb. bei Spielen, dann kannste ja die nehmen:</p>
<pre><code class="language-cpp">float Q_rsqrt( float number ){
    long i;
    float x2, y;
    const float threehalfs = 1.5F;

    x2 = number * 0.5F;
    y  = number;
    i  = * ( long * ) &amp;y;  // evil floating point bit level hacking
    i  = 0x5f3759df - ( i &gt;&gt; 1 ); // what the fuck?
    y  = * ( float * ) &amp;i;
    y  = y * ( threehalfs - ( x2 * y * y ) ); // 1st iteration
    // y  = y * ( threehalfs - ( x2 * y * y ) ); // 2nd iteration, this can be removed

    #ifndef Q3_VM
    #ifdef __linux__
      assert( !isnan(y) ); // bk010122 - FPE?
    #endif
    #endif
    return y;
}
</code></pre>
<p>Von John Carmack höchstpersönlich... Den Senf wollte ich noch unbedingt dazugeben. Quelle: <a href="http://fr.wikipedia.org/wiki/John_Carmack" rel="nofollow">http://fr.wikipedia.org/wiki/John_Carmack</a> (Nein, bin kein Franzose und verstehe sie auch nicht).</p>
]]></description><link>https://www.c-plusplus.net/forum/post/1418875</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1418875</guid><dc:creator><![CDATA[mikey]]></dc:creator><pubDate>Tue, 11 Dec 2007 16:22:42 GMT</pubDate></item><item><title><![CDATA[Reply to rechen operatoren on Tue, 11 Dec 2007 19:16:13 GMT]]></title><description><![CDATA[<p>mikey schrieb:</p>
<blockquote>
<pre><code class="language-cpp">i  = 0x5f3759df - ( i &gt;&gt; 1 ); // what the love?
</code></pre>
</blockquote>
<p>Laut Artikel ist die Konstante 0x5f375a86 besser. Das verwendete Verfahren basiert übrigens auf auf dem Newton-Verfahren, wobei die initiale Konstante so gut gewählt wurde, dass man auf die Iteration komplett verzichten kann, und trotzdem eine enorm große Genauigkeit erhält.</p>
]]></description><link>https://www.c-plusplus.net/forum/post/1418995</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1418995</guid><dc:creator><![CDATA[Konrad Rudolph]]></dc:creator><pubDate>Tue, 11 Dec 2007 19:16:13 GMT</pubDate></item><item><title><![CDATA[Reply to rechen operatoren on Tue, 11 Dec 2007 19:22:02 GMT]]></title><description><![CDATA[<p>Jo, hab's mir durchgelesen (Übersetzung von Google). Das genau Prinzip verstehe ich aber trotzdem nicht, liegt vielleicht an den mangelnden Mathekenntnissen. Aber die Kommentare sind lustig. <img
      src="https://www.c-plusplus.net/forum/plugins/nodebb-plugin-emoji/emoji/emoji-one/1f921.png?v=ab1pehoraso"
      class="not-responsive emoji emoji-emoji-one emoji--clown_face"
      title=":clown:"
      alt="🤡"
    /></p>
]]></description><link>https://www.c-plusplus.net/forum/post/1419000</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1419000</guid><dc:creator><![CDATA[mikey]]></dc:creator><pubDate>Tue, 11 Dec 2007 19:22:02 GMT</pubDate></item><item><title><![CDATA[Reply to rechen operatoren on Wed, 12 Dec 2007 06:34:14 GMT]]></title><description><![CDATA[<p>ich habs net hinbekommen die sqrt() zu benutzen der Borland compiler sagt mir undefinierte funktion</p>
<pre><code>b = sqrt(a);
</code></pre>
<p>oder hab ich die falsch benutzt???</p>
<p>und diese andere funktion Q_sqrt() funzt au net wenn ich ne wurzel aus 9 will was leicht is sagt er mir 0.332953</p>
]]></description><link>https://www.c-plusplus.net/forum/post/1419119</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1419119</guid><dc:creator><![CDATA[Yazoo]]></dc:creator><pubDate>Wed, 12 Dec 2007 06:34:14 GMT</pubDate></item><item><title><![CDATA[Reply to rechen operatoren on Wed, 12 Dec 2007 06:35:22 GMT]]></title><description><![CDATA[<p>Um die Funktion nutzen zu können, mußt du (a) den entsprechenden Header includen (in dem Fall &lt;cmath&gt;) und (b) die Mathe-Library an den Linker übergeben. (btw, kommt eigentlich eine Compiler- (unbekannter Name) oder Linker-Meldung (undefined reference)?)</p>
]]></description><link>https://www.c-plusplus.net/forum/post/1419120</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1419120</guid><dc:creator><![CDATA[CStoll]]></dc:creator><pubDate>Wed, 12 Dec 2007 06:35:22 GMT</pubDate></item><item><title><![CDATA[Reply to rechen operatoren on Wed, 12 Dec 2007 06:43:40 GMT]]></title><description><![CDATA[<p>&lt;cmath&gt; habe ich included und die einzige meldung ist:<br />
&quot;Ogame Calc.cpp&quot;: E2268 Aufruf der undefinierten Funktion 'sqrt' in Funktion main() in Zeile 27</p>
]]></description><link>https://www.c-plusplus.net/forum/post/1419123</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1419123</guid><dc:creator><![CDATA[Yazoo]]></dc:creator><pubDate>Wed, 12 Dec 2007 06:43:40 GMT</pubDate></item><item><title><![CDATA[Reply to rechen operatoren on Wed, 12 Dec 2007 06:47:44 GMT]]></title><description><![CDATA[<p>(D)Evil schrieb:</p>
<blockquote>
<p><strong>liegen aber alle im Namensraum std</strong> und sind im Header &lt;cmath&gt;.</p>
</blockquote>
<p>-&gt; es heißt 'std::sqrt()', solange du nicht den kompletten Namensraum importierst.</p>
]]></description><link>https://www.c-plusplus.net/forum/post/1419126</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1419126</guid><dc:creator><![CDATA[CStoll]]></dc:creator><pubDate>Wed, 12 Dec 2007 06:47:44 GMT</pubDate></item><item><title><![CDATA[Reply to rechen operatoren on Wed, 12 Dec 2007 06:51:59 GMT]]></title><description><![CDATA[<p>jetzt sagt er mir:<br />
&quot;Ogame Calc.cpp&quot;: E2015 Mehrdeutigkeit zwischen 'std::sqrt(double)' und 'std::sqrt(long double)' in Funktion main() in Zeile 27</p>
]]></description><link>https://www.c-plusplus.net/forum/post/1419127</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1419127</guid><dc:creator><![CDATA[Yazoo]]></dc:creator><pubDate>Wed, 12 Dec 2007 06:51:59 GMT</pubDate></item><item><title><![CDATA[Reply to rechen operatoren on Wed, 12 Dec 2007 06:53:37 GMT]]></title><description><![CDATA[<p>wenn ich sqrtl() nehme klapts</p>
]]></description><link>https://www.c-plusplus.net/forum/post/1419128</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1419128</guid><dc:creator><![CDATA[Yazoo]]></dc:creator><pubDate>Wed, 12 Dec 2007 06:53:37 GMT</pubDate></item><item><title><![CDATA[Reply to rechen operatoren on Wed, 12 Dec 2007 06:58:13 GMT]]></title><description><![CDATA[<p>Yazoo schrieb:</p>
<blockquote>
<p>jetzt sagt er mir:<br />
&quot;Ogame Calc.cpp&quot;: E2015 Mehrdeutigkeit zwischen 'std::sqrt(double)' und 'std::sqrt(long double)' in Funktion main() in Zeile 27</p>
</blockquote>
<p>Was für einen Typ haben denn die beiden Variablen a und b? Wenn das int's sind, ist die Umwandlung nach double und long double gleich gut.</p>
]]></description><link>https://www.c-plusplus.net/forum/post/1419132</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1419132</guid><dc:creator><![CDATA[CStoll]]></dc:creator><pubDate>Wed, 12 Dec 2007 06:58:13 GMT</pubDate></item><item><title><![CDATA[Reply to rechen operatoren on Wed, 12 Dec 2007 07:01:37 GMT]]></title><description><![CDATA[<p>das waren floats</p>
]]></description><link>https://www.c-plusplus.net/forum/post/1419133</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1419133</guid><dc:creator><![CDATA[Yazoo]]></dc:creator><pubDate>Wed, 12 Dec 2007 07:01:37 GMT</pubDate></item><item><title><![CDATA[Reply to rechen operatoren on Wed, 12 Dec 2007 07:54:10 GMT]]></title><description><![CDATA[<p>Du kannst deine floats in double casten um die Mehrdeutigkeit aufzulösen.</p>
<pre><code class="language-cpp">float a(2.3);
float res = std::sqrt(double(a));
</code></pre>
]]></description><link>https://www.c-plusplus.net/forum/post/1419158</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1419158</guid><dc:creator><![CDATA[Braunstein]]></dc:creator><pubDate>Wed, 12 Dec 2007 07:54:10 GMT</pubDate></item><item><title><![CDATA[Reply to rechen operatoren on Wed, 12 Dec 2007 09:36:11 GMT]]></title><description><![CDATA[<p>Yazoo schrieb:</p>
<blockquote>
<p>und diese andere funktion Q_sqrt() funzt au net wenn ich ne wurzel aus 9 will was leicht is sagt er mir 0.332953</p>
</blockquote>
<p>Jo, die Funktion heißt ja auch Q_<strong>r</strong>sqrt(), und berechnet den Kehrwert der Quadratwurzel. Vor lauter Staunen über den genialen Code scheint dieses kleine, unwesentliche Detail ganz gerne übersehen zu werden <img
      src="https://www.c-plusplus.net/forum/plugins/nodebb-plugin-emoji/emoji/emoji-one/1f609.png?v=ab1pehoraso"
      class="not-responsive emoji emoji-emoji-one emoji--winking_face"
      title=";)"
      alt="😉"
    /></p>
]]></description><link>https://www.c-plusplus.net/forum/post/1419199</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1419199</guid><dc:creator><![CDATA[dooooomi]]></dc:creator><pubDate>Wed, 12 Dec 2007 09:36:11 GMT</pubDate></item><item><title><![CDATA[Reply to rechen operatoren on Wed, 12 Dec 2007 10:31:24 GMT]]></title><description><![CDATA[<p>Interessant ist aber auch, dass mittlerweile (zumindest bei mir) ein direkter sqrt() schneller ist, als die Tweaklösung von J. Carmack. Inwieweit mein Ergebnis transparent ist, weiss ich nicht zu sagen. Ich habe einen Benchmarktest in PureBasic (<a href="http://www.purebasic-lounge.de" rel="nofollow">www.purebasic-lounge.de</a> / <a href="http://www.purebasic.com" rel="nofollow">www.purebasic.com</a>) laufen lassen. Dort war die native Wurzelberechnung doppelt so schnell.</p>
<p>Trotz allem, Carmack rockt!</p>
]]></description><link>https://www.c-plusplus.net/forum/post/1419236</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1419236</guid><dc:creator><![CDATA[Hellhound66]]></dc:creator><pubDate>Wed, 12 Dec 2007 10:31:24 GMT</pubDate></item><item><title><![CDATA[Reply to rechen operatoren on Wed, 12 Dec 2007 13:22:27 GMT]]></title><description><![CDATA[<pre><code class="language-cpp">float a(2.3);
float res = std::sqrt(double(a));
</code></pre>
<p>1. function-style-cast ^^ (ok so nennt es der vc++)<br />
2. <a href="http://www.cplusplus.com/reference/clibrary/cmath/sqrt.html" rel="nofollow">http://www.cplusplus.com/reference/clibrary/cmath/sqrt.html</a></p>
<p>=&gt;</p>
<pre><code class="language-cpp">#include &lt;cmath&gt;

const float x(2.3f);
float sqrt_x(std::sqrt(x));
</code></pre>
]]></description><link>https://www.c-plusplus.net/forum/post/1419335</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1419335</guid><dc:creator><![CDATA[*D*Evil]]></dc:creator><pubDate>Wed, 12 Dec 2007 13:22:27 GMT</pubDate></item><item><title><![CDATA[Reply to rechen operatoren on Wed, 12 Dec 2007 16:12:40 GMT]]></title><description><![CDATA[<p>Was soll uns das jetzt sagen? <img
      src="https://www.c-plusplus.net/forum/plugins/nodebb-plugin-emoji/emoji/emoji-one/1f642.png?v=ab1pehoraso"
      class="not-responsive emoji emoji-emoji-one emoji--slightly_smiling_face"
      title=":)"
      alt="🙂"
    /><br />
Klar, laut Standard sollte es eine float Variante von sqrt geben (26.5 6). Sein Compiler scheint diese Variante aber nicht zu kennen (mein BCB5 und 6 auch nicht) sondern nur eine double und eine long double Variante und dann muß halt gecastet werden. Ob man jetzt nun einen Function-style-cast oder static_cast nimmt ist hier Geschmacksache.</p>
]]></description><link>https://www.c-plusplus.net/forum/post/1419487</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1419487</guid><dc:creator><![CDATA[Braunstein]]></dc:creator><pubDate>Wed, 12 Dec 2007 16:12:40 GMT</pubDate></item><item><title><![CDATA[Reply to rechen operatoren on Wed, 12 Dec 2007 16:29:09 GMT]]></title><description><![CDATA[<p>CStoll schrieb:</p>
<blockquote>
<p>...quadieren, indem du die Zahl mit sich selber multiplizierst.</p>
<p>(und für sonstige Potenzierungen gibt es noch pow() und exp())</p>
</blockquote>
<p>was machen pow() und exp()?</p>
]]></description><link>https://www.c-plusplus.net/forum/post/1419502</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1419502</guid><dc:creator><![CDATA[Yazoo]]></dc:creator><pubDate>Wed, 12 Dec 2007 16:29:09 GMT</pubDate></item><item><title><![CDATA[Reply to rechen operatoren on Wed, 12 Dec 2007 16:43:22 GMT]]></title><description><![CDATA[<p>pow<a href="http://www.cplusplus.com/reference/clibrary/cmath/pow.html" rel="nofollow">http://www.cplusplus.com/reference/clibrary/cmath/pow.html</a><br />
exp<a href="http://www.cplusplus.com/reference/clibrary/cmath/exp.html" rel="nofollow">http://www.cplusplus.com/reference/clibrary/cmath/exp.html</a></p>
]]></description><link>https://www.c-plusplus.net/forum/post/1419507</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1419507</guid><dc:creator><![CDATA[Braunstein]]></dc:creator><pubDate>Wed, 12 Dec 2007 16:43:22 GMT</pubDate></item><item><title><![CDATA[Reply to rechen operatoren on Wed, 12 Dec 2007 18:28:12 GMT]]></title><description><![CDATA[<p><a class="plugin-mentions-user plugin-mentions-a" href="https://www.c-plusplus.net/forum/uid/16154">@Yazoo</a>: Hmm pow(er) und exp(onential) ... jetzt mal <a href="http://www.leo.org" rel="nofollow">www.leo.org</a> befragen, was das wohl heißt.<br />
<a class="plugin-mentions-user plugin-mentions-a" href="https://www.c-plusplus.net/forum/uid/1387">@Braunstein</a>: Hmm</p>
<blockquote>
<p>Was soll uns das jetzt sagen? <img
      src="https://www.c-plusplus.net/forum/plugins/nodebb-plugin-emoji/emoji/emoji-one/1f642.png?v=ab1pehoraso"
      class="not-responsive emoji emoji-emoji-one emoji--slightly_smiling_face"
      title=":)"
      alt="🙂"
    /></p>
</blockquote>
<p>Compiler wechseln ^^</p>
]]></description><link>https://www.c-plusplus.net/forum/post/1419557</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1419557</guid><dc:creator><![CDATA[*D*Evil]]></dc:creator><pubDate>Wed, 12 Dec 2007 18:28:12 GMT</pubDate></item><item><title><![CDATA[Reply to rechen operatoren on Thu, 13 Dec 2007 06:37:46 GMT]]></title><description><![CDATA[<p>Yazoo schrieb:</p>
<blockquote>
<p>was machen pow() und exp()?</p>
</blockquote>
<p>Kurzfassung: pow(x,y)=x<sup>y</sup> und exp(x)=e<sup>x</sup>.</p>
]]></description><link>https://www.c-plusplus.net/forum/post/1419737</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1419737</guid><dc:creator><![CDATA[CStoll]]></dc:creator><pubDate>Thu, 13 Dec 2007 06:37:46 GMT</pubDate></item></channel></rss>