<?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[[Gelöst]Problem mit &amp;quot;Zufallsgenerator&amp;quot;]]></title><description><![CDATA[<p>Hey Leute,<br />
ich brauche in meinem programm einen &quot;Zufallsgenerator&quot;, also die Funktion rand();<br />
mit rand klappt auch alles, dass er auch nur die Zahlen erzeugt in dem Bereich wo ichs brauch, jedoch klappt dass mit srand(time(NULL)); net so ganz <img
      src="https://www.c-plusplus.net/forum/plugins/nodebb-plugin-emoji/emoji/emoji-one/1f61e.png?v=ab1pehoraso"
      class="not-responsive emoji emoji-emoji-one emoji--disappointed_face"
      title="=("
      alt="😞"
    /><br />
ich benutze rand in 2 funktionen, und habe srand dann in main initalisiert.<br />
jedoch erzeugt er immer die gleichen zahlen=(<br />
wieso?<br />
kann mir bitte einer helfen=)</p>
]]></description><link>https://www.c-plusplus.net/forum/topic/259967/gelöst-problem-mit-quot-zufallsgenerator-quot</link><generator>RSS for Node</generator><lastBuildDate>Tue, 08 Sep 2026 15:48:14 GMT</lastBuildDate><atom:link href="https://www.c-plusplus.net/forum/topic/259967.rss" rel="self" type="application/rss+xml"/><pubDate>Sat, 30 Jan 2010 07:32:44 GMT</pubDate><ttl>60</ttl><item><title><![CDATA[Reply to [Gelöst]Problem mit &amp;quot;Zufallsgenerator&amp;quot; on Sat, 30 Jan 2010 12:16:05 GMT]]></title><description><![CDATA[<p>Hey Leute,<br />
ich brauche in meinem programm einen &quot;Zufallsgenerator&quot;, also die Funktion rand();<br />
mit rand klappt auch alles, dass er auch nur die Zahlen erzeugt in dem Bereich wo ichs brauch, jedoch klappt dass mit srand(time(NULL)); net so ganz <img
      src="https://www.c-plusplus.net/forum/plugins/nodebb-plugin-emoji/emoji/emoji-one/1f61e.png?v=ab1pehoraso"
      class="not-responsive emoji emoji-emoji-one emoji--disappointed_face"
      title="=("
      alt="😞"
    /><br />
ich benutze rand in 2 funktionen, und habe srand dann in main initalisiert.<br />
jedoch erzeugt er immer die gleichen zahlen=(<br />
wieso?<br />
kann mir bitte einer helfen=)</p>
]]></description><link>https://www.c-plusplus.net/forum/post/1847373</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1847373</guid><dc:creator><![CDATA[fr33g]]></dc:creator><pubDate>Sat, 30 Jan 2010 12:16:05 GMT</pubDate></item><item><title><![CDATA[Reply to [Gelöst]Problem mit &amp;quot;Zufallsgenerator&amp;quot; on Sat, 30 Jan 2010 07:40:45 GMT]]></title><description><![CDATA[<p>code zeigen</p>
]]></description><link>https://www.c-plusplus.net/forum/post/1847374</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1847374</guid><dc:creator><![CDATA[yxxxxxxxxxxxxxxxxxxxxxxxx]]></dc:creator><pubDate>Sat, 30 Jan 2010 07:40:45 GMT</pubDate></item><item><title><![CDATA[Reply to [Gelöst]Problem mit &amp;quot;Zufallsgenerator&amp;quot; on Sat, 30 Jan 2010 08:01:32 GMT]]></title><description><![CDATA[<p>Hallo,<br />
also ohne deinen Quelltext können wir hier nichts machen. Dennoch könntest Du dein Programm mal mit diesem vergleichen:</p>
<pre><code class="language-cpp">Random.h:

#ifndef _RANDOM_
#define _RANDOM_

class random
{
private:
	int min,max;
	void randomSeed(void);
public:
	void init(int i_min, int i_max);
	int random(void);
};

#endif
//--------------------------------------------------------
Random.cpp:

#include &lt;iostream&gt;
#include &lt;ctime&gt;
#include &quot;Random.h&quot;
using namespace std;

void random::randomSeed()
{
	unsigned int seed = (unsigned int)time(NULL);
	srand(seed);
}

void random::init(int i_min, int i_max)
{
	max = i_max;
	min = i_min;

	randomSeed();
}

