<?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[Modulo und Doubles]]></title><description><![CDATA[<p>Hallo, mein erster Beitrag hier ^^<br />
Ich habe erst vor kurzem mit C++ angefangen (vorher hab ich mich mit PureBasic beschäftigt), also belästige ich euch hier mal mit ein paar absoluten Noob-Fragen:<br />
Es geht um folgenden code (Es ist erst mein 2. C++ Programm, das 1. war Zahlenraten, daher bin ich über kontruktive Kritik dankbar)</p>
<pre><code class="language-cpp">#include &lt;cstdlib&gt;
#include &lt;iostream&gt;
#include &lt;math.h&gt;

using namespace std;
unsigned int PrimCheck(unsigned int number);
void PrimShow(unsigned int number);

unsigned int PrimCheck(unsigned int number)
{
    unsigned int teil=0;
    unsigned int x,to;
    if(!(number%2) &amp;&amp; number !=2)
    teil=2;
    //to=sqrt(number)+1;
    for(x=3; x&lt;sqrt(number)+1; x=x+2)
    {
             if(!(number%x))
             {
                            teil=x;
                            break;
             }
    }
    return teil;
}
void PrimShow(unsigned int number)
{
     if(!(PrimCheck(number)))
     cout &lt;&lt; number &lt;&lt;endl;
     if(!(number%2))
     number++;
     do
     {
                 if(!(PrimCheck(number)))
                 cout &lt;&lt; number &lt;&lt;endl;
                 number=number+2;
     }
     while(1);
}

int main()
{
    unsigned int zahl=23;
    unsigned int teiler=0;
    //PrimShow(2); //&lt;-Wenn aktiv, werden alle Primzahlen ab 2 angezeigt
    cout &lt;&lt; &quot;***Primzahlen***&quot;;
    start:
    cout &lt;&lt; &quot;\nZahl eigeben:&quot;;
    cin &gt;&gt; zahl;
    if(zahl)
    {
    teiler=PrimCheck(zahl);
    if(teiler==0)
    cout &lt;&lt; &quot;Primzahl\n&quot;;
    else
    {
        cout &lt;&lt; &quot;Keine Primzahl\n&quot;; 
        cout &lt;&lt; zahl &lt;&lt; &quot;=&quot;;
        while(teiler=PrimCheck(zahl))
        {    
             cout&lt;&lt;teiler&lt;&lt;&quot;*&quot;;    
             zahl=zahl/teiler;                     
        }
        cout&lt;&lt;zahl;
    }
    }
    goto start;
    //system(&quot;PAUSE&quot;);
    return EXIT_SUCCESS;
}
</code></pre>
<p>Also, ich habe 2 Probleme:<br />
1. Ich will das ganze auf Doubles umstellen (jaja, Große Primzahlen sind doch was feines :D), wenn ich´s jedoch tue, meldet sich mein Debugger (ich benutze Bloodshed DEV-C++ 4.9.9.2) bei %, das das bei doubles nicht geht. das hat mich etwas verwirrt...<br />
2. Wie kann ich bei cin text und zahlen empfangen? Wen der nutzer z.b. show 10 eingibt, soll der Befehl PrimShow(10) ausgeführt werden, aber ich empfange bei cin nur zahlen, natürlich könnte ich auch Strings (heißt das in C++ so?) empfangen und dan mit einem mir unbekannten befehl diese in Zahlen umwandeln, aber, äh, ja, ich kenne diesen Befehl nicht...<br />
Da ergibt sich auch was anderes: Gibt es für C++ so eine Art &quot;Große Hilfe&quot; in der alle Befehle mit erklärung aufgelistet sind, die über eine komfortable Volltextsuche verfügt und gibt´s villeicht noch eine IDE mit Codevervollständigung dazu <img
      src="https://www.c-plusplus.net/forum/plugins/nodebb-plugin-emoji/emoji/emoji-one/1f644.png?v=ab1pehoraso"
      class="not-responsive emoji emoji-emoji-one emoji--face_with_rolling_eyes"
      title=":rolling_eyes:"
      alt="🙄"
    /> (jaja, wie schön ist da doch PB)<br />
Danke schonmal für Antworten.</p>
]]></description><link>https://www.c-plusplus.net/forum/topic/126927/modulo-und-doubles</link><generator>RSS for Node</generator><lastBuildDate>Tue, 25 Aug 2026 01:14:24 GMT</lastBuildDate><atom:link href="https://www.c-plusplus.net/forum/topic/126927.rss" rel="self" type="application/rss+xml"/><pubDate>Sat, 19 Nov 2005 21:51:13 GMT</pubDate><ttl>60</ttl><item><title><![CDATA[Reply to Modulo und Doubles on Sat, 19 Nov 2005 21:51:13 GMT]]></title><description><![CDATA[<p>Hallo, mein erster Beitrag hier ^^<br />
Ich habe erst vor kurzem mit C++ angefangen (vorher hab ich mich mit PureBasic beschäftigt), also belästige ich euch hier mal mit ein paar absoluten Noob-Fragen:<br />
Es geht um folgenden code (Es ist erst mein 2. C++ Programm, das 1. war Zahlenraten, daher bin ich über kontruktive Kritik dankbar)</p>
<pre><code class="language-cpp">#include &lt;cstdlib&gt;
#include &lt;iostream&gt;
#include &lt;math.h&gt;

