Du bist nicht angemeldet.

Stilllegung des Forums
Das Forum wurde am 05.06.2023 nach über 20 Jahren stillgelegt (weitere Informationen und ein kleiner Rückblick).
Registrierungen, Anmeldungen und Postings sind nicht mehr möglich. Öffentliche Inhalte sind weiterhin zugänglich.
Das Team von spieleprogrammierer.de bedankt sich bei der Community für die vielen schönen Jahre.
Wenn du eine deutschsprachige Spieleentwickler-Community suchst, schau doch mal im Discord und auf ZFX vorbei!

Werbeanzeige

11

01.09.2014, 09:04

"aufgeben"... sry ich kenne das Fremdwort nicht.

Genau das war meine Fragestellung in einem anderen Thread hier im Forum und im C++ Forum.
Ich hab bis jetzt jedes Listing abgetippt, schonmal als Lerneffekt, es ausgeführt, mir gut durchgelesen und selbst nachvollzogen wie, was arbeitet und warum es eben so ausgegeben wird vom Compiler.
Hat bis jetzt auch gut funktioniert, ich suche wie schon gesagt nach weiteren Übungen in diesem "Anfänger-Wissensbereich". Leider hab ich außer eine Antwort und viele Buchlinks sonst als Input nichts weiter bekommen.

Um das gerlernte weiter zu festigen und zu vertiefen ist Praxis unerlässlich nur fällt es mir ehrlich gesagt schwer adequade Test-"Programmchen" auszudenken die sich eben mit besagten Wissen umsetzen lassen. :search:
Ich habe zwar keinen Computer, aber was soll's.
Ich hab mir zum üben, eine Tastatur aus Papier gemacht.

Nimelrian

Alter Hase

Beiträge: 1 216

Beruf: Softwareentwickler (aktuell Web/Node); Freiberuflicher Google Proxy

  • Private Nachricht senden

12

01.09.2014, 09:08

Bitte schau dir NICHT den Code an. Dann lernst du nichts.

Das denkst du vielleicht, weil dir dein Lehrer auf die Finger gehauen hat, wenn du auf die letzten Seiten im Buch geblättert hast. Bleibt trotzdem falsch.
Kannst du egtl. auch einen Post schreiben, ohne jemanden direkt anzugreifen? Wenn er den Code einfach liest, kann er zwar eventuell den Ablauf nachvollziehen, aber nicht, wieso man es eben so macht, wie im Buch beschrieben.

Guten Morgen,

ich hoffe du bist noch nicht an der Aufgabe verzweifelt bzw sitzt immernoch dran :P

Guck dir doch nochmals die Structs an. Ich geb dir aber trotzdem einen kleinen Tipp

C-/C++-Quelltext

1
2
3
4
5
6
7
8
9
10
11
12
#include <cstring> // benutze für den Inhalt lieber einen String, ist weniger aufwand

struct S_Spielfeld
{
    std::string Inhalt;
    bool belegt;
};

int main()
{
   S_Spielfeld Feld[X][Y];  // ein Struct verhält sich wie ein "Normaler" Datentyp, du kannst ihn als mehrdimensionales Array verweden :D
}


und genau bei S_Spielfeld Feld[][] wird deinen Frage beantwortet... da du ein 2D-Array erzeugts, hast du quasi für jedes Spalte in einer Zeile eine Instanz des Structs erzeugt :D

