Nonogram Programm
-
Ah und ich muss das wahrscheinlich in eine Schleife packen(zb while oder so)oder ist das der falsche Ansatz?
(PS: Die Erklärung war toll. Hab zwar noch keine Ahnung wie ich das coden will und es hat zu noch mehr Fragen geführt, aber sehr verständlich und eine erste Idee. Danke dafür! )
-
Siehe vorletzten Hinweis:
bool done = solve_from (nonogram,row_hints, col_hints, row, col+1)
Du rufst einfach die Funktion, in welcher du gerade bist, rekursiv für das nächste Feld auf. Schau die vielleicht mal https://de.wikipedia.org/wiki/Rekursive_Programmierung an.
und den status leer und voll kann man mit einem bool machen oder?
Ja, aber: nein, das ist nämlich auch in der Aufgabe vorgegeben. Du hast ein char-Array. Ich zitiere aus der Aufgabe:
In the beginning, the grid contains only whitespaces, corresponding to cells with unknown content. The character '#' stands for a marked cell, while '.' stands for a cell which is known to be empty.
Aber prinzipiell hast du recht,
bool
wäre sinnvoll für markiert/nicht markiert (*). Ihr verwendet aber offenbar auch noch den dritten Status "unbekannt". (Warum eigentlich als chars und nicht als enum? Weiß wohl nur der Aufgabensteller!)(*) um dich nicht (?) zu verwirren:
std::vector<bool>
verhält sich in C++ anders als andere vectoren und wird daher gerne vermieden
-
Oke mit dieser Antwort bin ich leicht überfordert. Muss mir die wohl noch ein paar Mal durch lesen.
Aber danke dir.Zudem:
Was ist genau ein char-array?
-
Andere Frage:
Zeile 38-50 hab ich selber hinzugefügt und da probiert die Hinweise in Code/Text umzuwandeln.
Stimmt das ungefähr oder bin ich da komplett auf den Holzweg?
-
@madelinemiller sagte in Nonogram Programm:
Zudem:
Was ist genau ein char-array?Das:
grid = std::vector<std::vector<char>>;
Und hier, wie es gefüllt ist:
In the beginning, the grid contains only whitespaces, corresponding to cells with unknown content.
The character '#' stands for a marked cell, while '.' stands for a cell which is known to be empty.
-
@zeropage Ah oke danke
-
Andere Frage: Meint ihr ich schaffe das bis heute 23:59 oder soll ich aufgeben und euch nicht die Zeit stehlen?
-
Ganz ehrlich?
Das schaffst Du in einer Woche nicht
-
@Belli oh dann bin ich wohl am Arsch
-
Trotzdem danke euch allen für eure Hilfe.
Tut mir leid das ich eure Zeit verschwendet habe.
Falls ihr mal Fragen zu Mathe oder ähnliches hättet. Da könnte ich behilflich sein.Schöne Woche