<?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[Array durchsurchen]]></title><description><![CDATA[<p>Hallo. Habe eine Aufgabe in der Schule bekommen, die ich nach dem Lösungsvorschlag programmiert habe, den mein Lehrer mir gegeben hat:</p>
<pre><code># include &lt;iostream&gt;
using namespace std;

void array_such(double[],double,double);
int main(){
    double array[]={4,56,34,23,56,12,17,11,4,4};
    double suchzahl, groesse;    
    cout &lt;&lt; &quot;Bitte geben Sie die zu suchende Zahl ein: &quot;;
    cin &gt;&gt; suchzahl;
    groesse = sizeof(array)/sizeof(array[0]);

    array_such(array,groesse,suchzahl);

    cin.get();
    cin.get();

    return(0);
}

void array_such(double array[],double groesse,double suchzahl)
{
     int z;
     for(z=0;z&lt;groesse &amp;&amp; array[z]!=suchzahl;z++)
     {
         if(z==groesse)
            cout &lt;&lt; &quot;Leider nichts gefunden!&quot;;    
         else 
            cout &lt;&lt; z;
     }
}
</code></pre>
<p>Jedoch tut es leider nicht das was es soll <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="😕"
    /> Kann mir vielleicht jemand bei meinem Problem helfen??</p>
<p>Die Aufgabenstellung:<br />
Schreiben Sie eine Funktion<br />
void array_such( ??????)</p>
<p>Die Funktion hat die Aufgabe, ein übergebenes double-Array nach einem ebenfalls übergebenen double-Wert zu durchsuchen.</p>
<p>Wird die Suchzahl gefunden, soll am Bildschirm die Meldung erscheinen:<br />
Suchzahl xxx an Pos yyy gefunden.</p>
<p>Weiter suchen (j/n)<br />
Die vg. Aufforderung ((j/n) soll unterbleiben, wenn die Suchzahl im letzten Element gefunden wird (Frage ist dann sinnlos)</p>
<p>Wird das Element nicht gefunden, soll am Ende des Programms die Meldung<br />
Suchzahl xxx nicht gefunden.</p>
<p>Ansonsten soll die Meldung erscheinen<br />
Suchzahl xxx wurde yyy mal gefunden.</p>
<p>Schreiben Sie ein Hauptprogramm mit folgenden Zahlen im Array<br />
4 56 34 23 56 12 17 11 4 4</p>
<p>Und rufen Sie aus diesem die o. a. Funktion auf.</p>
]]></description><link>https://www.c-plusplus.net/forum/topic/131602/array-durchsurchen</link><generator>RSS for Node</generator><lastBuildDate>Thu, 27 Aug 2026 05:02:28 GMT</lastBuildDate><atom:link href="https://www.c-plusplus.net/forum/topic/131602.rss" rel="self" type="application/rss+xml"/><pubDate>Wed, 04 Jan 2006 17:40:05 GMT</pubDate><ttl>60</ttl><item><title><![CDATA[Reply to Array durchsurchen on Wed, 04 Jan 2006 17:40:05 GMT]]></title><description><![CDATA[<p>Hallo. Habe eine Aufgabe in der Schule bekommen, die ich nach dem Lösungsvorschlag programmiert habe, den mein Lehrer mir gegeben hat:</p>
<pre><code># include &lt;iostream&gt;
using namespace std;

void array_such(double[],double,double);
int main(){
    double array[]={4,56,34,23,56,12,17,11,4,4};
    double suchzahl, groesse;    
    cout &lt;&lt; &quot;Bitte geben Sie die zu suchende Zahl ein: &quot;;
    cin &gt;&gt; suchzahl;
    groesse = sizeof(array)/sizeof(array[0]);

    array_such(array,groesse,suchzahl);

    cin.get();
    cin.get();

    return(0);
}

void array_such(double array[],double groesse,double suchzahl)
{
     int z;
     for(z=0;z&lt;groesse &amp;&amp; array[z]!=suchzahl;z++)
     {
         if(z==groesse)
            cout &lt;&lt; &quot;Leider nichts gefunden!&quot;;    
         else 
            cout &lt;&lt; z;
     }
}
</code></pre>
<p>Jedoch tut es leider nicht das was es soll <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="😕"
    /> Kann mir vielleicht jemand bei meinem Problem helfen??</p>
<p>Die Aufgabenstellung:<br />
Schreiben Sie eine Funktion<br />
void array_such( ??????)</p>
<p>Die Funktion hat die Aufgabe, ein übergebenes double-Array nach einem ebenfalls übergebenen double-Wert zu durchsuchen.</p>
<p>Wird die Suchzahl gefunden, soll am Bildschirm die Meldung erscheinen:<br />
Suchzahl xxx an Pos yyy gefunden.</p>
<p>Weiter suchen (j/n)<br />
Die vg. Aufforderung ((j/n) soll unterbleiben, wenn die Suchzahl im letzten Element gefunden wird (Frage ist dann sinnlos)</p>
<p>Wird das Element nicht gefunden, soll am Ende des Programms die Meldung<br />
Suchzahl xxx nicht gefunden.</p>
<p>Ansonsten soll die Meldung erscheinen<br />
Suchzahl xxx wurde yyy mal gefunden.</p>
<p>Schreiben Sie ein Hauptprogramm mit folgenden Zahlen im Array<br />
4 56 34 23 56 12 17 11 4 4</p>
<p>Und rufen Sie aus diesem die o. a. Funktion auf.</p>
]]></description><link>https://www.c-plusplus.net/forum/post/956934</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/956934</guid><dc:creator><![CDATA[Nemesis1986]]></dc:creator><pubDate>Wed, 04 Jan 2006 17:40:05 GMT</pubDate></item><item><title><![CDATA[Reply to Array durchsurchen on Wed, 04 Jan 2006 18:09:35 GMT]]></title><description><![CDATA[<pre><code class="language-cpp">if(z==groesse)
    cout &lt;&lt; &quot;Leider nichts gefunden!&quot;;    