int random::random(void)
{
	return min + rand()%(max+1 - min);
}
</code></pre>
<p>lg, freakC++</p>
]]></description><link>https://www.c-plusplus.net/forum/post/1847378</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1847378</guid><dc:creator><![CDATA[freakC++]]></dc:creator><pubDate>Sat, 30 Jan 2010 08:01:32 GMT</pubDate></item><item><title><![CDATA[Reply to [Gelöst]Problem mit &amp;quot;Zufallsgenerator&amp;quot; on Sat, 30 Jan 2010 08:45:56 GMT]]></title><description><![CDATA[<pre><code class="language-cpp">int random::random(void)
{
	return min + rand()%(max+1 - min);
}
</code></pre>
<p>Seit wann hat der Konstruktor nen Rückgabewert?</p>
]]></description><link>https://www.c-plusplus.net/forum/post/1847382</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1847382</guid><dc:creator><![CDATA[l&#x27;abra d&#x27;or_off]]></dc:creator><pubDate>Sat, 30 Jan 2010 08:45:56 GMT</pubDate></item><item><title><![CDATA[Reply to [Gelöst]Problem mit &amp;quot;Zufallsgenerator&amp;quot; on Sat, 30 Jan 2010 08:48:51 GMT]]></title><description><![CDATA[<p>ups...ich habs falsch aus meinen Unterlagen abgeschrieben: Die Klasse soll &quot;Random&quot; heißen und die Methode &quot;random&quot;...sorry</p>
<p>lg, freakC++</p>
]]></description><link>https://www.c-plusplus.net/forum/post/1847383</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1847383</guid><dc:creator><![CDATA[freakC++]]></dc:creator><pubDate>Sat, 30 Jan 2010 08:48:51 GMT</pubDate></item><item><title><![CDATA[Reply to [Gelöst]Problem mit &amp;quot;Zufallsgenerator&amp;quot; on Sat, 30 Jan 2010 08:50:25 GMT]]></title><description><![CDATA[<p>okidoki, setzt euch mal den teil rein um den es geht, denk mal ist dann leichter den fehler zu finden als vll alles durchzulesen.<br />
main.cpp</p>
<pre><code class="language-cpp">#include &lt;iostream&gt;
#include &lt;iomanip&gt;
#include &lt;string&gt;
#include &quot;classFeld.h&quot;

using namespace std;

void setzenSchiffe(Feld**, int, int);
void setzenSchiffeCPU(Feld**, int, int);
void ausgebenFelder(Feld**, int, int);
void ausgebenFelderCPU(Feld**, int, int);
void eingabe(Feld**, int, int);
void eingabeCPU(Feld**, int, int);
bool checkEnd(Feld**, int);
bool checkEndCPU(Feld**, int);

int angabeX;

int main()
{
    srand(time(0));
    cout &lt;&lt; setw(63) &lt;&lt; &quot;Herzlich Willkommen zu Schiffe versenken=)&quot; &lt;&lt; endl;
    marke:;
    cout &lt;&lt; &quot;\nWie gross soll das Spielfeld sein,(min.8) (x-Angabe)?&quot;;
    cin &gt;&gt; angabeX;
//blablabla
setzenSchiffe(pFeld, angabeX, felder);
    setzenSchiffeCPU(pFeld2, angabeX, felder);

    cout &lt;&lt; endl;
    ausgebenFelder(pFeld, felder, angabeX);
    cout &lt;&lt; endl;
    ausgebenFelderCPU(pFeld, felder, angabeX);
