<?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[Rechenzeit verkürzen]]></title><description><![CDATA[<p>Hallo, das Programm läuft richtig, außer das es manchmal nicht, wie vorgesehen, endet. Es berechnet die Trigonalzahlen, und kuckt mit der For-Schleife bei jeder nach, ob sie auch Quadratzahl ist.</p>
<p>Ich möchte nun die Rechenzeit verkürzen, weil in der For-Schleife ja eigentlich nicht jedesmal bei 1 von neuem angefangen werden muss. Es würde reichen bei &quot;zähler/2&quot; aber da bekommt man krumme Werte. Wie kann ich machen, daß von dem Krummen Wert nur der Vorkommateil in der Variablen steht?</p>
<pre><code>#include &lt;iostream&gt;
using namespace std;
int main (int argc, char * const argv[])
{
	long long zaehler = 0;
	long long trigonal = 0;
	printf(&quot;Das Pr. sucht die Zahlen heraus, welche zugleich Quadratzahlen und Trigonalzahlen sind. \n&quot;);
	while (zaehler &lt; 1000000)
	{
trigonal = trigonal+zaehler;
for (long long i=1, x = 1; x*x &lt;= trigonal; i += ++x)  		// Der Erhöher muss dynamisch werden
	if (trigonal== x*x)
		cout &lt;&lt; &quot;Zaehler=\t &quot; &lt;&lt; zaehler  &lt;&lt;&quot;\t&quot; &lt;&lt;&quot; Sum= \t &quot; &lt;&lt; trigonal  &lt;&lt; &quot;\tt&quot; &lt;&lt; &quot; xq = \t &quot; &lt;&lt; x*x &lt;&lt;  &quot;\t&quot; &lt;&lt; &quot;Sqrt = \t &quot; &lt;&lt; x &lt;&lt;    endl;

		zaehler++;		
	}
	printf(&quot;Das programm endet mit Zähler %d\n&quot;, zaehler);
	return 0;
}
</code></pre>
]]></description><link>https://www.c-plusplus.net/forum/topic/220878/rechenzeit-verkürzen</link><generator>RSS for Node</generator><lastBuildDate>Tue, 06 Oct 2026 16:58:20 GMT</lastBuildDate><atom:link href="https://www.c-plusplus.net/forum/topic/220878.rss" rel="self" type="application/rss+xml"/><pubDate>Fri, 22 Aug 2008 09:52:12 GMT</pubDate><ttl>60</ttl><item><title><![CDATA[Reply to Rechenzeit verkürzen on Fri, 22 Aug 2008 10:03:52 GMT]]></title><description><![CDATA[<p>Hallo, das Programm läuft richtig, außer das es manchmal nicht, wie vorgesehen, endet. Es berechnet die Trigonalzahlen, und kuckt mit der For-Schleife bei jeder nach, ob sie auch Quadratzahl ist.</p>
<p>Ich möchte nun die Rechenzeit verkürzen, weil in der For-Schleife ja eigentlich nicht jedesmal bei 1 von neuem angefangen werden muss. Es würde reichen bei &quot;zähler/2&quot; aber da bekommt man krumme Werte. Wie kann ich machen, daß von dem Krummen Wert nur der Vorkommateil in der Variablen steht?</p>
<pre><code>#include &lt;iostream&gt;
using namespace std;
int main (int argc, char * const argv[])
{
	long long zaehler = 0;
	long long trigonal = 0;
	printf(&quot;Das Pr. sucht die Zahlen heraus, welche zugleich Quadratzahlen und Trigonalzahlen sind. \n&quot;);
	while (zaehler &lt; 1000000)
	{
trigonal = trigonal+zaehler;
for (long long i=1, x = 1; x*x &lt;= trigonal; i += ++x)  		// Der Erhöher muss dynamisch werden
	if (trigonal== x*x)
		cout &lt;&lt; &quot;Zaehler=\t &quot; &lt;&lt; zaehler  &lt;&lt;&quot;\t&quot; &lt;&lt;&quot; Sum= \t &quot; &lt;&lt; trigonal  &lt;&lt; &quot;\tt&quot; &lt;&lt; &quot; xq = \t &quot; &lt;&lt; x*x &lt;&lt;  &quot;\t&quot; &lt;&lt; &quot;Sqrt = \t &quot; &lt;&lt; x &lt;&lt;    endl;

		zaehler++;		
	}
	printf(&quot;Das programm endet mit Zähler %d\n&quot;, zaehler);
	return 0;
}
</code></pre>
]]></description><link>https://www.c-plusplus.net/forum/post/1569491</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1569491</guid><dc:creator><![CDATA[brak]]></dc:creator><pubDate>Fri, 22 Aug 2008 10:03:52 GMT</pubDate></item><item><title><![CDATA[Reply to Rechenzeit verkürzen on Fri, 22 Aug 2008 10:12:23 GMT]]></title><description><![CDATA[<p>&quot;Krumme Werte&quot; bekommst du in einen long long sowieso nicht rein.</p>
]]></description><link>https://www.c-plusplus.net/forum/post/1569503</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1569503</guid><dc:creator><![CDATA[MFK]]></dc:creator><pubDate>Fri, 22 Aug 2008 10:12:23 GMT</pubDate></item><item><title><![CDATA[Reply to Rechenzeit verkürzen on Fri, 22 Aug 2008 10:25:47 GMT]]></title><description><![CDATA[<p>Hallo,</p>
<p>benutze eine der Fkt. aus math.h:</p>
<p>floor, ceil, oder modf</p>
<p>Gruß,</p>
<p>Andreas</p>
]]></description><link>https://www.c-plusplus.net/forum/post/1569512</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1569512</guid><dc:creator><![CDATA[AndreasBoch]]></dc:creator><pubDate>Fri, 22 Aug 2008 10:25:47 GMT</pubDate></item><item><title><![CDATA[Reply to Rechenzeit verkürzen on Fri, 22 Aug 2008 10:26:38 GMT]]></title><description><![CDATA[<p>Hallo,</p>
<p>benutze eine der Fkt. aus math.h:</p>
<p>floor, ceil, oder modf</p>
<p>Gruß,</p>
<p>Andreas</p>
]]></description><link>https://www.c-plusplus.net/forum/post/1569514</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1569514</guid><dc:creator><![CDATA[AndreasBoch]]></dc:creator><pubDate>Fri, 22 Aug 2008 10:26:38 GMT</pubDate></item><item><title><![CDATA[Reply to Rechenzeit verkürzen on Fri, 22 Aug 2008 10:38:07 GMT]]></title><description><![CDATA[<p>AndreasBoch schrieb:</p>
<blockquote>
<p>Hallo,</p>
<p>benutze eine der Fkt. aus math.h:</p>
<p>floor, ceil, oder modf</p>
<p>Gruß,</p>
<p>Andreas</p>
</blockquote>
<p>Braucht er doch gar nicht. zähler ist ein long long und zähler/2 ergibt sowieso eine Ganzzahl.</p>
]]></description><link>https://www.c-plusplus.net/forum/post/1569521</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1569521</guid><dc:creator><![CDATA[_matze]]></dc:creator><pubDate>Fri, 22 Aug 2008 10:38:07 GMT</pubDate></item><item><title><![CDATA[Reply to Rechenzeit verkürzen on Fri, 22 Aug 2008 10:45:56 GMT]]></title><description><![CDATA[<p>@TE<br />
Benutz doch einmal cpp-Tags.</p>
]]></description><link>https://www.c-plusplus.net/forum/post/1569525</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1569525</guid><dc:creator><![CDATA[Fellhuhn]]></dc:creator><pubDate>Fri, 22 Aug 2008 10:45:56 GMT</pubDate></item><item><title><![CDATA[Reply to Rechenzeit verkürzen on Fri, 22 Aug 2008 10:53:15 GMT]]></title><description><![CDATA[<p>Fellhuhn schrieb:</p>
<blockquote>
<p>@TE<br />
Benutz doch einmal cpp-Tags.</p>
</blockquote>
<p><img
      src="https://www.c-plusplus.net/forum/plugins/nodebb-plugin-emoji/emoji/emoji-one/1f615.png?v=ab1pehoraso"
      class="not-responsive emoji emoji-emoji-one emoji--confused_face"
      title=":confused:"
      alt="😕"
    /></p>