else
    cout &lt;&lt; z;
</code></pre>
<p>der if muss hinter der schleife sein...</p>
]]></description><link>https://www.c-plusplus.net/forum/post/956964</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/956964</guid><dc:creator><![CDATA[kermit1]]></dc:creator><pubDate>Wed, 04 Jan 2006 18:09:35 GMT</pubDate></item><item><title><![CDATA[Reply to Array durchsurchen on Wed, 04 Jan 2006 18:31:27 GMT]]></title><description><![CDATA[<p>Für das weitersuchen würd ich ein goto verwenden und in die schleife springen. Weiß nicht was dein lehrer davon hält, ist eigentlich kein so toller programmierstiel</p>
<p>Das beispiel sieht aber schon ganz gut aus.<br />
Wenn er beim arrayende aufhören soll musst du einfach überprüfen ob der das Zeichen am ende im array steht das dürfte nicht schwer sein</p>
<p>Ich denke das waren ein paar gute anregungen. Den Rest schaffst du acuh selbst</p>
<p>Übung macht den meister. Das ist schleißlich der sinn von Hausaufgaben</p>
]]></description><link>https://www.c-plusplus.net/forum/post/956992</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/956992</guid><dc:creator><![CDATA[Storm.Xapek.de]]></dc:creator><pubDate>Wed, 04 Jan 2006 18:31:27 GMT</pubDate></item><item><title><![CDATA[Reply to Array durchsurchen on Wed, 04 Jan 2006 18:47:55 GMT]]></title><description><![CDATA[<p>Hoffe das hilft, wie gesagt nur kopieren bringt nichts, aber es ist relativ einfach da kann man nicht viel erklären.</p>
<pre><code class="language-cpp">void array_such(double *array, int groesse, double suchzahl) // für groesse nur int oder noch besser size_t, aber int reicht mal
{
     // Die deklaration besser hinein und erst mal jedes Element durchgehen. Abbrechen kann man die Schleife immer noch.
     for(int z=0; z &lt; groesse; z++)
     {
         // wenn die richtige zahl ausgeben
         if(array[z] == suchzahl) 
         {
             cout &lt;&lt; &quot;was auch immer... noch mal?&quot;;
             // nun fragen ob man weiter suchen will
             char eingabe;
             cin &gt;&gt; eingabe;
             if(eingabe == 'j' || eingabe == 'J') continue; // schleife neu durchlaufen
             else return; // ansonsten funktion verlassen  
         } 
     }
}
</code></pre>
<p>Gruß</p>
]]></description><link>https://www.c-plusplus.net/forum/post/957008</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/957008</guid><dc:creator><![CDATA[FireFlow]]></dc:creator><pubDate>Wed, 04 Jan 2006 18:47:55 GMT</pubDate></item><item><title><![CDATA[Reply to Array durchsurchen on Wed, 04 Jan 2006 19:08:37 GMT]]></title><description><![CDATA[<p>Man kann (oder auf jeden Fall sollte man nicht) double-Variablen mit == vergleichen, weil durch die interne Speicherung im Binärsystem Rundungsfehler entstehen.</p>
<p>Was noch als Möglichkeit bleibt ist so in etwa:</p>
<pre><code class="language-cpp">const double Precision = 0.001;
double Wert1 = 1.0;
double Wert2;
cin &gt;&gt; Wert2;
if((Wert1 - Precision &lt; Wert2) &amp;&amp; (Wert1 + Precision &gt; Wert2))
{
    //Sie sind gleich
}
else
{
    //Sie sind nicht gleich
}
</code></pre>
<p>Wer mir nicht glaubt, kanns ja mal probieren <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="😃"
    /></p>