Ich hoffe ich konnte dir jetzt damit ein wenig weiter helfen :thumbsup:
Die STL kommt in Heikos Buch erst etwas später dran, bis dahin kann er ruhig noch C-Strings verwenden (Was aber nicht heißen soll, dass er das in Zukunft noch tun soll, wenn er schon einmal mit std::string gearbeitet hat.

@Golden_Boy: Ansonsten hat Qube dir schon den richtigen Anstoß gegeben. Für das Spielfeld musst du einfach ein Mehrdimensionales Array aus Strukturen aufsetzen (Wie das geht, steht in seinem Post, ist nicht viel anders als bei jedem anderen Array). Das die einzelnen Codestücke jetzt größer werden ist normal. Wichtig ist, dass du hierbei den Überblick behältst. Statt alles in die main-Funktion zu schreiben, könntest du das ganze auch in kleinere Funktionen aufteilen (wie z.B. zeichneSpielfeld(), oder zeigeMenue()).
Ich bin kein UserSideGoogleProxy. Und nein, dieses Forum ist kein UserSideGoogleProxyAbstractFactorySingleton.

13

01.09.2014, 10:39

Danke erstmal für die ausführlichen Beiträge.

Wenn es nur das wäre. Ich arbeite mich grad so Seite für Seite durch den C++ Programmierer und bleib bei den Aufgabenstellung hängen... lol...
Ich glaub ich hab eher ein Problem mit der Art der Aufgabenstellung bzw. holt mich hier mein mathematisches Kindheitstrauma ein ala "Ein Zug mit 20 Passagieren fährt nach Köln, es steigen 2 Gäste am ersten Bahnhof aus und 25 und ein Hund zu... wieviel Strom hat der Zug bis nach Berlin nun verbraucht?..." :cursing:
Ich habe zwar keinen Computer, aber was soll's.
Ich hab mir zum üben, eine Tastatur aus Papier gemacht.

14

01.09.2014, 11:11

"Ein Zug mit 20 Passagieren fährt nach Köln, es steigen 2 Gäste am ersten Bahnhof aus und 25 und ein Hund zu... wieviel Strom hat der Zug bis nach Berlin nun verbraucht?..." :cursing:


na ganz klar 3 Äpfel, 4 Bananen und 2 Fluxkompensatoren

Spaß bei seite...wenn du fragen hast einfach stellen bzw Ausschnitt posten wo du nicht weiter kommst.

Hello_Kitty!

unregistriert

15

01.09.2014, 13:01

Kannst du egtl. auch einen Post schreiben, ohne jemanden direkt anzugreifen? Wenn er den Code einfach liest, kann er zwar eventuell den Ablauf nachvollziehen, aber nicht, wieso man es eben so macht, wie im Buch beschrieben.

Man kann den Code nur einmal verstehen, also warum sollte man es sich dafür unnötig schwer machen? Im Moment kämpft er doch scheinbar vorallem mit der Aufgabenstellung, was am Ziel völlig vorbeigeht. Aufgabe und Lösung enthalten die gleiche Information, in der Aufgabe ist sie nur sehr unzugänglich und vage formuliert. Man lernt nicht automatisch besser, nur weil das gleiche Problem in der Schwierigkeit künstlich aufgeblasen wird.

Golden_Boy, ich denke nicht, dass du dich um den Lernerfolg betrügst, wenn du dir die Lösungen ansiehst. Ganz im Gegenteil, programmieren lernst du am besten, wenn du viel Code liest und dir Gedanken über dessen Funktionsweise machst, anstatt darüber zu Rätseln, was der Autor dir nicht vermitteln kann / will. Die Erklärungen im Buch sind ja eigentlich nur als Krücke gedacht, weil der Programmtext alleine für einen Lernenden noch keine Bedeutung hat. Entsprechend sollte der Programmtext im Vordergrund stehen und der Buchtext nur als ergänzende Erklärung dienen, nicht umgekehrt.

Theofanikus

Frischling

Beiträge: 24

Wohnort: Schwalbach am Taunus

  • Private Nachricht senden

16

01.09.2014, 14:50

Golden_Boy, ich denke nicht, dass du dich um den Lernerfolg betrügst, wenn du dir die Lösungen ansiehst. Ganz im Gegenteil, programmieren lernst du am besten, wenn du viel Code liest und dir Gedanken über dessen Funktionsweise machst, anstatt darüber zu Rätseln, was der Autor dir nicht vermitteln kann / will. Die Erklärungen im Buch sind ja eigentlich nur als Krücke gedacht, weil der Programmtext alleine für einen Lernenden noch keine Bedeutung hat. Entsprechend sollte der Programmtext im Vordergrund stehen und der Buchtext nur als ergänzende Erklärung dienen, nicht umgekehrt.


Also das geht schon am Sinn einer Aufgabe vorbei, wenn mann sich die Lösung vorher anguckt und diese dann analysiert:s
Die Lösung sollte nur im Notfall angeschaut werden, wenn es wirklich nicht anders geht. Man lernt nur wenn man selber programmiert und ausprobiert. Vom bloßen anschauen ist noch keiner zum Meister geworden.
Und ehrlich gesagt wird die Aufgabe hinreichend erklärt und mit dem Verständnis der vorherigen Kapitel sollte sie auch lösbar sein.

17

01.09.2014, 17:14

Erstmal Hallo @ Golden Boy!

Ich hab vor einiger Zeit an der gleichen Stelle gehangen und irgendwann hat es *klick* gemacht... Also lass dich nicht unterkriegen.

Zum Thema Übungen: Ich bin da genau deiner Meinung. Das Buch C++ für Spieleprogrammierer finde ich ansich sehr schön und anschaulich.
Ich hätte jedoch auch gerne wesentlich mehr vorgegebene Übungen / Problemstellungen. Muss ja nicht zwingend direkt ins Buch, man könnte das auch auf die CD auslagern.
Bin jetzt bei Pointern/Referenzen etc. angekommen und da gibt es schlicht keine sinnvolle Übung.


Vlt. wäre es auch für den Autor (im finanziellen Sinne ) interessant zu einer möglichen 5. Auflage ein Übungsbuch herauszubringen (gibt es zu anderen C++ Werken auch). Ich fände das eine win-win Situation...

18

01.09.2014, 23:09

Spieleprogrammierer und der C++ Programmierer hab ich ja gott sei dank ausgeliehen. Aber heute sind endlich meine eigenen Bücher gekommen die ich wohl überlegt bestellt hatte. Einmal vom Meister himself das Anfänger-Einsteigerbuch und dann von der Ulla und vom Peter das neuste Buch & das Übungsbuch dazu. Ich denke jetzt kann nichts mehr schief gehen :thumbsup: Wobei ich noch für das Stroustrop eine Art Kette brauch um es stylisch wie ein C++-Paladin um die Hüffte tragen zu können ;) man könnte damit übrigens auch problemlos Leute erschlagen. Ein echter Hammer das Ding.

Wobei das aktuelle Problem mich anscheinend ziemlich mitgenommen hat, den ich hab von Stroustrop geträumt und das war total strange.
Er kam spontan zum Kaffe & Kuchen vorbei und fragte mich ob ich schon das "Druckprogramm" geschrieben hätte. Keine Ahnung was mein Unterbewusstsein mir damit sagen will, aber schon recht crazy. :crazy:


Danke nochmals für eure zahlreichen Antworten, ich geh das Problem asap an, aktuell hab ich das Verlangen die Bücher zum aktuellen Wissenstand durchzuarbeiten. :thinking:
Ich habe zwar keinen Computer, aber was soll's.
Ich hab mir zum üben, eine Tastatur aus Papier gemacht.

Werbeanzeige