Entwickler-Ecke
Sonstiges (.NET) - arrayinhalt teilweise vor veränderung schützen : Kniffel
darkangel1208 - So 29.11.09 11:50
Titel: arrayinhalt teilweise vor veränderung schützen : Kniffel
Wenn ich nun gewürfelt habe und ich würfel zur Seite legen möchte, bevor ich den Rest wieder in den Becher packe und erneut zu würfel, muss ich das ja irgendwie bewerkstelligen.
Nun möchte ich wissen, kann ich in einem Array ( Wurf [5] mit {1,1,2,5,6}) einigen Zahlen vor veränderung schützen, oder brauche ich einen Merker dazu.
z.B. ich habe per random in wurf {1,1,2,5,6}. Nun klicke ich auf die Picturbox(mit dem würfel wo die 6 drinne ist) und makiere ihn somit für die Ablage ( sprich kommt nicht mehr in dne Becher) Dann würfel ich erneut und die6 soll nun geschützt sein vor veränderung. sprich das trotz radom dort noch ne 6 steht, bis ich sie aus der Ablage wieder raus nehme.
C#-Quelltext
1: 2: 3: 4: 5: 6: 7: 8: 9: 10: 11: 12: 13: 14: 15:
| private void wurf_Click(object sender, EventArgs e) { int i; Random rnd = new Random(); for (i = 0; i < 5; i++) { wurf[i] = rnd.Next(1, 7); wurf[i] = rnd.Next(1, 7); anzeigen(wurf); } } |
Kilianus - So 29.11.09 12:16
Das musst du manuell ausimplementieren.
Im ersten Impuls würde ich sagen: stecke die würfel, die du behalten willst in ein eigenes array und zähle hinuntern, wieviele neue würfel du brauchst.
Oder: mach dir ein bool-Array, das so groß ist wie dein würfel-array und setze die stellen, die du schützen willst auf true. beim neu würfeln würfelst du dann nur die stellen aus, die im merker false sind.
ich glaube die zweite variante ist schöner und einfacher.
JüTho - So 29.11.09 14:21
Mein erster Impuls war der Verweis auf List<int>, weil eine solche Liste jederzeit erweitert oder verkürzt werden kann.
Aber in der gegebenen Situation (Kniffel) ist Array vielleicht doch sinnvoller. Dann möchte ich aber auf Array.Copy hinweisen, vor allem auf die Varianten mit Teilbereichen. Das soll bedeuten: Die Würfe, die du behalten willst, kommen in ein neues Array; die noch freien Würfe werden dort hinzugefügt; nach dem Würfeln wird nur noch mit diesem Array weitergearbeitet (nicht mit Kopieren, sondern nur mit Umbenennen).
Angesichts des Zeitdrucks ist es wohl einfacher, eine funktionierende Version zu erstellen und denkbare Verbesserungen in die Kommentare zu verlagern.
Gruß Jürgen
Entwickler-Ecke.de based on phpBB
Copyright 2002 - 2011 by Tino Teuber, Copyright 2011 - 2026 by Christian Stelzmann Alle Rechte vorbehalten.
Alle Beiträge stammen von dritten Personen und dürfen geltendes Recht nicht verletzen.
Entwickler-Ecke und die zugehörigen Webseiten distanzieren sich ausdrücklich von Fremdinhalten jeglicher Art!