//blabla
while(true)
    {
        eingabe(pFeld, felder, angabeX);
        ausgebenFelder(pFeld, felder, angabeX);
        if (checkEnd(pFeld, felder))
        {
            break;
        }
        eingabeCPU(pFeld2, felder, angabeX);
        ausgebenFelderCPU(pFeld2, felder, angabeX);
        if (checkEndCPU(pFeld2, felder))
        {
            break;
        }
    }
    return 0;
}
</code></pre>
<p>funktionen.cpp</p>
<pre><code class="language-cpp">void setzenSchiffeCPU(Feld** pFeld2, int angabeX, int felder)
{
    int x;
    int y;
    int achse;
    for (int i = 0; i &lt; 5; i++)
    {
        marke:;
        x = (rand()%(angabeX + 1));
        y = (rand()%(angabeX + 1));
        achse = rand()%3;
        if((achse == 1 &amp;&amp; x &gt; angabeX - 2) || (achse == 1 &amp;&amp; y &gt; angabeX))
        {
            continue;
        }
//blabla

void eingabeCPU(Feld** pFeld2, int felder, int angabeX)
{
    int x;
    int y;
    marke:;
    x = (rand()%(angabeX + 1));
    y = (rand()%(angabeX + 1));
    if (x == 0 || x &gt; angabeX)
    {
        cout &lt;&lt; &quot;Ungueltige Eingabe!\n&quot;;
        goto marke;
    }
    else if (y == 0 || y &gt; angabeX)
    {
        cout &lt;&lt; &quot;Ungueltige Eingabe!\n&quot;;
        goto marke;
    }
//blabla
</code></pre>
<p>So also hoff mal der code reicht euch, in der main steht noch mehr und in funktionen.cpp auch, die beiden funktionen selber habe ich auch nicht vollständig kopiert.<br />
falls ihr mehr braucht sagts nur, kann auch gern alles kopieren;-):D</p>
<p>danke schonmal</p>
<p>ps: ja ich weiß goto ist sehhhr schlecht:D bin noch dabei des wegzumachen:)</p>
]]></description><link>https://www.c-plusplus.net/forum/post/1847384</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1847384</guid><dc:creator><![CDATA[fr33g]]></dc:creator><pubDate>Sat, 30 Jan 2010 08:50:25 GMT</pubDate></item><item><title><![CDATA[Reply to [Gelöst]Problem mit &amp;quot;Zufallsgenerator&amp;quot; on Sat, 30 Jan 2010 09:19:06 GMT]]></title><description><![CDATA[<p>Am Setzen von srand und am direkten Aufruf von rand()%(N+1) sollte es nicht liegen. Das scheint andere Gründe zu haben. An der Ausgabe vielleicht?</p>
]]></description><link>https://www.c-plusplus.net/forum/post/1847389</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1847389</guid><dc:creator><![CDATA[Bitsy]]></dc:creator><pubDate>Sat, 30 Jan 2010 09:19:06 GMT</pubDate></item><item><title><![CDATA[Reply to [Gelöst]Problem mit &amp;quot;Zufallsgenerator&amp;quot; on Sat, 30 Jan 2010 09:19:12 GMT]]></title><description><![CDATA[<p>Nutzt du Threads? Dort musst du evtl. für jeden Thread srand neu initialisieren.</p>
]]></description><link>https://www.c-plusplus.net/forum/post/1847390</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1847390</guid><dc:creator><![CDATA[gfhfghgfh]]></dc:creator><pubDate>Sat, 30 Jan 2010 09:19:12 GMT</pubDate></item><item><title><![CDATA[Reply to [Gelöst]Problem mit &amp;quot;Zufallsgenerator&amp;quot; on Sat, 30 Jan 2010 11:19:30 GMT]]></title><description><![CDATA[<p>ehm was sind den threads???</p>
<p>ich schau nochmal die ausgabe durch ob ich da was finde...</p>
<p>das komische ist, ich benutze ja rand in 2 funktionen, einmal bei der funktion wo der pc die schiffe setzt und einmal dort wo eben der pc auf meine felder schießt.<br />
dort wo er schießt klappt es und es ändert sich immer, dort wo er die schiffe setzt jedoch nicht...</p>
]]></description><link>https://www.c-plusplus.net/forum/post/1847417</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1847417</guid><dc:creator><![CDATA[fr33g]]></dc:creator><pubDate>Sat, 30 Jan 2010 11:19:30 GMT</pubDate></item><item><title><![CDATA[Reply to [Gelöst]Problem mit &amp;quot;Zufallsgenerator&amp;quot; on Sat, 30 Jan 2010 11:35:05 GMT]]></title><description><![CDATA[<pre><code>unsigned int seed = (unsigned int)time(NULL);
    srand(seed);
</code></pre>
<p>Also wenn ich ein Objekt von random erzeuge, dann veraendere ich den seed von allen anderen random-Objekten und fuehre ein reset aus. Das ist kacke.</p>
<p>Auch verstehe ich nicht, was das soll: Erst ein Randomobjekt und dann doch wieder mit rand() ...</p>
<pre><code class="language-cpp">marke:;
    ...
    goto marke;
</code></pre>
<blockquote>
<p>ps: ja ich weiß goto ist sehhhr schlecht:D bin noch dabei des wegzumachen:)</p>
</blockquote>
<p>Wegmachen? Einfach nicht einsetzen! In diesem Fall hier kann goto nur sehr schlecht gerechtfertigt werden.</p>
]]></description><link>https://www.c-plusplus.net/forum/post/1847421</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1847421</guid><dc:creator><![CDATA[knivil]]></dc:creator><pubDate>Sat, 30 Jan 2010 11:35:05 GMT</pubDate></item><item><title><![CDATA[Reply to [Gelöst]Problem mit &amp;quot;Zufallsgenerator&amp;quot; on Sat, 30 Jan 2010 12:15:47 GMT]]></title><description><![CDATA[<p>Leute, hat sich erledigt, war mein fehler,<br />
ich vogel wundere mich warum er immer die schiffe gleich setzt, dabei hattte ich was vertauscht sodass ich meine schiffe und er seine selber setzte:D:D</p>
<p>also danke nochmal:-P</p>
]]></description><link>https://www.c-plusplus.net/forum/post/1847451</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1847451</guid><dc:creator><![CDATA[fr33g]]></dc:creator><pubDate>Sat, 30 Jan 2010 12:15:47 GMT</pubDate></item></channel></rss>