using namespace std;
unsigned int PrimCheck(unsigned int number);
void PrimShow(unsigned int number);

unsigned int PrimCheck(unsigned int number)
{
    unsigned int teil=0;
    unsigned int x,to;
    if(!(number%2) &amp;&amp; number !=2)
    teil=2;
    //to=sqrt(number)+1;
    for(x=3; x&lt;sqrt(number)+1; x=x+2)
    {
             if(!(number%x))
             {
                            teil=x;
                            break;
             }
    }
    return teil;
}
void PrimShow(unsigned int number)
{
     if(!(PrimCheck(number)))
     cout &lt;&lt; number &lt;&lt;endl;
     if(!(number%2))
     number++;
     do
     {
                 if(!(PrimCheck(number)))
                 cout &lt;&lt; number &lt;&lt;endl;
                 number=number+2;
     }
     while(1);
}

int main()
{
    unsigned int zahl=23;
    unsigned int teiler=0;
    //PrimShow(2); //&lt;-Wenn aktiv, werden alle Primzahlen ab 2 angezeigt
    cout &lt;&lt; &quot;***Primzahlen***&quot;;
    start:
    cout &lt;&lt; &quot;\nZahl eigeben:&quot;;
    cin &gt;&gt; zahl;
    if(zahl)
    {
    teiler=PrimCheck(zahl);
    if(teiler==0)
    cout &lt;&lt; &quot;Primzahl\n&quot;;
    else
    {
        cout &lt;&lt; &quot;Keine Primzahl\n&quot;; 
        cout &lt;&lt; zahl &lt;&lt; &quot;=&quot;;
        while(teiler=PrimCheck(zahl))
        {    
             cout&lt;&lt;teiler&lt;&lt;&quot;*&quot;;    
             zahl=zahl/teiler;                     
        }
        cout&lt;&lt;zahl;
    }
    }
    goto start;
    //system(&quot;PAUSE&quot;);
    return EXIT_SUCCESS;
}
</code></pre>
<p>Also, ich habe 2 Probleme:<br />
1. Ich will das ganze auf Doubles umstellen (jaja, Große Primzahlen sind doch was feines :D), wenn ich´s jedoch tue, meldet sich mein Debugger (ich benutze Bloodshed DEV-C++ 4.9.9.2) bei %, das das bei doubles nicht geht. das hat mich etwas verwirrt...<br />
2. Wie kann ich bei cin text und zahlen empfangen? Wen der nutzer z.b. show 10 eingibt, soll der Befehl PrimShow(10) ausgeführt werden, aber ich empfange bei cin nur zahlen, natürlich könnte ich auch Strings (heißt das in C++ so?) empfangen und dan mit einem mir unbekannten befehl diese in Zahlen umwandeln, aber, äh, ja, ich kenne diesen Befehl nicht...<br />
Da ergibt sich auch was anderes: Gibt es für C++ so eine Art &quot;Große Hilfe&quot; in der alle Befehle mit erklärung aufgelistet sind, die über eine komfortable Volltextsuche verfügt und gibt´s villeicht noch eine IDE mit Codevervollständigung dazu <img
      src="https://www.c-plusplus.net/forum/plugins/nodebb-plugin-emoji/emoji/emoji-one/1f644.png?v=ab1pehoraso"
      class="not-responsive emoji emoji-emoji-one emoji--face_with_rolling_eyes"
      title=":rolling_eyes:"
      alt="🙄"
    /> (jaja, wie schön ist da doch PB)<br />
