<?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[Strukturen+Arrays... help! ;(]]></title><description><![CDATA[<p>Hallo Leute!</p>
<p>Wir (Kumpel und ich) haben ein Problem und ihr seid unsere letzte Hoffnung. Wir müssen folgendes Programm heute noch fertigstellen... wir haben zwar einen Anfang aber das ist so gut wie nichts und wahrscheinlich sowieso net richtig.</p>
<p>Hier mal die Aufgabenstellung:</p>
<pre><code>Erstellen Sie ein C++-Programm, das in fünf zunächst leere Felder für 50 Strukturen
(ElemT), die jeweils aus einem Integerwert (key) und einem Gleitkommawert (value)
bestehen, beliebig eingegebene Elemente, mit dem Typ ElemT, dem key entsprechend
aufsteigend sortiert einfügen und löschen kann, wobei für das Löschen nur die Eingabe
des keys erforderlich ist.

Implementieren und verwenden Sie für das Programm zumindest folgenden Funktionen:

int get_field_nr();
/*
gibt eine Integer Zahl zwischen 0 und 4 zurück; dient zur Auswahl des Feldes
*/

ElemT read_elem();
/*
Liest ein Element vom Typ ElemT ein und gibt es als Ergebnis zurück;
*/

int insert(ElemT feld[50], int len, ElemT e);
/*
fügt das Element e in das Feld feld, in dem bereits len Elemente enthalten sind, sortiert
ein; ist bereits ein Element mit dem gleichen key enthalten oder das Feld bereits voll, so
wird das Element nicht eingefügt. Als Ergebnis liefert die Funktion die neue Anzahl der im
Feld enthaltenen Elemente.
*/

int delete(ElemT feld[50], int len, int key);
/*
Löscht das Element mit dem Key key aus dem Feld und gibt die neue Länge des Feldes
als Ergebnis zurück.
*/

void printField(ElemT feld[50], int len);
/*
Gibt len Elemente aus dem Feld feld beginnend mit dem Index 0 aus.
*/
</code></pre>
<p>Ich hoffe ihr könnt uns helfen. <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>
<p>Mit verzwiefelten Grüßen,<br />
die Gäste. <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="😞"
    /></p>
]]></description><link>https://www.c-plusplus.net/forum/topic/132660/strukturen-arrays-help</link><generator>RSS for Node</generator><lastBuildDate>Thu, 27 Aug 2026 15:12:05 GMT</lastBuildDate><atom:link href="https://www.c-plusplus.net/forum/topic/132660.rss" rel="self" type="application/rss+xml"/><pubDate>Thu, 12 Jan 2006 12:33:17 GMT</pubDate><ttl>60</ttl><item><title><![CDATA[Reply to Strukturen+Arrays... help! ;( on Thu, 12 Jan 2006 12:33:17 GMT]]></title><description><![CDATA[<p>Hallo Leute!</p>
<p>Wir (Kumpel und ich) haben ein Problem und ihr seid unsere letzte Hoffnung. Wir müssen folgendes Programm heute noch fertigstellen... wir haben zwar einen Anfang aber das ist so gut wie nichts und wahrscheinlich sowieso net richtig.</p>
<p>Hier mal die Aufgabenstellung:</p>
<pre><code>Erstellen Sie ein C++-Programm, das in fünf zunächst leere Felder für 50 Strukturen
(ElemT), die jeweils aus einem Integerwert (key) und einem Gleitkommawert (value)
bestehen, beliebig eingegebene Elemente, mit dem Typ ElemT, dem key entsprechend
aufsteigend sortiert einfügen und löschen kann, wobei für das Löschen nur die Eingabe
des keys erforderlich ist.

Implementieren und verwenden Sie für das Programm zumindest folgenden Funktionen:

int get_field_nr();
/*
gibt eine Integer Zahl zwischen 0 und 4 zurück; dient zur Auswahl des Feldes
*/

ElemT read_elem();
/*
Liest ein Element vom Typ ElemT ein und gibt es als Ergebnis zurück;
*/

int insert(ElemT feld[50], int len, ElemT e);
/*
fügt das Element e in das Feld feld, in dem bereits len Elemente enthalten sind, sortiert
ein; ist bereits ein Element mit dem gleichen key enthalten oder das Feld bereits voll, so
wird das Element nicht eingefügt. Als Ergebnis liefert die Funktion die neue Anzahl der im
Feld enthaltenen Elemente.
*/

int delete(ElemT feld[50], int len, int key);
/*
Löscht das Element mit dem Key key aus dem Feld und gibt die neue Länge des Feldes
als Ergebnis zurück.
*/

