<?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[Bücherverleih ( Anfängeraufgabe Uni )]]></title><description><![CDATA[<p>Servus,</p>
<p>wir sollen nun die erste Aufgabe mit Klassen machen , und da hab ich so meine Problemchen. Inzwischen habe ich es geschafft den array m_book mit den Büchern zu befüllen. Nun hab ich 3 dumme Fragen:</p>
<p>1. Wie kann ich eine einzige Position im Array auslesen z.B. [2] ?<br />
2. Wie kann ich eine Schleife über das Array machen die schaut ob der aktuelle Satz befüllt oder leer ist? ( Um das nächste Buch an die richtige Stelle zu packen )<br />
3. Wie kann ich eine Schleife über das Array legen die ein bestimmtes Feld ( ISBN-Nummer ) mit einer anderen vergleicht, zum beispiel um ein bestimmtesBuch zu löschen?</p>
<p>Wenn ihr Profis mir da helfen könntet oder ein paar hilfreiche Gedankenanstupser geben könntet wär ich euch sehr verbunden ! <img
      src="https://www.c-plusplus.net/forum/plugins/nodebb-plugin-emoji/emoji/emoji-one/1f44d.png?v=ab1pehoraso"
      class="not-responsive emoji emoji-emoji-one emoji--thumbs_up"
      title=":+1:"
      alt="👍"
    /></p>
<p>Cya</p>
<p>( Das Gerüst des Programs war vorgegeben und muss eingehalten werden )</p>
<pre><code>#include &lt;iostream&gt;
#include &lt;string&gt;

using namespace std;

class cBook
{
	string m_title;
	string m_author;
	string m_isbn;

public:

	cBook(string title,
		string author,
		string isbn)
	{

		m_title = title;
		m_author = author;
		m_isbn = isbn;

	}

	// ...
};

class Student
{
	// array der geliehenen Buecher
	cBook* m_book[8];
	int i = 0;
private:

public:

 	Student()
	{
		// ...
	}

	~Student()
	{
		// ...
	}

	void addBook(cBook&amp; book)
	{
		if (i &lt;= 7 )
			*(m_book + i) = &amp;book;
			i++;

	}

	void removeBook(cBook&amp; book)
	{
		// ..
	}

	void printBooks()
	{
		cout &lt;&lt; &quot;Buecher&quot; &lt;&lt; m_book[0] &lt;&lt; endl;
	}
};

/** This is the entry point of the program. */
int main(int argc, char* argv[])
{
	cout &lt;&lt; &quot;----------------\n&quot;;;

	cBook book_1(&quot;Introduction to Algorithms&quot;,
		&quot;Th. Cormen, Ch. Leiserson, R. Rivest&quot;,
		&quot;0262531968&quot;);

	cBook book_2(&quot;The C++ Programming Language&quot;,
		&quot;Bjarne Stroustrup&quot;,
		&quot;0201700735&quot;);

	cBook book_3(&quot;Grundkurs Informatik&quot;,
		&quot;H. Ernst&quot;,
		&quot;3528257172&quot;);

	Student student;
	student.addBook(book_1);
	student.addBook(book_2);
	student.addBook(book_3);
	student.printBooks();

	cout &lt;&lt; &quot;----------------\n&quot;;;

	student.removeBook(book_2);
	student.printBooks();

	cout &lt;&lt; &quot;----------------\n&quot;;
	system(&quot;PAUSE&quot;);

	return 0;
}
</code></pre>
]]></description><link>https://www.c-plusplus.net/forum/topic/322082/bücherverleih-anfängeraufgabe-uni</link><generator>RSS for Node</generator><lastBuildDate>Sat, 18 Jul 2026 10:09:25 GMT</lastBuildDate><atom:link href="https://www.c-plusplus.net/forum/topic/322082.rss" rel="self" type="application/rss+xml"/><pubDate>Thu, 05 Dec 2013 21:32:26 GMT</pubDate><ttl>60</ttl><item><title><![CDATA[Reply to Bücherverleih ( Anfängeraufgabe Uni ) on Thu, 05 Dec 2013 21:33:32 GMT]]></title><description><![CDATA[<p>Servus,</p>
<p>wir sollen nun die erste Aufgabe mit Klassen machen , und da hab ich so meine Problemchen. Inzwischen habe ich es geschafft den array m_book mit den Büchern zu befüllen. Nun hab ich 3 dumme Fragen:</p>
<p>1. Wie kann ich eine einzige Position im Array auslesen z.B. [2] ?<br />
2. Wie kann ich eine Schleife über das Array machen die schaut ob der aktuelle Satz befüllt oder leer ist? ( Um das nächste Buch an die richtige Stelle zu packen )<br />
3. Wie kann ich eine Schleife über das Array legen die ein bestimmtes Feld ( ISBN-Nummer ) mit einer anderen vergleicht, zum beispiel um ein bestimmtesBuch zu löschen?</p>
<p>Wenn ihr Profis mir da helfen könntet oder ein paar hilfreiche Gedankenanstupser geben könntet wär ich euch sehr verbunden ! <img
      src="https://www.c-plusplus.net/forum/plugins/nodebb-plugin-emoji/emoji/emoji-one/1f44d.png?v=ab1pehoraso"
      class="not-responsive emoji emoji-emoji-one emoji--thumbs_up"
      title=":+1:"
      alt="👍"
    /></p>