Danke schonmal für Antworten.</p>
]]></description><link>https://www.c-plusplus.net/forum/post/921810</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/921810</guid><dc:creator><![CDATA[benpicco]]></dc:creator><pubDate>Sat, 19 Nov 2005 21:51:13 GMT</pubDate></item><item><title><![CDATA[Reply to Modulo und Doubles on Sat, 19 Nov 2005 21:58:56 GMT]]></title><description><![CDATA[<p>benpicco schrieb:</p>
<blockquote>
<p>...meldet sich mein Debugger (ich benutze Bloodshed DEV-C++ 4.9.9.2) bei %, das das bei doubles nicht geht.</p>
</blockquote>
<p>guckst du: <a href="http://www.cplusplus.com/ref/cmath/fmod.html" rel="nofollow">http://www.cplusplus.com/ref/cmath/fmod.html</a></p>
]]></description><link>https://www.c-plusplus.net/forum/post/921817</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/921817</guid><dc:creator><![CDATA[net 0]]></dc:creator><pubDate>Sat, 19 Nov 2005 21:58:56 GMT</pubDate></item><item><title><![CDATA[Reply to Modulo und Doubles on Sat, 19 Nov 2005 22:07:46 GMT]]></title><description><![CDATA[<p>Cool, danke, genau sowas hab ich gesucht!<br />
Kann man sich das alles (die reference) komplett runterladen?</p>
]]></description><link>https://www.c-plusplus.net/forum/post/921823</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/921823</guid><dc:creator><![CDATA[benpicco]]></dc:creator><pubDate>Sat, 19 Nov 2005 22:07:46 GMT</pubDate></item><item><title><![CDATA[Reply to Modulo und Doubles on Sat, 19 Nov 2005 22:29:02 GMT]]></title><description><![CDATA[<p>ohne auf formales genauer einzugehen</p>
<p>benpicco schrieb:</p>
<blockquote>
<p>Ich will das ganze auf Doubles umstellen (jaja, Große Primzahlen sind doch was feines :D)</p>
</blockquote>
<p>wenn du überprüfen willst, ob große zahlen (als double) prim sind, hast du ein problem: große doubles sind nicht mehr auf einer genau.</p>
]]></description><link>https://www.c-plusplus.net/forum/post/921830</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/921830</guid><dc:creator><![CDATA[davie]]></dc:creator><pubDate>Sat, 19 Nov 2005 22:29:02 GMT</pubDate></item><item><title><![CDATA[Reply to Modulo und Doubles on Sat, 19 Nov 2005 23:07:30 GMT]]></title><description><![CDATA[<p>stell doch einfach auf long long (int64) um. Dann kannste ja mal mit deinem prog testen, ob z.B. 2305843009213693951 eine Primzahl ist &gt;_&lt;</p>
]]></description><link>https://www.c-plusplus.net/forum/post/921837</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/921837</guid><dc:creator><![CDATA[life]]></dc:creator><pubDate>Sat, 19 Nov 2005 23:07:30 GMT</pubDate></item><item><title><![CDATA[Reply to Modulo und Doubles on Sun, 20 Nov 2005 16:58:44 GMT]]></title><description><![CDATA[<p>Wow, was nicht alles geht...<br />
2305843009213693951 hat gute Chancen eine Primzahl zu sein, er rechnet jetzt schon eine ganze Weile und hat noch nichts gefunden. <img
      src="https://www.c-plusplus.net/forum/plugins/nodebb-plugin-emoji/emoji/emoji-one/1f603.png?v=ab1pehoraso"
      class="not-responsive emoji emoji-emoji-one emoji--grinning_face_with_big_eyes"
      title=":D"
      alt="😃"
    /><br />