void printField(ElemT feld[50], int len);
/*
Gibt len Elemente aus dem Feld feld beginnend mit dem Index 0 aus.
*/
</code></pre>
<p>Ich hoffe ihr könnt uns helfen. <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>
<p>Mit verzwiefelten Grüßen,<br />
die Gäste. <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="😞"
    /></p>
]]></description><link>https://www.c-plusplus.net/forum/post/964477</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/964477</guid><dc:creator><![CDATA[Gast x2]]></dc:creator><pubDate>Thu, 12 Jan 2006 12:33:17 GMT</pubDate></item><item><title><![CDATA[Reply to Strukturen+Arrays... help! ;( on Thu, 12 Jan 2006 12:37:42 GMT]]></title><description><![CDATA[<p>Hallo,</p>
<p>dürft ihr die STL verwenden, da gäbe es nämlich eine Klasse namens <a href="http://www.cppreference.com/cppmap/" rel="nofollow">map</a>, die genau die gesuchte Funktionalität mitbrächte.</p>
<p>Mfg</p>
<p>GPC</p>
]]></description><link>https://www.c-plusplus.net/forum/post/964483</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/964483</guid><dc:creator><![CDATA[GPC]]></dc:creator><pubDate>Thu, 12 Jan 2006 12:37:42 GMT</pubDate></item><item><title><![CDATA[Reply to Strukturen+Arrays... help! ;( on Thu, 12 Jan 2006 12:41:49 GMT]]></title><description><![CDATA[<p>Hi und thx für die Antwort.</p>
<p>Nein, deshalb müssen wir ja auch die Funktionen schreiben, so wie sie in der Aufgabenstellung beschrieben sind. Das wär sonst ja zu einfach... <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>
]]></description><link>https://www.c-plusplus.net/forum/post/964488</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/964488</guid><dc:creator><![CDATA[Gast x2]]></dc:creator><pubDate>Thu, 12 Jan 2006 12:41:49 GMT</pubDate></item><item><title><![CDATA[Reply to Strukturen+Arrays... help! ;( on Thu, 12 Jan 2006 12:48:44 GMT]]></title><description><![CDATA[<p>Hallo,</p>
<p>d.h. kein std::vector, kein std::sort?? Gar nix? Ihr müsst alles selber schreiben?<br />
Wenn ja, dann wäre es vermutlich sinnvoller, eine Verwaltungs-Klasse zu schreiben, die Operationen wie einfügen, löschen usw. bereitstellt, und das Array mit den Strukturen kapselt.</p>
<p>Etwa:</p>
<pre><code class="language-cpp">class Verwaltung {
  size_t n;  //Anzahl elemente
  ElemT *x;  //Das Array

public:
  Verwaltung(size_t n_) n(n_), x(new ElemT[n]) { }
  ~Verwaltung() { delete [] x; }

  void insert(const ElemT &amp;et) {}
  void kill(int index) {}
  void print() {}
};
</code></pre>
<p>Mfg</p>
<p>GPC</p>
]]></description><link>https://www.c-plusplus.net/forum/post/964497</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/964497</guid><dc:creator><![CDATA[GPC]]></dc:creator><pubDate>Thu, 12 Jan 2006 12:48:44 GMT</pubDate></item><item><title><![CDATA[Reply to Strukturen+Arrays... help! ;( on Thu, 12 Jan 2006 12:57:38 GMT]]></title><description><![CDATA[<p>Danke für deine Hilfe, aber das ist nicht gefragt. Klassen haben wir auch noch net behandelt.<br />
Wir haben fix vorgegebene Funktionen in die wir die Aufgabenstellung implementieren müssen. Lies dir die Aufgabenstellung noch mal langsam und gründlich durch. <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="😉"
    /> <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>
]]></description><link>https://www.c-plusplus.net/forum/post/964519</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/964519</guid><dc:creator><![CDATA[Gast x2]]></dc:creator><pubDate>Thu, 12 Jan 2006 12:57:38 GMT</pubDate></item><item><title><![CDATA[Reply to Strukturen+Arrays... help! ;( on Thu, 12 Jan 2006 13:09:37 GMT]]></title><description><![CDATA[<p>Was hast du denn schon vorliegen? Du benötigst als erstes einen struct-Typ für deine Datenwerte und dann einige Arrays mit jeweils 50 Elementen:</p>
<pre><code class="language-cpp">struct ElemT {...};

ElemT data1[50];
</code></pre>
<p>Für die Funktionen ein paar Anregungen:<br />
* Einlesen geht mit cin (in deinem Fall nacheinander key und value)<br />
* für's durchsuchen empfielt sich binäre Suche, für's Ausgeben eine for()-Schleife</p>
]]></description><link>https://www.c-plusplus.net/forum/post/964547</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/964547</guid><dc:creator><![CDATA[CStoll (off)]]></dc:creator><pubDate>Thu, 12 Jan 2006 13:09:37 GMT</pubDate></item><item><title><![CDATA[Reply to Strukturen+Arrays... help! ;( on Thu, 12 Jan 2006 13:29:40 GMT]]></title><description><![CDATA[<p>Solch grundlegende Kenntnisse haben wir schon... nur wir wissen nicht genau wie man mit Feldern in/und Strukturen arbeitet.</p>
<p>Unser Code bis jetzt:</p>
<pre><code class="language-cpp">#include &lt;iostream.h&gt;