<p>PhoemueX</p>
]]></description><link>https://www.c-plusplus.net/forum/post/957027</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/957027</guid><dc:creator><![CDATA[Phoemuex]]></dc:creator><pubDate>Wed, 04 Jan 2006 19:08:37 GMT</pubDate></item><item><title><![CDATA[Reply to Array durchsurchen on Wed, 04 Jan 2006 19:24:19 GMT]]></title><description><![CDATA[<p>mh.. ich würd noch nen paar sachen verändern..nur so als schönheitskorrektur <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>
<p>1. würd ich das array per referenz übergeben, da sich das mit dem pointer als kompliziert rausstellen könnte<br />
3. fehlt ja noch die abfrage ob das an letzter stelle steht<br />
4. fehlt auch noch die zählvarriable anzahl</p>
<pre><code class="language-cpp">void array_such(double&amp; array, int groesse, double suchzahl) // für groesse nur int oder noch besser size_t, aber int reicht mal
{
     // Die deklaration besser hinein und erst mal jedes Element durchgehen. Abbrechen kann man die Schleife immer noch.
     int anzahl = 0; //zählvarriable
     char eingabe; //besser hierhin, da sonst immer neu deklariert
     for(int z=0; z &lt; groesse; z++)
     {
         // wenn die richtige zahl ausgeben
         if(array[z] == suchzahl)
         {
             cout &lt;&lt; &quot;Suchzahl &quot;&lt;&lt; suchzahl &lt;&lt;&quot; an Pos &quot;&lt;&lt; z &lt;&lt;&quot; gefunden\n&quot;;
             ++anzahl;
             // nun fragen ob man weiter suchen will, aber nur wenn z != groesse-1
             if (z != (groesse-1))
             {
                cout &lt;&lt; &quot;Weiter suchen?? (j/n)&quot;;
                cin &gt;&gt; eingabe;
                cout &lt;&lt; &quot;\n&quot;;
                if(eingabe != 'j' || eingabe != 'J') break; // nur wenn nicht j oder J eingegeben for-schleife abbrechen..
             }
         }
     }
     if (anzahl != 0)
         cout &lt;&lt; &quot;Suchzahl &quot;&lt;&lt;suchzahl &lt;&lt;&quot; wurde &quot;&lt;&lt; anzahl &lt;&lt;&quot; mal gefunden\n&quot;;
     else
        cout &lt;&lt; &quot;Suchzahl &quot;&lt;&lt; suchzahl &lt;&lt;&quot; nicht gefunden\n&quot;;
}
</code></pre>
]]></description><link>https://www.c-plusplus.net/forum/post/957050</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/957050</guid><dc:creator><![CDATA[P4n1k]]></dc:creator><pubDate>Wed, 04 Jan 2006 19:24:19 GMT</pubDate></item><item><title><![CDATA[Reply to Array durchsurchen on Wed, 04 Jan 2006 19:27:11 GMT]]></title><description><![CDATA[<p>mist.. muss natürlich heißen</p>
<pre><code class="language-cpp">if ( eingabe =! 'j')
</code></pre>
<p>oder</p>
<pre><code class="language-cpp">if(eingabe == 'j' || eingabe == 'J') continue; // schleife neu durchlaufen
else break;
</code></pre>
<p>da er sonst definiotiv abbricht</p>
]]></description><link>https://www.c-plusplus.net/forum/post/957052</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/957052</guid><dc:creator><![CDATA[P4n1k]]></dc:creator><pubDate>Wed, 04 Jan 2006 19:27:11 GMT</pubDate></item></channel></rss>