(Mist, mein PC ist gerade im Begriff, sich aufzuhängen!)<br />
<em>Edit:</em><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="😕"
    /> Das Program meint jetzt 2305843009213693951=2*2*2*2*2*2*2*2*6361*69431*20394401. So wirklich glauben tue ich das nicht... (ich hab alle doubles mit unsigned long long ersetzt)<br />
Villeicht ist die Zahl doch zu groß...</p>
]]></description><link>https://www.c-plusplus.net/forum/post/922419</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/922419</guid><dc:creator><![CDATA[benpicco]]></dc:creator><pubDate>Sun, 20 Nov 2005 16:58:44 GMT</pubDate></item><item><title><![CDATA[Reply to Modulo und Doubles on Sun, 20 Nov 2005 22:43:21 GMT]]></title><description><![CDATA[<p>also der Faktor 2 sollte definitiv nicht drin sein <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/922879</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/922879</guid><dc:creator><![CDATA[life]]></dc:creator><pubDate>Sun, 20 Nov 2005 22:43:21 GMT</pubDate></item><item><title><![CDATA[Reply to Modulo und Doubles on Mon, 21 Nov 2005 00:14:50 GMT]]></title><description><![CDATA[<p>2**61-1 ist eine mersenneprimzahl.</p>
<p>im uebrigen ist in der &quot;gleichung&quot; eine differenz von 255.</p>
]]></description><link>https://www.c-plusplus.net/forum/post/922906</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/922906</guid><dc:creator><![CDATA[c.rackwitz]]></dc:creator><pubDate>Mon, 21 Nov 2005 00:14:50 GMT</pubDate></item><item><title><![CDATA[Reply to Modulo und Doubles on Mon, 21 Nov 2005 16:52:07 GMT]]></title><description><![CDATA[<p>c.rackwitz schrieb:</p>
<blockquote>
<p>2**61-1 ist eine mersenneprimzahl.</p>
</blockquote>
<p>Das erklärt wohl einiges. Wenn ich Doubles benutze, kommt noch ziemlich langer Rechenzeit 2^61 raus...<br />
Von long long hätte ich da aber eine höhere Genauigkeit erwartet, wenn sie genausoviel Platz brauchen, wie doubles (64 bit?), oder könnte das am fmod Befehl liegen, der scheinbar für doubles ausgelegt ist?<br />
Oder hab ich in meinem code einfach mist gebaut?</p>
<pre><code class="language-cpp">#include &lt;cstdlib&gt;
#include &lt;iostream&gt;
#include &lt;math.h&gt;

using namespace std;
typedef unsigned int long long numTyp;

numTyp PrimCheck(numTyp number);
void PrimShow(numTyp number);

numTyp PrimCheck(numTyp number)
{
    numTyp teil=0;
    numTyp x,to;
    if(!(fmod(number,2)) &amp;&amp; number !=2)
    teil=2;
    to=sqrt(number)+1;
    for(x=3; x&lt;to; x=x+2)
    {
             if(!(fmod(number,x)))
             {
                            teil=x;
                            break;
             }
    }
    return teil;
}
void PrimShow(numTyp number)
{
     if(!(PrimCheck(number)))
     cout &lt;&lt; number &lt;&lt;endl;
     if(!(fmod(number,2)))
     number++;
     do
     {
                 if(!(PrimCheck(number)))
                 cout &lt;&lt; number &lt;&lt;endl;
                 number=number+2;
     }
     while(1);
}