struct ElemT
{
	int key;
	double value;
};

int get_field_nr()
{
	do
	{
		cout &lt;&lt; &quot;Feld auswählen: (1-5)&quot;;
		cin &gt;&gt; auswahl;

	}while (auswahl &gt; 0 || auswahl &lt;= 5);

	return auswahl;

}

ElemT read_elem()
{
	ElemT e;

	do
	{
		cout &lt;&lt; &quot;Feldposition?&quot;;
		cin&gt;&gt; e.key;

	}while (e.key &gt; 0 || e.key &lt;=50);

	feld[auswahl][e].key;

	return e;
}

int insert (ElemT feld[50], int len, ElemT e)
{
	int w;

	w=get_field_nr();

	cout &lt;&lt; &quot;Wert eingeben: &quot;;
	cin &gt;&gt; e.value;

	feld[w][e].value;

	// Sortierung - Bubble Sort

         // Überprüfung ob schon vorhanden, Feld voll, Anzahl vorhandener Elemente

}

int delete (ElemT feld[50], int len, int key)
{
        // Element aus Feld löschen, Länge des Feldes nach dem löschen
}

void printField (ElemT feld[50], int len)
{
}

void main()
{
	ElemT feld[5][50]={0};
}
</code></pre>
<p>Ich hoffe das hilft unser Problem besser zu verstehen.</p>
]]></description><link>https://www.c-plusplus.net/forum/post/964575</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/964575</guid><dc:creator><![CDATA[Gast x2]]></dc:creator><pubDate>Thu, 12 Jan 2006 13:29:40 GMT</pubDate></item><item><title><![CDATA[Reply to Strukturen+Arrays... help! ;( on Thu, 12 Jan 2006 17:21:45 GMT]]></title><description><![CDATA[<p>Hallo,</p>
<p>zuerst einmal: Es heißt nicht iostream.h sondern so:</p>
<pre><code class="language-cpp">#include &lt;iostream&gt;

//Achtung, das muss jetzt rein:
using namespace std;
</code></pre>
<p>Ihr dürft eure Lösch-Methode nicht delete nennen, da dies ein Schlüsselwort ist, also umbenennen gehen.</p>
<p>Für Grundlagen (wie Arrays und Strukturen): <a href="http://tutorial.schornboeck.net" rel="nofollow">http://tutorial.schornboeck.net</a></p>
<p>Sortieren mit BubbleSort ist nicht gut, wenn's immer noch einfach sein soll: Insertion Sort? Wie? Hier: <a href="http://www.volkard.de/vcppkold/straight_insertion_sort.html" rel="nofollow">http://www.volkard.de/vcppkold/straight_insertion_sort.html</a></p>
<p>Als kleine Hilfe die print Funktion:</p>
<pre><code class="language-cpp">void printField (ElemT feld[50], int len) {
  cout&lt;&lt;&quot;Key:\tWert:\n;
  for (int i=0;i&lt;len;++i) {
    cout&lt;&lt;feld[i].key&lt;&lt;'\t'&lt;&lt;feld[i].value&lt;&lt;'\n';
  }
}
</code></pre>
<p>Ihr habt nen engen Zeitrahmen, wäre besser gewesen, früher zu kommen...</p>
<p>Mfg</p>
<p>GPC</p>
]]></description><link>https://www.c-plusplus.net/forum/post/964812</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/964812</guid><dc:creator><![CDATA[GPC]]></dc:creator><pubDate>Thu, 12 Jan 2006 17:21:45 GMT</pubDate></item><item><title><![CDATA[Reply to Strukturen+Arrays... help! ;( on Fri, 13 Jan 2006 07:24:57 GMT]]></title><description><![CDATA[<p>Hallo,</p>
<p>Vorweg: wir wissen das es nicht iostream heißt; nur, wir verwenden eine alte Visual Studio Version (6.0), wo man es noch so verwendet bzw. implementieren muss..</p>
<p>Danke für den Denkanstoss (insert sort) <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="😉"
    /> und die Links</p>
<p>mfg<br />
die Gäste</p>
]]></description><link>https://www.c-plusplus.net/forum/post/965143</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/965143</guid><dc:creator><![CDATA[Gast x2]]></dc:creator><pubDate>Fri, 13 Jan 2006 07:24:57 GMT</pubDate></item></channel></rss>