‫Willkommen zurück und dieses Video, Sie werden eine kleine Herausforderung bekommen und Sie sollten Tic Tac Toe erstellen, wie
‫Sie hier sehen können, nur ein Konsolenspiel, kein Formatspiel oder ähnliches, sondern nur ein Konsolenspiel, wie Sie
‫können hier sehen, mit neun Werten oder neun Feldern und Spieler, einer kann danach ein Feld auswählen, Spieler zwei kann ein
‫Feld auswählen und so weiter.
‫Und zum Beispiel gibt es das Feld eins und zwei eins.
‫Und jetzt ist es ein oh, das ist also keine Null, es ist ein oh-dann-Spieler zum Stern und ich gebe fünf ein und ich
‫kann sehen, dass fünf durch ein X ersetzt wird und nur die Zahlen, die Sie sehen können, noch verfügbar sind .
‫Nehmen wir also an, ich gebe als Spieler eins noch einmal fünf ein, es wird mir eine falsche Eingabe angezeigt.
‫Bitte verwenden Sie ein anderes Feld.
‫Gut.
‫Ich werde drei verwenden.
‫Nehmen wir an, Spieler 2 versteht nicht, dass Sie nur Zahlen eingeben sollten, und er gibt einfach ein G oder
‫was auch immer es sagt ein.
‫Bitte geben Sie keine falsche Eingabe ein.
‫Bitte verwenden Sie ein anderes Feld.
‫Rechts.
‫Es ist also immer noch Spieler für Stern.
‫Was wird er also tun?
‫Er wird versuchen zu gewinnen.
‫Dies wird also ein sehr enger Spieler sein.
‫Wird gewinnen und wir freuen uns, dass er gewonnen hat, also hat er drei Flanken in Folge und gut, bitte drücken Sie eine beliebige Taste, um
‫das Spiel zurückzusetzen.
‫Ich drücke und halte und wir haben eine neue Runde, also solltest du auch eine Reset-Funktionalität erstellen.
‫Gut.
‫Das ist es also so ziemlich.
‫Versuchen Sie, das aufzubauen.
‫Sie müssen die Arrays verwenden.
‫Sie müssen Schalter in Fall und Methoden und viele verschiedene Dinge verwenden, die wir in den letzten Videos
‫berührt haben.
‫Dies wird also eine ganze Weile dauern und Ihre Lösung könnte ganz anders aussehen als meine.
‫Und ja, im Allgemeinen, wenn Sie nicht weiterkommen, wenn Ihnen das zu schwer ist, keine Sorge.
‫Sie können einfach mitmachen und versuchen, alle Schritte zu verstehen, die ich durchmache, und ich werde alles
‫erklären, was ich tue.
‫Aber am besten probierst du es wirklich selbst, denn wenn du es selbst probierst, wirst
‫du Lösungen finden, die deine Fähigkeiten um einiges katapultieren, denn einfach durch Tun lernst du am meisten und durch bloßes Zuschauen lernst
‫du nicht so viel.
‫Das ist also wirklich wichtig.
‫Solange Sie auf Bereiche stoßen und diese selbst reparieren, beginnt das Lernen erst richtig.
‫Und das ist es wirklich wichtig, dass Sie es selbst versuchen.
‫Gut.
‫Ich hoffe, Sie pausieren das Video jetzt und versuchen es, und dies kann einige Zeit in Anspruch nehmen, daher sollten Sie nicht innerhalb von
‫fünf Minuten fertig sein.
‫Nun, vielleicht haben Sie Recht und Sie können es tun, aber ansonsten kann dies eine Weile dauern, mehr als eine Stunde
‫oder sogar mehr als zwei Stunden, je nach der von Ihnen gewählten Lösung.
‫Und wie gesagt, es gibt viele verschiedene Möglichkeiten, dieses Problem zu lösen.
‫Und ich habe nur eine, von der ich dachte, dass sie dem, was wir bisher gelernt haben, ziemlich nahe kommt.
‫Es nutzt also die Funktionalität, die wir alle bisher kennengelernt haben.
‫Also nichts zu neues.
‫Und ja, deshalb werde ich jetzt die App erstellen.
‫Gut.
‫Wie gesagt, ich hoffe, Sie haben versucht, es selbst zu erstellen.
‫Also werde ich eine neue Projektdatei neu erstellen.
‫Project, und ich werde diese Tic-Tac-Toe-Übung nennen, und dann wird es wieder
‫eine Konsolen-App sein und auf OK klicken. Ich fange ganz
‫einfach an.
‫Ich werde einfach zuerst unser Spielfeld erstellen.
‫Und damit meine ich sogar das Konsolenschreiben.
‫Ich werde also eine neue Methode erstellen und dieses öffentliche statische Feld "void set" aufrufen.
‫Und ich mache es nur statisch, damit ich es in meiner Hauptmethode verwenden kann.
‫Ansonsten müsste ich ein Objekt der Tic-Tac-Toe-Übung erstellen, um dieses Feld zu verwenden.
‫Aber es statisch zu machen ist völlig in Ordnung.
‫Als nächstes muss ich innerhalb meiner Set-Field-Methode die Gesetzeskonsole schreiben, die Vereide-Zeile und sie wird ein bisschen
‫so aussehen.
‫Also Anführungszeichen viele leere Felder, dann eine Pipe, einige leere Felder und wieder einige leere Felder.
‫Dies ist also die erste Zeile.
‫Dann tröste diese rechte Linie wieder.
‫Sie können auch C, W Doppeltippen verwenden.
‫Das ist die schnellere Version.
‫Und dann zwei und die Flecken oder leere Felder und wieder eine Pfeife.
‫Und hier bereite ich es vor, damit wir die Zahlen anzeigen können.
‫Und welche Zahlen möchte ich anzeigen?
‫Nun, das ist etwas, das wir später verwenden oder erstellen müssen.
‫Also sage ich jetzt nur eins, zwei und drei.
‫Aber später müssen wir das ändern.
‫Also werde ich das meiner Liste hinzufügen, um Zahlen durch Variablen zu ersetzen.
‫OK, jetzt muss ich eine ähnliche Rolle wie diese erstellen, aber hier werde ich Unterstriche haben und wir können das ändern, wenn wir später sehen, dass dies nicht ausreicht oder nicht
‫so gut aussieht, können wir es leicht ändern das
‫später.
‫Gut.
‫So.
‫Das ist so ziemlich alles, wir müssen das jetzt mehrmals machen, also werde ich das tatsächlich kopieren.
‫Ich werde das alles kopieren.
‫Und da sind wir.
‫Und zum Schluss noch eine Reihe davon, und das sollte es so ziemlich sein.
‫Werfen wir einen Blick.
‫Nennen wir diese Methode Field und sehen wir uns an, wie sie auf der Konsole aussieht.
‫Eigentlich müssen wir die Konsole ausführen, aber rote Linie.
‫Gut.
‫Schlüssel ist noch besser.
‫Lass es uns laufen lassen.
‫Und wir sind noch nicht in der perfekten Position.
‫Schauen wir also mal rein.
‫In Ordnung, ein Problem hier ist, dass ich fünf Punkte Abstand brauche, also fünf leere Felder.
‫Das gleiche hier, eins, zwei, drei, vier, fünf, eins, zwei, drei, vier, fünf.
‫Ok das ist gut.
‫Also lassen Sie uns das jetzt verwenden und die Zeilen ersetzen, wo wir das hatten.
‫Hier also ein kleiner Test.
‫Wissen Sie, es geht darum, es gut aussehen zu lassen, und es sind einige Tests erforderlich.
‫Also werde ich hier den gleichen Ansatz verwenden und diese beiden Zeilen kopieren und diese ersetzen.
‫Gut.
‫Jetzt, früher, sollten wir zwei in beide Richtungen haben.
‫Es ist getestet und da sind wir.
‫Das sieht also schon viel besser aus.
‫Eins zwei drei.
‫OK.
‫Diese Nummern sollten, wie gesagt, später ersetzt werden.
‫Aber so können wir das Feld schon setzen.
‫Sie können sich also vorstellen, dass uns dies später schon beim Zurücksetzen des Feldes hilft.
‫Gut.
‫Nun, da wir das haben, müssen wir als nächstes das Spielfeld tatsächlich erstellen und das Spielfeld sollte, nun
‫ja, ein Spielfeld in Bezug auf die spezielle Programmierung sein, das Spielfeld erstellen.
‫Und was es tun wird, ist statisch oder schafft das Spielfeld tatsächlich nicht.
‫Aber es wird ein statischer Charakter des Dockray-Spielfelds sein.
‫Sie können hier also auch ganze Zahlen oder Zeichenfolgen verwenden.
‫Aber Charaktere sind diejenigen, die am ressourceneffizientesten sind.
‫Ich werde ein Spielfeld nennen und hier muss ich die verschiedenen Rollen haben.
‫Also eine Reihe mit eins, zwei und drei und dann
‫dasselbe mit der nächsten.
‫Also vier oder fünf und sechs und so weiter.
‫Also werde ich die Zahlen gleich ersetzen.
‫Dies ist also die vier, fünf, sechs, sieben.
‫Tatsächlich sind dies sieben, acht und neun.
‫Da sind wir also.
‫Das ist unser Spielfeld.
‫Was wir jetzt tun müssen, ist, diese Zahlen hier durch das Spielfeld hier zu ersetzen.
‫So sollte ich im Allgemeinen für Sie spielen, sollte am Anfang aussehen und wir wollen die Zahlen später
‫hier ersetzen.
‫Durch den Benutzer.
‫In Ordnung, also verwenden wir hier anstelle von einem eigentlich dieses Spielfeld an einer bestimmten Position.
‫Also eigentlich werden wir diesen Teil hier los.
‫Okay, das musst du jetzt ein bisschen besser sehen.
‫Das ist also das Spielfeld und ich muss das Spielfeld an der Position Null Null haben.
‫Gut.
‫Und jetzt machen wir dasselbe für die beiden.
‫Also null.
‫Komm schon.
‫Eins und null.
‫Komm schon zu zweit.
‫Und dann die zweite Zeile, es ist eins null eins und eins zwei, wenn Sie sich nicht sicher sind, was das bedeutet.
‫Das ist also null null.
‫Dies ist Reihe eins.
‫Und das ist Reihe zwei.
‫OK, also.
‫Das ist Rosero hier, und das ist ein echter, und jetzt müssen wir dasselbe auch mit Roe machen.
‫Das wird also null sein.
‫Es wird eins geben.
‫Und schließlich haben wir zwei, um zwei zu tun.
‫Also fangen wir jetzt nochmal damit an.
‫Und wir sollten immer noch das gleiche Ergebnis erhalten, so dass wir eins, zwei, drei und so weiter sind.
‫Groß.
‫Nun ist also unser Spielfeld oder Spielfeld hergerichtet.
‫Sehen wir uns nun an, wie wir Benutzereingaben erhalten können.
‫Und was wir daher brauchen, ist zu erschaffen.
‫Eine Variable, die unser Spieler sein wird, also wird Spieler sein, sagen wir, wir beginnen mit Spieler eins.
‫Wir haben also gesagt, dass Spieler zwei und Sie werden später sehen, warum es sinnvoll ist, ihn
‫auf zwei zu setzen, dann brauchen wir die Benutzereingabe und die Eingabe ist null.
‫Und ich werde das einfach auf null setzen, weil keines der Felder hier null ist.
‫Es ist also großartig, es mit Null zu verwenden.
‫Und schließlich brauchen wir einen booleschen Wert, der prüft, ob die Eingabe korrekt ist, denn wenn nicht,
‫dann wollen wir den Spieler informieren und versuchen, die richtige Eingabe zu erhalten.
‫Nun gut, jetzt, wo wir das haben, müssen wir ein großes oder sehr langes Do erstellen, während wir dies tun, und
‫nach vielen Zeilen haben wir die Wild-Anweisung.
‫Und hier werde ich nur true verwenden.
‫Warum verwenden sie do während mit true?
‫Das liegt daran, dass der Benutzer immer etwas in mein Spiel eingeben kann.
‫Und in diesem Fall führe ich hier Code ein, der nicht automatisiert wird.
‫Es hängt von der Benutzereingabe ab.
‫Es ist also keine Endlosschleife, aber es wird immer wahr sein, solange wir das Spiel spielen.
‫Deshalb müssen wir währenddessen tun.
‫Wahr.
‫Gut.
‫Als nächstes müssen wir überprüfen, ob Spieler 1 derjenige ist, der spielen sollte oder auch ein Spieler ist?
‫Wer ist also an der Reihe?
‫Wenn Spieler gleich zwei ist, dann ist besagter Spieler gleich eins und else, wenn wir sonst nur Else verwenden könnten, sonst
‫ist Spieler gleich zwei.
‫Sie können also entweder Els verwenden oder sonst, wenn der Spieler in unserem Fall nur zwei Werte haben kann.
‫Aber wenn etwas schief geht und die Spieler aus irgendeinem Grund auf zwei steigen, wird dies immer oder immer größer sein und immer
‫dieses Problem sein, dass es immer auch der Spieler sein wird.
‫Deshalb werde ich nur aufpassen, nicht wahr?
‫Wenn ein Spieler gleich eins ist, wechseln Sie zu Spieler zwei.
‫Je nachdem, wer an der Reihe ist, muss ich jetzt eine switch-Anweisung ausführen.
‫Also sage ich einfach Spieler wechseln.
‫Lassen Sie uns also basierend darauf, wer an der Reihe ist, Code ausführen.
‫Nehmen wir an, der Fall ist einer.
‫Es bedeutet also, dass der Spieler eine Runde fährt.
‫Und tatsächlich, lassen Sie mich hier etwas Code hinzufügen, solange falscher Code.
‫Das Programm läuft, also wenn sein Player will und was wollen wir tun?
‫Nun, wir wollen überprüfen, was er eingegeben hat.
‫Und weisen Sie die Nummer gut zu, weisen Sie dieser Nummer X zu, also haben wir hier ein Spielfeld, also ist dies eins,
‫zwei, drei.
‫Und was ich jetzt will, ist, wenn es Spieler 1 ist, dann möchte ich, dass dieser durch ein X ersetzt wird.
‫Also wenn er zum Beispiel einen eingibt.
‫Um das zu tun, erstelle ich hier einfach einen weiteren Schalter, Schaltereingang, denn anhand der Eingabe möchte ich diesen Fall
‫eins überprüfen, damit der Spieler einen Spieler eingibt oder Spielfeld an der Position Null Null durch ein
‫ersetzt werden soll X und dann wollen wir brechen.
‫So, dann sind wir übrigens fertig, hier meckern immer noch.
‫Das liegt daran, dass wir hier und jetzt nicht aus dieser Schaltschleife ausbrechen, und jetzt passiert es.
‫Also ersetze ich das Spielfeld durch ein X und hier beschwert es sich, weil ich String verwendet habe und um sicherzustellen,
‫dass es funktioniert, verwende ich jetzt Chaar.
‫Wie Sie also sehen können, sind Apostrophe für Zeichen da.
‫Und wie Sie wissen, hat das Spielfeld viele Charaktere.
‫Es ist also ein 2D-Array von Zeichen.
‫Deshalb muss ich es so verwenden.
‫Gut.
‫Das ist also ein Fall.
‫Und jetzt muss ich dasselbe für die verschiedenen Fälle tun, die wir haben.
‫Also für Fall zwei, was brauchen wir da?
‫Wir brauchen null eins vier drei eins.
‫Oder tatsächlich null bis vier, denn es sollte eins null sechs fünf sein, es ist eins und eins.
‫Und wenn Sie sich nicht sicher sind, was ich hier tue, überprüfen Sie es noch einmal, Rosero, das ist also Position Null Null, dies
‫ist Position Null Eins, Disposition Null Zwei und so weiter.
‫Also das mache ich hier.
‫OK, also ersetze ich sie durch die richtigen Werte.
‫Die Sieben ist also zwei und null.
‫Acht ist zwei und eins und neun ist zwei und zwei.
‫Das wird also sein.
‫Was passiert, wenn der Spieler gewonnen hat und es einen Wert gibt?
‫Und es wird es immer durch einen Ex ersetzen.
‫Was wir jetzt tun können, ist, diesen gesamten Code zu kopieren und dasselbe für einen Spieler zu schreiben, damit wir einfach
‫sagen können: OK, lass uns das kopieren und dann für den Spieler ausführen, den ich tatsächlich zeigen
‫werde Sie das nur, damit Sie sehen, warum dies nicht der beste Ansatz ist.
‫Also werde ich hier einen weiteren Fall hinzufügen, der Fall ist es auch und jetzt müssen wir auch daraus ausbrechen.
‫Also eigentlich diese Pause hier.
‫Hier und hier drin zu sein, brechen auch wir.
‫Und wir haben einen anderen Schalterfall, also könnte ich diesen Code eigentlich hier kopieren und hier
‫einfügen, aber es gibt eine schönere Möglichkeit, eine Methode zu erstellen, die einfach überprüft.
‫Spielt es eins oder der Spieler, wird es tatsächlich nur ein X oder Nein zurückgeben.
‫Lassen Sie uns also weitermachen und diese Methode erstellen.
‫Public static void Unter X oder oh, ich werde es einfach halten, und was ich hier brauche, ist eine ganze
‫Zahl.
‫Also brauche ich ein Interview und ich werde diesen einen Spieler nennen, also schneide ich diesen Code jetzt
‫aus.
‫Also welche Aussage, ich werde sie hier einfügen und ich werde diese hier nicht mehr brauchen, ich werde noch
‫Spieler brauchen und was ich tun werde, ist, einen neuen Charakter zu erstellen.
‫Spielerzeichen, und ich werde das jetzt auf ein leeres Zeichen setzen, oder ein leeres Zeichen, das nicht leer ist und es ist und es
‫ist ein Leerzeichen hier drin.
‫Wenn also ein Spieler gleich eins ist, können wir dies hier tatsächlich in einer Reihe tun.
‫Spielerzeichen wird sein.
‫Ex.
‫Andernfalls, wenn ein Spieler gleich spielen kann, wird Ihr Sohn warum oder wie in diesem Fall tatsächlich und jetzt sein.
‫Wir müssen auch unsere Eingabe verwenden, also muss ich eingeben und was für ein Typ war die Eingabe?
‫Eingabe war eine ganze Zahl, richtig.
‫OK, also werde ich hier Eingabe und Eingabe verwenden.
‫Und jetzt ersetze ich dieses X hier durch den Player-Sinus.
‫In Ordnung, also können wir jetzt diese Methode verwenden, anstatt diesen Code hier zweimal auszuführen.
‫Okay, jetzt haben wir diese Methode.
‫Wir müssen nicht einmal mehr den Fall wechseln, da wir den Player bereits hier haben.
‫Also sagen wir Spieler eins, und dann könnten wir einfach den Code hier reinführen.
‫Also machen wir das.
‫Das hat den Spieler hier eingestellt.
‫Und da wir hier einen etwas längeren Text haben, müssen wir die geschweiften Klammern verwenden, da wir einen
‫mehrzeiligen Code haben, den wir ausführen möchten.
‫Deshalb müssen wir dies eingeben.
‫OK, jetzt kann ich fortfahren und diese ganze switch case-Anweisung hier loswerden und ich muss nur meine
‫Methode hier aufrufen.
‫Die Aufrufmethode hieß also Enter X or.
‫Oh, und hier heißt es, geben Sie zuerst den Spieler X oder O ein.
‫Gut.
‫Das wird der Spieler sein und dann der Input und das wird der Input sein.
‫Also sage ich nur den Spieler und die Eingabe ist das, was ich hier bekommen möchte.
‫Dasselbe mache ich auch für den Player.
‫Und das wird es einfach entweder auf X oder O setzen.
‫Und es wird den Code für mich richtig ausführen.
‫Und übrigens, wir können das loswerden, weil wir es bereits ersetzt haben, also brauchen wir das
‫nicht mehr.
‫In Ordnung, jetzt lassen Sie uns die Benutzereingaben überprüfen, da wir dies noch nicht tun.
‫Also hier drin möchte ich ein weiteres Do while erstellen, do while und was ist das while?
‫Was ist also die Bedingung?
‫Es ist die Eingabe.
‫Richtig ist falsch.
‫Solange die Eingabe falsch ist, möchte ich es erneut versuchen.
‫Hier drin werden wir den Spieler bitten, seinen Code einzugeben und.
‫Ja, um voranzukommen.
‫Deshalb ergänze ich das hier einfach.
‫Tröste das richtig.
‫Und Spieler an der Position Null.
‫Welcher Spieler ist also an der Reihe, wählen Sie Ihr Feld.
‫Und jetzt müssen wir die Eingabe des Benutzers erhalten.
‫Ich werde also die Eingabekonvertierung in INT 32 verwenden und die Konsole verwenden, die die Zeile liest.
‫Ich möchte also die Eingabe des Benutzers erhalten und diese in unsere Eingabe umwandeln.
‫Es wird also diese Zeichenfolge verwenden und eine ganze Zahl daraus machen und in der Eingabe speichern.
‫Und jetzt können wir weitermachen und Eingaben verwenden.
‫Übrigens verwenden wir hier bereits input, aber das ist kein Problem, da es die do while-Schleife ist.
‫Es wird also zu dieser Eingabe gelangen und sie in das ändern, was wir eingegeben haben.
‫Zuerst wird es Null sein, dann wird es erneut überprüft und dann wird es sein, was wir
‫eingegeben haben.
‫Gut.
‫Das wird also unser Schlüssel hier und jetzt sein.
‫Lass es uns laufen lassen.
‫Mal sehen was passiert.
‫Gut.
‫Da sind wir also.
‫Und es zeigt nicht den Text, den wir gerade geschrieben haben.
‫Also diese ganze Zeile hier.
‫Rechts.
‫Aber wenn ich die Eingabetaste drücke, wird es angezeigt.
‫Und das liegt daran, dass wir noch den Schlüssel hier drin haben.
‫Also, sagte Field, das hatten wir früher, damit wir immer noch sehen konnten, was in unserem Programm oder in unserem Spiel
‫ist.
‫Und wenn ich es jetzt los werde, geht es uns gut.
‫Also, Spieler eins Wählen Sie Ihr Feld aus und ich gebe nur eins ein.
‫Zum Beispiel heißt es jetzt, dass der Spieler Ihr Feld auswählen soll, und ich werde diese verschiedenen Felder verwenden.
‫Was noch nicht passiert ist, dass unser Text noch nicht aktualisiert wird.
‫Darum müssen wir uns also kümmern.
‫Dazu müssen wir nun unsere Konsole leeren.
‫Also tröste nicht, was hier passieren wird.
‫Und jetzt müssen wir unser Feld jedes Mal setzen, wenn wir uns in dieser Do-Schleife befinden.
‫Das set-Feld sollte also nicht nur einmal in unserem main ausgeführt werden, sondern jedes Mal, wenn
‫wir uns in der Schleife befinden.
‫Das bedeutet, dass wir hier einfach das Feld setzen.
‫Lassen Sie es uns jetzt erneut ausführen.
‫Bitte wählen Sie Ihr Feld aus.
‫Und ich werde einfach, sagen wir, sechs verwenden.
‫Jetzt ist es an der Reihe und so kann ich jetzt sehen, dass plötzlich sechs hereingekommen sind.
‫Jetzt sollten vier eingegeben werden, wenn ich das nächste Mal etwas eingebe.
‫Und da sind wir.
‫Wir haben also immer noch das Problem, dass es aktualisiert wird.
‫Zu spät.
‫Es wird nicht aktualisiert, nachdem der Benutzer es eingegeben hat, aber es wird danach aktualisiert.
‫Schauen wir uns also an, wie wir das lösen können.
‫Und das liegt daran, dass dieses Feld ist, bevor wir den Spieler überprüfen.
‫Also machen wir das.
‫Jetzt checken wir den Player und dann machen wir das im Feld.
‫Lassen Sie es uns jetzt erneut ausführen.
‫Wählen wir also ein Feld aus.
‫Ich wähle Feld fünf und wir sehen, dass jetzt Null oder tatsächlich Nein ist.
‫Jetzt wählt Spieler zwei sechs.
‫Das ist jetzt ein X.
‫Drei wird ein altes sein, zwei wird ein X sein und so weiter.
‫Also haben wir diese Funktionalität.
‫Was uns jedoch noch fehlt, ist die Möglichkeit zu überprüfen, ob der Benutzer etwas erlaubt hat oder nicht, denn
‫was ich noch tun kann, ist, dass ich überschreiben kann.
‫Nehmen wir an, Spieler 1 wählt einen Spieler aus, um diesen erneut auszuwählen.
‫Wie Sie jetzt von einem alten ran zu einem X sehen können, wird Spieler 1 sagen, OK, jetzt möchte ich dieses Feld
‫haben.
‫Also wird er es betreten.
‫Was wir jetzt tun müssen, ist zu überprüfen, ob ein Spieler bereits etwas eingegeben hat, und
‫wenn er es getan hat, möchten wir nicht, dass der andere Spieler dieses Feld überschreibt oder überschreibt.
‫Das ist also etwas, was wir in dieser do while-Schleife tun müssen, denn hier überprüfen wir,
‫ob die Eingabe korrekt ist, und können die Eingabe falsch setzen, wenn der Benutzer nicht den richtigen Wert eingegeben hat.
‫Übrigens können wir, wenn wir schon dabei sind, auch ein Problem beheben, das wir hier haben.
‫Wenn ich also eingebe, sagen wir G, dann stürzt mein Programm ab.
‫Ich habe also diese Eingabe, die einen Fehler erzeugt, damit wir das mit einem Try-and-Catch erhalten, damit wir das Problem mit
‫einem try-Catch lösen können.
‫Und dies wird ein sehr, sehr einfacher Versuchsfang sein.
‫Ich werde es also nicht komplizierter machen.
‫Und das einzige, was ich tun werde, ist, dass ich es tue.
‫Irgendwie direkt auf die Konsole, rechte Zeile, bitte eine Zahl eingeben.
‫Wenn das jetzt noch mal jemand macht, werde ich etwas eingeben, OK?
‫Es stürzt noch nicht ab, aber es schreibt auch nicht auf die Konsole, weil es danach zurückgesetzt wird.
‫Oder ist es nicht?
‫Nun ja, es wird ziemlich zurückgesetzt, weil wir hier keine nächste Erklärung fordern.
‫Als nächstes müssen wir diesen Fehler beheben.
‫Jetzt müssen wir überprüfen, ob die Eingabe eins und das Spielfeld ist.
‫An dieser Position, also bei Null Null, das ist die Eins-Position, ist es immer noch ein Zeichen von Eins, und wir brauchen
‫hier eine weitere Klammer.
‫Das ist also ein Fall.
‫Dann sagte input, richtig zu wahr und jetzt müssen wir dasselbe
‫mit jedem einzelnen Feld machen, das wir haben.
‫Wenn also die Eingabe gleich zwei ist und das Spielfeld an diesem Feld an dieser Position noch offen ist, wird
‫es null sein.
‫Eins ist immer noch eine Zwei, dann mach bitte weiter und sagte die Eingabe auch zu Drew richtig.
‫Und hier fehlt mir noch ein Gleichheitszeichen.
‫OK, das müssen wir jetzt mehrmals kopieren und einfügen, damit wir jeden Fall erfassen können.
‫Also drei, vier, fünf, sechs.
‫Und hier drin.
‫Ich bin hier sieben auf einen Fehler gestoßen.
‫Acht.
‫Und neun und jetzt muss ich natürlich auch hier diese Positionen ersetzen und diese
‫Zeichen anpassen.
‫Also sieben, acht, neun.
‫Jetzt haben wir die Drei eine Null zu den Stürmern bei einer Null.
‫Dann war fünf auf eins eins eins eins war eigentlich sechs mit eins zu dieser eins war zwei null.
‫Musste eins und zwei zu zwei, also haben wir jetzt alle richtigen Fälle.
‫Wenn alles gut ist und wir jetzt ein elsea brauchen, also stimmt etwas nicht, also möchten wir den
‫Benutzer darüber informieren.
‫Also trösten Sie diese rote Linie und Sie geben falsche Eingaben ein.
‫Bitte verwenden Sie ein anderes Feld und wir können auch sicherstellen, dass Eingabe richtig auf falsch gesetzt ist.
‫Was wir hier also tatsächlich tun können, ist, die Region zu schaffen, also werde ich diese Region nennen und sie
‫wird und.
‫Gleich nach diesem Stück hier und in der Region.
‫Lassen Sie mich das tun, und jetzt möchte ich auch darüber informieren, was diese Region macht und wie sie getestet wird oder ob
‫das Feld bereits belegt ist, denn das ist die Idee hinter dieser ganzen Region oder hinter diesem ganzen Wildcode, den
‫wir hier haben, den Kontrollen, OK, wird dieser Kraftstoff entnommen oder nicht?
‫Wenn es belegt ist, dann tun Sie etwas anderes.
‫Wenn es nicht belegt ist, fahren Sie fort und führen Sie es erneut aus.
‫Mal sehen, dass man einen Spieler verwendet, um erneut zu versuchen, einen zu verwenden, und es heißt, falsche Eingabe, bitte
‫ein anderes Feld verwenden.
‫Also benutzt er das jetzt immer, OK?
‫Und wie Sie sehen, kann ich einfach die verschiedenen Werte eingeben und alles scheint gut zu sein.
‫Aber wie Sie auch sehen können, hat Spieler 1 bereits zweimal gewonnen.
‫Also hat er hier gekreuzt.
‫Das müssen wir als nächstes überprüfen.
‫Also müssen wir prüfen, ob es einen Gewinner gibt und lassen Sie uns eine neue Region erstellen.
‫Direkt unter besagtem Feld, wo wir nach dem Gewinner suchen.
‫Also hier, neue
‫Region und ich gehe in die Region und direkt in die Region und hier drin habe ich die gesamte
‫Codecheck-Gewinnbedingung.
‫Und wie machen wir das?
‫Nun, wir müssen überprüfen, welche Charaktere die verschiedenen Spieler haben.
‫Also hatten wir diesen hier Spieler für den Spieler unterschrieben.
‫Einer ist ein X-Vier-Spieler, zwei ist ein O.
‫Also, was wir jetzt überprüfen müssen.
‫Oder war es tatsächlich der richtige Weg?
‫Ja, für Spiel eins ist es ein zusätzliches Spiel, zwei ist ein oh, das sind also die richtigen Charaktere.
‫Was wir hier also überprüfen müssen, oder ich werde es mit einem Array verwenden
‫oder es mit einem Array erstellen Spielercharaktere sind ein X und ein O, und jetzt für jeden Charakter, den ich für jeden Char-Player-Char in Spieler-Chars habe, Ich
‫möchte die Gewinnbedingung überprüfen.
‫Das wird also prüfen, ob es für ein X wahr ist oder ob es für ein Out gilt.
‫Also checken wir hier einfach OK, gewinnt Spieler eins oder gewinnt Spieler zwei.
‫Und das tun wir,
‫indem wir prüfen, ob Spiel null null gleich Spieler-Char ist.
‫Und Spielfeld
‫Null Eins ist gleich Spieler Cha und auch Spielfeld hatte Null, Zwei ist gleich Spieler CHA.
‫Also, wenn das der Fall ist, dann mach weiter und führe etwas Code aus, also schreibe ich hier vorerst
‫einfach so etwas wie S. W. , wir haben einen Sieger.
‫Gut.
‫Ich möchte das nur testen, bevor wir die ganze if-Anweisung schreiben, die viel, viel länger ist.
‫Spieler 1 wird also die erste Reihe gewinnen, weil dies die einzige Straße ist, die wir hier betreten haben.
‫Falls also für alle drei Felder in dieser Zeile das Zeichen gleich ist, haben wir einen Gewinner.
‫Das ist also so ziemlich das Einzige, was wir hier eingestellt haben.
‫Also werde ich sagen, OK, Spieler eins wird eins sein.
‫Spieler zwei wird für Spieler sein.
‫Eins wird zwei, fünf und drei sein.
‫Und wir haben einen Gewinner.
‫Sie sehen also, dass die erste Reihe voller Nullen oder Nullen ist, das bedeutet, dass wir einen Gewinner haben.
‫Und jetzt müssen wir das durch all die verschiedenen Bedingungen ersetzen, die wir haben
‫können.
‫Also mit all den verschiedenen Stellungen und wenn man sich das Spiel anschaut, öffne ich es einfach nochmal.
‫Die möglichen Gewinnbedingungen sind eins, zwei, drei, vier, fünf, sechs, sieben, acht, neun.
‫Dann haben wir sieben fünf drei eins fünf neun eins vier sieben, zwei, fünf, acht und drei sechs neun.
‫Wir haben also eins, zwei, drei, sechs.
‫Plus zwei, also haben wir acht verschiedene Bedingungen, unter denen wir einen Sieger haben, und das ist so ziemlich das, was
‫wir hier tun müssen.
‫Wir müssen dies also achtmal mit den verschiedenen Optionen erstellen.
‫Also werde ich hier damit aufhören.
‫Und jedes Mal müssen wir eine unterschriebene Bestellung verwenden, da dies die Bedingungen für den Bestellgewinn sind.
‫Also werde ich das noch sechsmal machen.
‫Wir haben also eins, zwei, drei, vier, fünf, sechs, sieben, acht.
‫Das ist gut.
‫Und jetzt, wie gesagt, die verschiedenen Bedingungen sind Null, Null und so weiter.
‫Das Gleiche nun mit der Eins-Null-Eins-Eins und Eins-Zwei, dann mit einer dritten Reihe, Zwei zu Zwei Null
‫Zwei Eins und Zwei Zwei.
‫Dann haben wir die horizontalen von oben nach unten.
‫Also null null, dann eins null und zwei null.
‫Dann haben wir eins und eins tatsächlich null und eins, sorry, null eins.
‫Dann eins eins und eins zwei null, zwei zu eins und zwei zwei, und jetzt haben
‫wir die diagonalen Einsen, also null null, dann prüfen wir bei null null, dann eins eins und zwei zwei.
‫Und endlich haben wir.
‫Eins, zwei, eins, eins und.
‫Auf Null, das sollten also die Bedingungen sein, die wir haben und jetzt müssen wir nur noch prüfen, wer eine hat.
‫Was wir hier also überprüft haben, ist diese lange Aussage.
‫Wenn Spieler, Charakter oder Spieler-Char gleich einem X ist, wissen wir, dass Spieler zwei eins hat.
‫So hat die Konsole rote Linie auch in einem neuen Linienspieler eine.
‫Und hier muss ich tatsächlich sehr vorsichtig sein.
‫Gut.
‫Das ist also der einzige Fall.
‫Und der andere Fall ist, dass der andere Spieler gewonnen hat.
‫Also werde ich hier einfach Els verwenden und es wird sagen, dass Spieler 1 gewonnen hat.
‫Und ich möchte auch hier aus dem Spiel ausbrechen.
‫Also breche hier ein.
‫Lassen Sie uns es also ausführen und sehen, ob wir das tatsächlich reproduzieren können.
‫Nehmen wir an, wir wollen die diagonale haben.
‫Also eins, zwei, fünf, drei, neun.
‫Und wir sehen, dass Spieler eins einen hat.
‫Was wir jetzt wollen, ist, das Spiel zurückzusetzen und eine neue Runde zu erstellen, damit die Spieler
‫wieder laufen und spielen können.
‫Und was wir auch nicht behandelt haben, ist ein Unentschieden.
‫Wir müssen also noch die Auslosung abdecken.
‫Aber zuerst setzen wir das Feld zurück, sobald wir einen Gewinner haben.
‫Was ich also tun möchte, ist, bevor ich ausbreche, das Feld zurückzusetzen.
‫Also hier, um Feld zurückzusetzen und um ein Feld zu setzen, haben wir bereits eine Funktion dafür oder eine Methode.
‫Wir haben diese Set-Field-Methode erstellt, die genau das tut.
‫Es setzt das Feld noch einmal.
‫Aber was es noch nicht tut, es setzt unser Spielfeld nicht zurück, weil unser Spielfeld derzeit auf einen bestimmten Wert
‫eingestellt ist.
‫Dies könnte also ein X sein, dies könnte ein O sein und so weiter.
‫Um sicherzustellen, dass wir immer zurücksetzen können, müssen wir das kopieren.
‫Und es ist eine Standardversion.
‫Und ich werde dieses Spielfeld initial nennen.
‫So ist es anfangs, und das ist das, was wir ständig überschreiben.
‫Jetzt brauchen wir also eine andere Methode, die das Zurücksetzen durchführt, und die
‫Zurücksetzungsmethode wird als öffentliches statisches Void-Reset-Feld bezeichnet.
‫Und was ich hier tun muss, ist zuallererst, dass ich mein Spielfeld auf die Spielfeld-Initiale setzen muss.
‫So wie es anfangs war und dann kann ich mein Feld einstellen.
‫Jetzt setzen wir das Spiel zurück, sobald der Spieler gewonnen hat und das ist hier drin.
‫Spieler eins hat also eins oder Spieler zwei hat eins.
‫Also lasst uns hier einfach zurücksetzen.
‫Feld zurücksetzen.
‫Übrigens sollten wir dem Spieler oder dem Benutzer vielleicht auch sagen, dass er das Spiel zurücksetzen kann.
‫Also bitte die rechte Zeile trösten und oder eine beliebige Taste drücken, um das Spiel zurückzusetzen.
‫Und er würde nur sagen.
‫Konsole dachte Ricky, und hinterher, wo Sie das Spiel einstellen.
‫Okay, testen wir es.
‫Wählen Sie Ihr Feld eins, zwei, fünf drei neun Spieler eins hat ein Spiel.
‫Bitte drücken Sie eine beliebige Taste, um das Spiel zurückzusetzen.
‫Ich drücke eine beliebige Taste und da sind sie.
‫Wir haben das Spiel zurückgesetzt und jetzt sind die Spieler an der Reihe, ein Spieler an der Reihe, wie Sie hier sehen können, wählen Sie Ihr
‫Feld aus.
‫Oh, versuchen wir es noch einmal.
‫Wie Sie sehen können, haben wir jetzt die andere Reihenfolge.
‫Spielen Sie zwei als eins.
‫Bitte drücken Sie eine beliebige Taste, um das Spiel zurückzusetzen.
‫Toll, wenn ich etwas Falsches eingebe und hier immer noch dieser Fehler angezeigt wird, aber das ist in Ordnung.
‫Und genau das wollte ich.
‫Also fange ich es.
‫Ich fange den Fehler mit dem Versuch.
‫Aufholen hatte.
‫Jetzt bleibt also nur noch eines übrig, und zwar ein Unentschieden und es gibt viele Möglichkeiten, dieses Problem zu
‫lösen.
‫Und am einfachsten ist es, eine Variable namens Turns zu erstellen.
‫Und diese Variable wird einfach halten.
‫Die Anzahl der Runden, die wir bereits nacheinander gespielt haben, ist gleich Null.
‫Am Anfang haben wir also null Umdrehungen.
‫Und jedes Mal, wenn wir das Feld zurücksetzen oder das Feld setzen, möchten wir die Umdrehungen um eins erhöhen.
‫Denn wann wird diese Methode aufgerufen?
‫Lass uns nachsehen, sagte Field.
‫Es heißt Jedes Mal, wenn wir in die Do While-Schleife gehen, und das nur, wenn der Benutzer eine korrekte Eingabe
‫gemacht hat.
‫Wenn wir nun dieses Wendungsfeld haben, müssen wir auch darauf achten, dass wir dieses Wendungsfeld zurücksetzen, sobald wir unser
‫gesamtes Feld zurückgesetzt haben.
‫Mit Feld meine ich, dass dies das Feld unseres Spiels ist.
‫Aber Abschreckung ist ein Feld, weil es eine globale Variable ist.
‫Rechts.
‫Also möchte ich die Spielzüge zurücksetzen, sobald wir das Spiel zurückgesetzt haben.
‫Also Feld zurücksetzen, sagen wir, dass die Drehungen gleich Null sind oder genauer gesagt, weil wir die Drehungen bereits um eins
‫erhöhen.
‫Wir müssen es gleich danach tun.
‫Jetzt müssen wir nur noch prüfen, ob diese Bedingung wahr ist.
‫Hier hatten wir also die Gewinnbedingung if an elz und hier diese if-Anweisung und hier haben wir die GuV-Anweisung.
‫Wenn wir also keinen Gewinner haben, haben wir eine Drohne.
‫Oder genauer gesagt, die schwer fassbaren Drehungen sind gleich 10.
‫Dann haben wir ein Unentschieden.
‫Was wir hier sagen, ist also dasselbe, was wir hier tun.
‫Wir müssen auch aus dem Spiel ausbrechen und das Spiel zurücksetzen.
‫Also Forschungsfeld und.
‫Wir sollten dem Spieler mitteilen, dass es keinen Gewinner gab, also werde ich hier einfach als Text ziehen.
‫Okay, jetzt haben wir noch ein Problem im Spiel, also lasst uns zuerst ein Unentschieden bekommen.
‫Lassen Sie uns zuerst die Auslosung überprüfen.
‫Also eins, zwei, drei, vier.
‫Sechs, fünf.
‫Acht, neun und sieben, und wir sehen, dass wir betrunken sind, das ist in Ordnung, drücken Sie eine beliebige Taste, um das Spiel zurückzusetzen, das auch
‫funktioniert.
‫Versuchen wir es jetzt noch einmal.
‫Nun, eigentlich nicht versuchen, sondern gewinnen.
‫Und wir sehen Spieler zwei als einer, der die Eingabetaste drückt und unser Spiel nicht zurückgesetzt wird.
‫Und das hat mit unserer statischen Variablen hier zu tun.
‫Also diese Charakter-Spielfeld-Initiale.
‫Und was ich tun muss, ist, es hier loszuwerden und es aufzuheben, um eine
‫lokale Variable zu erstellen, die sich in unserem Reset-Feld befindet.
‫Also erstelle ich einfach diese Spielfeld-Initiale und setze sie in mein Spielfeld ein.
‫Testen wir das also noch einmal.
‫Eins zwei drei vier fünf sechs sieben.
‫Spiel man hat eins.
‫Okay, jetzt, eins, zwei, drei, vier, fünf, sechs, sieben.
‫Zwei spielen ist eins.
‫Und Ricky und Sie sehen, es wird zurückgesetzt.
‫Nun, etwas, was ich herausgefunden habe, wurde getestet und sah, dass es immer noch einen kleinen Fehler gab, der
‫zwei, eins, drei ist.
‫Vier, dann fünf, sechs und acht.
‫Und wie Sie sehen können, haben wir eine Bedingung, bei der der Spieler einen hat, aber er ist nicht so aufgeholt oder
‫hier nicht gefangen oder gefangen.
‫So kann es sehen, dass Spieler zwei einen hat.
‫Also obwohl Spieler eins eins mit der Null Null Null hat.
‫Oh.
‫Es gibt also noch ein kleines Problem mit meinen Bedingungen hier.
‫Und Sie haben es vielleicht schon früher herausgefunden.
‫Also zeige ich Ihnen, wie Sie das beheben können.
‫Und das sollte diese Bedingung hier sein.
‫Also null eins, dann ist es eins.
‫Und dieser sollte nicht eins zwei sein, aber es sollte zwei eins sein.
‫Jetzt testen wir es noch einmal.
‫Mal sehen, ob wir diese Bedingung erfassen, also eins, zwei, drei, fünf, vier, acht, und wir sehen Spieler zwei als
‫eins.
‫Gut.
‫Das haben wir also und ja, das ist es also.
‫Unser Spiel läuft und es tut was es soll.
‫Es gibt natürlich einige Dinge, die Sie noch verbessern könnten.
‫Also zum Beispiel dieses Zeichen.
‫Also übergeben wir eine Eingabe und wir überprüfen diese Eingabe noch einmal, wir erstellen ein Zeichenzeichen und so weiter.
‫Aber wir könnten es noch einfacher machen, also nehmen wir den Spieler selbst hier nicht mit.
‫Aber was wir nehmen, ist ein Charakter, der das Spielerzeichen oder das Spielerzeichen ist.
‫Das sollte es also sein.
‫Es könnte dasselbe sein.
‫Das Spielerzeichen macht also mehr Sinn, weil wir es hier verwendet haben.
‫Dann müssten wir also nicht den ganzen Code hier erstellen.
‫Also lass uns das loswerden.
‫Und stattdessen, wenn wir diese Methode aufrufen, was wir hier tun, übergeben wir das Zeichen.
‫Also für Spieler eins sagten wir, dass es das O war, denke ich, und für Spieler zwei war es das X, also wird das
‫dasselbe bewirken.
‫Und jetzt haben wir unsere Codezeilen ein wenig reduziert und Sie können den Code sogar noch weiter
‫verbessern.
‫Aber das war nur ein Code, von dem ich denke, dass Sie in der Lage sein sollten, basierend auf dem, was Sie bisher in diesem
‫Kurs gelernt haben, zu schreiben.
‫Alles klar, ich hoffe, Sie schaffen das, auch wenn es in Ihrem Fall ganz anders aussah und teilen
‫Sie bitte Ihre Lösung oder wenn Sie meine Lösung, die ich hier habe, übernommen und verbessert haben, teilen
‫Sie dies bitte als Gut.
‫Und ja, das ist es also so ziemlich.
‫Ein ziemlich langes Video.
‫Ich weiß das.
‫Aber ich hoffe, du hast viel daraus gelernt.
‫Und selbst wenn Sie es nicht selbst gemacht haben, haben Sie es einfach mitverfolgt und versucht, es zu bauen.
‫Wir sehen uns also im nächsten Video.
‫Wo wir uns mit einem anderen Thema befassen.
‫Wir sehen uns also dort.