int main()
{
    numTyp zahl=23;
    numTyp teiler=0;
    cout &lt;&lt; &quot;***Primzahlen***\n&quot;;
    cout &lt;&lt; &quot;(Geben sie 0 ein um alle Primzahlen ab einer Zahl ihrer Wahl anzuzeigen)&quot;;
    while(1)
    {
    cout &lt;&lt; &quot;\nZahl eigeben:&quot;;
    cin &gt;&gt; zahl;
    if(zahl)
    {
    teiler=PrimCheck(zahl);
    if(teiler==0)
    cout &lt;&lt; &quot;Primzahl\n&quot;;
    else
    {
        cout &lt;&lt; &quot;Keine Primzahl\n&quot;; 
        cout &lt;&lt; zahl &lt;&lt; &quot;=&quot;;
        while(teiler=PrimCheck(zahl))
        {    
             cout&lt;&lt;teiler&lt;&lt;&quot;*&quot;;    
             zahl=zahl/teiler;                     
        }
        cout&lt;&lt;zahl;
    }
    }
    else
    {
        cout &lt;&lt; &quot;Alle Primzahlen ab &quot;;
        cin &gt;&gt; zahl;
        PrimShow(zahl);
    }  

    }
    //system(&quot;PAUSE&quot;);
    return EXIT_SUCCESS;
}
</code></pre>
<p>Naja, wenn das mit <a href="http://www.mersenne.org/prime8.txt" rel="nofollow">dieser Zahl</a> funktionier, bin ich ganz zufrieden <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/923495</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/923495</guid><dc:creator><![CDATA[benpicco]]></dc:creator><pubDate>Mon, 21 Nov 2005 16:52:07 GMT</pubDate></item><item><title><![CDATA[Reply to Modulo und Doubles on Mon, 21 Nov 2005 17:18:57 GMT]]></title><description><![CDATA[<p>benutz doch einfach modulo.. dann sollte es auch klappen..</p>
]]></description><link>https://www.c-plusplus.net/forum/post/923521</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/923521</guid><dc:creator><![CDATA[life]]></dc:creator><pubDate>Mon, 21 Nov 2005 17:18:57 GMT</pubDate></item><item><title><![CDATA[Reply to Modulo und Doubles on Mon, 21 Nov 2005 17:48:04 GMT]]></title><description><![CDATA[<p>fmod ist auf Gleitkomma-Zahlen ausgelegt - wenn du dort große long long reingibst, nützt dir deren höhere Genauigkeit nichts. (aber für long long klappt afaik der %-Operator).</p>
<p>PS: Um die angegebene Zahl zu überprüfen, benötigst du vermutlich einen eigenen Datentyp &quot;unlimited_int&quot; <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/923569</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/923569</guid><dc:creator><![CDATA[CStoll]]></dc:creator><pubDate>Mon, 21 Nov 2005 17:48:04 GMT</pubDate></item><item><title><![CDATA[Reply to Modulo und Doubles on Tue, 22 Nov 2005 18:40:53 GMT]]></title><description><![CDATA[<p>Ah, % funktioniert also nur mit int</p>
<p>CStoll schrieb:</p>
<blockquote>
<p>PS: Um die angegebene Zahl zu überprüfen, benötigst du vermutlich einen eigenen Datentyp &quot;unlimited_int&quot; <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>
</blockquote>
<p>Und dazu noch eine CPU mit unlimeted_MHZ ^^</p>
]]></description><link>https://www.c-plusplus.net/forum/post/924625</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/924625</guid><dc:creator><![CDATA[benpicco]]></dc:creator><pubDate>Tue, 22 Nov 2005 18:40:53 GMT</pubDate></item><item><title><![CDATA[Reply to Modulo und Doubles on Tue, 22 Nov 2005 20:09:32 GMT]]></title><description><![CDATA[<p>afaik funktionert % mit allen Ganzzahltypen (char, short, int, long, long long)..</p>
]]></description><link>https://www.c-plusplus.net/forum/post/924693</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/924693</guid><dc:creator><![CDATA[life]]></dc:creator><pubDate>Tue, 22 Nov 2005 20:09:32 GMT</pubDate></item></channel></rss>