<p>Cya</p>
<p>( Das Gerüst des Programs war vorgegeben und muss eingehalten werden )</p>
<pre><code>#include &lt;iostream&gt;
#include &lt;string&gt;

using namespace std;

class cBook
{
	string m_title;
	string m_author;
	string m_isbn;

public:

	cBook(string title,
		string author,
		string isbn)
	{

		m_title = title;
		m_author = author;
		m_isbn = isbn;

	}

	// ...
};

class Student
{
	// array der geliehenen Buecher
	cBook* m_book[8];
	int i = 0;
private:

public:

 	Student()
	{
		// ...
	}

	~Student()
	{
		// ...
	}

	void addBook(cBook&amp; book)
	{
		if (i &lt;= 7 )
			*(m_book + i) = &amp;book;
			i++;

	}

	void removeBook(cBook&amp; book)
	{
		// ..
	}

	void printBooks()
	{
		cout &lt;&lt; &quot;Buecher&quot; &lt;&lt; m_book[0] &lt;&lt; endl;
	}
};

/** This is the entry point of the program. */
int main(int argc, char* argv[])
{
	cout &lt;&lt; &quot;----------------\n&quot;;;

	cBook book_1(&quot;Introduction to Algorithms&quot;,
		&quot;Th. Cormen, Ch. Leiserson, R. Rivest&quot;,
		&quot;0262531968&quot;);

	cBook book_2(&quot;The C++ Programming Language&quot;,
		&quot;Bjarne Stroustrup&quot;,
		&quot;0201700735&quot;);

	cBook book_3(&quot;Grundkurs Informatik&quot;,
		&quot;H. Ernst&quot;,
		&quot;3528257172&quot;);

	Student student;
	student.addBook(book_1);
	student.addBook(book_2);
	student.addBook(book_3);
	student.printBooks();

	cout &lt;&lt; &quot;----------------\n&quot;;;

	student.removeBook(book_2);
	student.printBooks();

	cout &lt;&lt; &quot;----------------\n&quot;;
	system(&quot;PAUSE&quot;);

	return 0;
}
</code></pre>
]]></description><link>https://www.c-plusplus.net/forum/post/2370077</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/2370077</guid><dc:creator><![CDATA[kenyo]]></dc:creator><pubDate>Thu, 05 Dec 2013 21:33:32 GMT</pubDate></item><item><title><![CDATA[Reply to Bücherverleih ( Anfängeraufgabe Uni ) on Thu, 05 Dec 2013 22:54:19 GMT]]></title><description><![CDATA[<p>kenyo schrieb:</p>
<blockquote>
<p>1. Wie kann ich eine einzige Position im Array auslesen z.B. [2] ?</p>
</blockquote>
<p>Genau so. array[2].</p>
<blockquote>
<p>2. Wie kann ich eine Schleife über das Array machen die schaut ob der aktuelle Satz befüllt oder leer ist? ( Um das nächste Buch an die richtige Stelle zu packen )</p>
</blockquote>
<p>Erstmal gibt es keine &quot;leeren&quot; Objekte. Ein Objekt ist immer in irgendeinem Zustand. Wenn der Typ des Objekts es unterstützt, dass es auch einen Leerzustand gibt, dann kannst du den natürlich auch Abfragen. Hier hast du als Objekttyp einen Zeiger auf den Buchtyp gewählt. Für Zeiger gibt es einen Sonderwert, den nullptr (oder einfach nur 0, wenn du kein C++11 benutzt), der sich anbietet, um eine Leerstelle anzuzeigen.</p>
<p>Deutlich besser wäre aber eine geeignetere Datenstruktur. Dein Zeigerfeld hat viele Nachteile:<br />
-Es hat eine maximale Größe<br />
-Es hat Leerstellen<br />
-Siehe Frage 3.<br />
Hier böte sich mindestens erstmal ein dynamisches Feld an (Standardbibliothek: std::vector), eventuell besser (je nach genauen Anforderungen) ein std::set (siehe Frage 3).</p>
<blockquote>
<p>3. Wie kann ich eine Schleife über das Array legen die ein bestimmtes Feld ( ISBN-Nummer ) mit einer anderen vergleicht, zum beispiel um ein bestimmtesBuch zu löschen?</p>
</blockquote>
<p>Indem du das einfach tust. Wo ist das Problem?</p>
<p>Du könntest auch einen sortierten Container benutzen, so dass du nicht alle Bücher durchsuchen musst, sondern direkt das richtige Buch findest. Dies wäre das std::set, das ist ein sortierter Container mit passabel schnellem Löschen, Einfügen und Suchen. Nicht so schnell beim Anhängen und Abhängen wie ein vector, aber gut, wenn man gezielte Zugriffe anhand eines Suchkriteriums braucht.</p>
]]></description><link>https://www.c-plusplus.net/forum/post/2370099</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/2370099</guid><dc:creator><![CDATA[SeppJ]]></dc:creator><pubDate>Thu, 05 Dec 2013 22:54:19 GMT</pubDate></item><item><title><![CDATA[Reply to Bücherverleih ( Anfängeraufgabe Uni ) on Fri, 06 Dec 2013 12:50:01 GMT]]></title><description><![CDATA[<p>Irgendwie klappts bei mir nicht.</p>
<p>Habe ein Screenshot vom Debugger gemacht... in der Ausgabe steht zwar die Adresse der einzelnen Positionen, aber nicht was darin steht.</p>
<p><a href="http://imageshack.com/a/img801/3547/7enh.png" rel="nofollow">http://imageshack.com/a/img801/3547/7enh.png</a></p>
]]></description><link>https://www.c-plusplus.net/forum/post/2370186</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/2370186</guid><dc:creator><![CDATA[kenyo]]></dc:creator><pubDate>Fri, 06 Dec 2013 12:50:01 GMT</pubDate></item><item><title><![CDATA[Reply to Bücherverleih ( Anfängeraufgabe Uni ) on Fri, 06 Dec 2013 13:00:44 GMT]]></title><description><![CDATA[<p>Was ist denn deiner Meinung nach</p>
<pre><code>cBook* m_book[8];
</code></pre>
<p>für eine Art von Objekt? Beschreib mal mit Worten den Datentyp.</p>
<p>Beispiele:</p>
<pre><code>int foo[5];  // foo ist ein Array[5] aus ints
void *bar;   // bar ist ein Zeiger auf void
</code></pre>
]]></description><link>https://www.c-plusplus.net/forum/post/2370188</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/2370188</guid><dc:creator><![CDATA[SeppJ]]></dc:creator><pubDate>Fri, 06 Dec 2013 13:00:44 GMT</pubDate></item><item><title><![CDATA[Reply to Bücherverleih ( Anfängeraufgabe Uni ) on Fri, 06 Dec 2013 13:13:16 GMT]]></title><description><![CDATA[<p>[code=&quot;cpp&quot;]cBook* m_book[8];</p>
<p>für mich ist das ein Zeiger auf ein Array von Objekten/Instanzen der Klasse cBook. Falls ich Recht habe, kenne ich aber leider die Syntax nicht um die membervariablen auszulesen. Vielleicht hab ich auch den falschen Denkansatz</p>
]]></description><link>https://www.c-plusplus.net/forum/post/2370193</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/2370193</guid><dc:creator><![CDATA[kenyo]]></dc:creator><pubDate>Fri, 06 Dec 2013 13:13:16 GMT</pubDate></item><item><title><![CDATA[Reply to Bücherverleih ( Anfängeraufgabe Uni ) on Fri, 06 Dec 2013 13:35:40 GMT]]></title><description><![CDATA[<p>kenyo schrieb:</p>
<blockquote>
<pre><code>cBook* m_book[8];
</code></pre>
<p>für mich ist das ein Zeiger auf ein Array von Objekten/Instanzen der Klasse cBook.</p>
</blockquote>
<p>Nein, ist es nicht. Es ist ein Array von 8 Zeigern Objekte des Typs cBook.</p>
<p>Dies wirft jedoch eine interessante Frage auf: Wieso willst du einen Zeiger auf ein Array haben? Ein Array von Zeigern auf Bücher kann ich ja noch halbwegs verstehen, schließlich stehen in der Bücherliste nicht die Bücher selbst, sondern nur Verweise auf Bücher. Aber ein Zeiger auf ein Array von Buchobjekten? Was soll damit modelliert werden?</p>
<p>Ein Zeiger auf ein Array von 8 Büchern, wäre übrigens:</p>
<pre><code>cBook (*m_book)[8];
</code></pre>
<p>Aber ich glaube kaum, dass du das wirklich so möchtest.</p>
]]></description><link>https://www.c-plusplus.net/forum/post/2370204</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/2370204</guid><dc:creator><![CDATA[SeppJ]]></dc:creator><pubDate>Fri, 06 Dec 2013 13:35:40 GMT</pubDate></item><item><title><![CDATA[Reply to Bücherverleih ( Anfängeraufgabe Uni ) on Fri, 06 Dec 2013 14:12:35 GMT]]></title><description><![CDATA[<p>Danke für die Info soweit.</p>
<p>Ich wollte keinen Zeiger auf ein Array von Objekten, das war nur meine Interpretation. Der Befehl selbst war schon in dem vorgegebenen &quot;Programmgerüst&quot; welches wir einhalten sollen.<br />
Wenn ich den Debugger richtig lese, dann hats mit dem Dateneinlesen ja auch geklappt , mein Problem ist jetzt das Datenauslesen der einzelnen Bücher.</p>
<p>Die Ausgabe soll so aussehen :</p>
<p>----------------<br />
[Buch 0] Titel: Introduction to Algorithms<br />
Autor: Th. Cormen, Ch. Leiserson, R. Rivest, ISBN: 0262531968<br />
[Buch 1] Titel: The C++ Programming Language<br />
Autor: Bjarne Stroustrup, ISBN: 0201700735<br />
[Buch 2] Titel: Grundkurs Informatik<br />
Autor: H. Ernst, ISBN: 3528257172<br />
----------------<br />
[Buch 0] Titel: Introduction to Algorithms<br />
Autor: Th. Cormen, Ch. Leiserson, R. Rivest, ISBN: 0262531968<br />
[Buch 2] Titel: Grundkurs Informatik<br />
Autor: H. Ernst, ISBN: 3528257172<br />
----------------</p>
]]></description><link>https://www.c-plusplus.net/forum/post/2370220</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/2370220</guid><dc:creator><![CDATA[kenyo]]></dc:creator><pubDate>Fri, 06 Dec 2013 14:12:35 GMT</pubDate></item><item><title><![CDATA[Reply to Bücherverleih ( Anfängeraufgabe Uni ) on Fri, 06 Dec 2013 14:14:16 GMT]]></title><description><![CDATA[<p>Wenn du einen Zeiger auf ein Objekt hast, wie kommst du dann an das Objekt, auf das er zeigt?</p>
]]></description><link>https://www.c-plusplus.net/forum/post/2370222</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/2370222</guid><dc:creator><![CDATA[SeppJ]]></dc:creator><pubDate>Fri, 06 Dec 2013 14:14:16 GMT</pubDate></item><item><title><![CDATA[Reply to Bücherverleih ( Anfängeraufgabe Uni ) on Fri, 06 Dec 2013 14:46:41 GMT]]></title><description><![CDATA[<p>Wenn ich das wüsste, wäre ich wahrscheinlich schon fertig mit der Aufgabe <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>
]]></description><link>https://www.c-plusplus.net/forum/post/2370227</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/2370227</guid><dc:creator><![CDATA[kenyo]]></dc:creator><pubDate>Fri, 06 Dec 2013 14:46:41 GMT</pubDate></item><item><title><![CDATA[Reply to Bücherverleih ( Anfängeraufgabe Uni ) on Fri, 06 Dec 2013 14:57:19 GMT]]></title><description><![CDATA[<p>kenyo schrieb:</p>
<blockquote>
<p>Wenn ich das wüsste, wäre ich wahrscheinlich schon fertig mit der Aufgabe <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>
</blockquote>
<p>Dann wäre jetzt ein guter Zeitpunkt, sich mal die Grundlagen von Zeigern anzugucken. Du hast doch sicherlich ein Lehrbuch oder Script oder ähnliches?</p>
]]></description><link>https://www.c-plusplus.net/forum/post/2370231</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/2370231</guid><dc:creator><![CDATA[SeppJ]]></dc:creator><pubDate>Fri, 06 Dec 2013 14:57:19 GMT</pubDate></item><item><title><![CDATA[Reply to Bücherverleih ( Anfängeraufgabe Uni ) on Fri, 06 Dec 2013 17:08:45 GMT]]></title><description><![CDATA[<p>Das war mir schon bewusst, leider läuft die Frist bald ab und ich musste viel arbeiten, deshalb dachte ich könnte man mir hier helfen. Schade.</p>
<p>Trotzdem danke!</p>
]]></description><link>https://www.c-plusplus.net/forum/post/2370253</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/2370253</guid><dc:creator><![CDATA[kenyo]]></dc:creator><pubDate>Fri, 06 Dec 2013 17:08:45 GMT</pubDate></item><item><title><![CDATA[Reply to Bücherverleih ( Anfängeraufgabe Uni ) on Fri, 06 Dec 2013 21:06:56 GMT]]></title><description><![CDATA[<p>kenyo schrieb:</p>
<blockquote>
<p>deshalb dachte ich könnte man mir hier helfen. Schade.</p>
</blockquote>
<p>Hilfe zur Selbsthilfe gilt eigentlich als Hilfe. Wenn du zu einer Frist dein Programm haben musst, aber es selbst mit Hilfe nicht programmieren kannst, dann musst du eben jemanden dafür bezahlen. Aber niemand wird dir deine Hausaufgaben machen. Und die 5 Minuten, um nachzuschauen, wie die absoluten Grundlagen von Pointern (dir fehlt die Syntax! Das ist kein komplizierter Fehler beim Umgang mit Pointern, sondern Faulheit sich mal eben die erste Seite im ersten Kapitel über Pointer durchzulesen.) aussehen, sollten wohl nicht groß zzum Ablauf deiner Fristen beitragen, oder?</p>
]]></description><link>https://www.c-plusplus.net/forum/post/2370298</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/2370298</guid><dc:creator><![CDATA[SeppJ]]></dc:creator><pubDate>Fri, 06 Dec 2013 21:06:56 GMT</pubDate></item><item><title><![CDATA[Reply to Bücherverleih ( Anfängeraufgabe Uni ) on Sat, 07 Dec 2013 00:11:43 GMT]]></title><description><![CDATA[<p>Mehr als das Auslesen der Membervariablen des Objektes auf die der Pointer zeigt hab ich ja von Anfang an nicht mal gewollt. Die Syntax wäre weniger Arbeit gewesen als die ganzen Gegenfragen.</p>
<p>Die Hausaufgabe ( aus mehreren Aufgaben bestehend ) habe ich übrigens auch ohne diese Aufgabe schon bestanden, (hier gibts keine noten nur bestehen / nicht bestehen ) also keine Angst, dass ich mir hier die Hausaufgabe<br />
von jemandem machen wollte <img
      src="https://www.c-plusplus.net/forum/plugins/nodebb-plugin-emoji/emoji/emoji-one/1f60b.png?v=ab1pehoraso"
      class="not-responsive emoji emoji-emoji-one emoji--face_savoring_food"
      title=":yum:"
      alt="😋"
    /></p>
<p>Thread kann zugemacht werden.</p>
<p>Bye <img
      src="https://www.c-plusplus.net/forum/plugins/nodebb-plugin-emoji/emoji/emoji-one/1f44d.png?v=ab1pehoraso"
      class="not-responsive emoji emoji-emoji-one emoji--thumbs_up"
      title=":+1:"
      alt="👍"
    /></p>
]]></description><link>https://www.c-plusplus.net/forum/post/2370324</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/2370324</guid><dc:creator><![CDATA[kenyo]]></dc:creator><pubDate>Sat, 07 Dec 2013 00:11:43 GMT</pubDate></item></channel></rss>