<p>Hat er doch, oder?</p>
]]></description><link>https://www.c-plusplus.net/forum/post/1569529</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1569529</guid><dc:creator><![CDATA[_matze]]></dc:creator><pubDate>Fri, 22 Aug 2008 10:53:15 GMT</pubDate></item><item><title><![CDATA[Reply to Rechenzeit verkürzen on Fri, 22 Aug 2008 11:10:49 GMT]]></title><description><![CDATA[<p>Also mit zaehler/2 geht es wirklich schneller und auch korrekt, was ich nicht dachte. Kann man noch beschleunigen? Es läuft ungefähr 10 Minuten.</p>
<p>Unterschied: Er schreib zum Anfang eine Null-Zeile:</p>
<p>Das Pr. sucht die Zahlen heraus, welche zugleich Quadratzahlen und Trigonalzahlen sind.<br />
Zaehler= 0 Sum= 0 t xq = 0 Sqrt = 0<br />
Zaehler= 1 Sum= 1 t xq = 1 Sqrt = 1<br />
Zaehler= 8 Sum= 36 t xq = 36 Sqrt = 6<br />
Zaehler= 49 Sum= 1225 t xq = 1225 Sqrt = 35<br />
Zaehler= 288 Sum= 41616 t xq = 41616 Sqrt = 204<br />
Zaehler= 1681 Sum= 1413721 t xq = 1413721 Sqrt = 1189<br />
Zaehler= 9800 Sum= 48024900 t xq = 48024900 Sqrt = 6930<br />
Zaehler= 57121 Sum= 1631432881 t xq = 1631432881 Sqrt = 40391<br />
Zaehler= 332928 Sum= 55420693056 t xq = 55420693056 Sqrt = 235416<br />
Das programm endet mit Zähler 1000000</p>
]]></description><link>https://www.c-plusplus.net/forum/post/1569536</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1569536</guid><dc:creator><![CDATA[brak]]></dc:creator><pubDate>Fri, 22 Aug 2008 11:10:49 GMT</pubDate></item><item><title><![CDATA[Reply to Rechenzeit verkürzen on Fri, 22 Aug 2008 11:13:33 GMT]]></title><description><![CDATA[<p><a href="http://msdn.microsoft.com/de-de/library/26td21ds.aspx" rel="nofollow">http://msdn.microsoft.com/de-de/library/26td21ds.aspx</a></p>
]]></description><link>https://www.c-plusplus.net/forum/post/1569540</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1569540</guid><dc:creator><![CDATA[_matze]]></dc:creator><pubDate>Fri, 22 Aug 2008 11:13:33 GMT</pubDate></item><item><title><![CDATA[Reply to Rechenzeit verkürzen on Fri, 22 Aug 2008 11:45:01 GMT]]></title><description><![CDATA[<pre><code class="language-cpp">#include &lt;vector&gt;
#include &lt;algorithm&gt;
#include &lt;iostream&gt;
using namespace std;

int main()
{
    const int max = 1000000;
    vector&lt;long long&gt; q( max ), d( max );
    q[0] = d[0] = 1;
    for( long long i = 1; i &lt; max; ++i )
    {
        q[i] = q[i-1] + 2 * i + 1;
        d[i] = d[i-1] + i + 1;
    }
    set_intersection( q.begin(), q.end(), d.begin(), d.end(), ostream_iterator&lt;long long&gt;( cout, &quot;\n&quot; ) );
}
</code></pre>
]]></description><link>https://www.c-plusplus.net/forum/post/1569564</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1569564</guid><dc:creator><![CDATA[MFK]]></dc:creator><pubDate>Fri, 22 Aug 2008 11:45:01 GMT</pubDate></item></channel></rss>