Matroids Matheplanet Forum Index
Moderiert von Bilbo matph
Matroids Matheplanet Forum Index » Informatik » Seltsames Verhalten der Schleife
Autor
Schule Seltsames Verhalten der Schleife
Bekell
Aktiv Letzter Besuch: in der letzten Woche
Dabei seit: 05.09.2008
Mitteilungen: 2489
  Themenstart: 2021-07-24

Ich dachte, alles stimmt, aber Pustekuchen! Alles stimmt am Anfang, aber in Version 105. sind nur noch Nullen. Ab Version 71, (Wo die 3 auf die 3 springt), wird die 3 nicht mehr markiert.... Was mach ich falsch? \sourceon PythonBekellcode \numberson Länge=29 # länge PZkleinerlL=[] # enthält PZkleinern mydic={} # enthält die Version Stelle als Key und Belegung (liste) als value version={} nr=0 for zahla in range(1,4,1): for zahlb in range(1,6,1): for zahlc in range(1,8,1): for key in range(1,Länge+1): # Hier macht er in alle keys eine 0 mydic[key]=[0] for key in mydic: if key%3==zahla: mydic[key].append(3)# hier macht er die 3-en in die Valueliste if key%5==zahlb: mydic[key].append(5)# hier macht er die 5-en in die Valueliste if key%7==zahlc: mydic[key].append(7)# hier macht er die 7-en in die Valueliste nr+=1 print("Nr:",nr,"Version",zahla,",",zahlb,",",zahlc) print("Bestückung der Zeilen",mydic) mydic.clear() \sourceoff


   Profil
DerEinfaeltige
Senior Letzter Besuch: in der letzten Woche
Dabei seit: 11.02.2015
Mitteilungen: 2964
  Beitrag No.1, eingetragen 2021-07-24

Da bspw. key%3 niemals 3 ergeben kann, passiert ab dann nichts mehr. Vielleicht meinst du \sourceon Python if key%3 == zahla%3: ... \sourceoff Eine Schrittweite von 1 ist in range übrigens unnötig. PS.: Wenn du einen Code wenigstens als Pythoncode hier posten würdest, wäre er zumindest einen Tick besser zu lesen.


   Profil
Bekell
Aktiv Letzter Besuch: in der letzten Woche
Dabei seit: 05.09.2008
Mitteilungen: 2489
  Beitrag No.2, vom Themenstarter, eingetragen 2021-07-24

\quoteon(2021-07-24 13:25 - DerEinfaeltige in Beitrag No. 1) PS.: Wenn du einen Code wenigstens als Pythoncode hier posten würdest, wäre er zumindest einen Tick besser zu lesen. \quoteoff Es ist doch in Python...


   Profil
Bekell
Aktiv Letzter Besuch: in der letzten Woche
Dabei seit: 05.09.2008
Mitteilungen: 2489
  Beitrag No.3, vom Themenstarter, eingetragen 2021-07-24

\quoteon(2021-07-24 13:25 - DerEinfaeltige in Beitrag No. 1) Da bspw. key%3 niemals 3 ergeben kann, passiert ab dann nichts mehr. \quoteoff hats nicht gebracht.. \quoteon Vielleicht meinst du \sourceon Python if key%3 == zahla%3: ... \sourceoff \quoteoff hab's probiert... sieh unten, es funzt nicht \quoteon Eine Schrittweite von 1 ist in range übrigens unnötig. \quoteoff hab sie entfernt ... \sourceon Python \numberson Länge=29 # länge PZkleinerlL=[] # enthält PZkleinern mydic={} # enthält die Version Stelle als Key und Belegung (liste) als value version={} nr=0 for zahla in range(0,3): for zahlb in range(0,5): for zahlc in range(0,7): for key in range(1,Länge+1): # Hier macht er in alle keys eine 0 mydic[key]=[0] for key in mydic: if key%3==zahla%3: mydic[key].append(3)# hier macht er die 3-en in die Valueliste if key%5==zahlb%5: mydic[key].append(5)# hier macht er die 5-en in die Valueliste if key%7==zahlc%7: mydic[key].append(7)# hier macht er die 7-en in die Valueliste nr+=1 print("Nr:",nr,"Version",zahla+1,zahlb+1,zahlc+1) print("Bestückung der Zeilen",mydic) mydic.clear() \sourceoff Er sollte so anfangen, das mydic so anfängt: {1: [0,3,5,7], jetzt sieht es so aus: Nr: 1 Version 1 1 1 Bestückung der Zeilen {1: [0], 2: [0], 3: [0, 3], 4: [0], 5: [0, 5], 6: [0, 3], 7: [0, 7], 8: [0], 9: [0, 3], 10: [0, 5], 11: [0], 12: [0, 3], 13: [0], 14: [0, 7], 15: [0, 3, 5], 16: [0], 17: [0], 18: [0, 3], 19: [0], 20: [0, 5], 21: [0, 3, 7], 22: [0], 23: [0], 24: [0, 3], 25: [0, 5], 26: [0], 27: [0, 3], 28: [0, 7], 29: [0]}


   Profil
Bekell
Aktiv Letzter Besuch: in der letzten Woche
Dabei seit: 05.09.2008
Mitteilungen: 2489
  Beitrag No.4, vom Themenstarter, eingetragen 2021-07-24

Wenn ich so mach: \sourceon Python \numberson Länge=29 # länge PZkleinerlL=[] # enthält PZkleinern mydic={} # enthält die Version Stelle als Key und Belegung (liste) als value version={} nr=0 for zahla in range(1,4): for zahlb in range(1,6): for zahlc in range(1,8): for key in range(1,Länge+1): # Hier macht er in alle keys eine 0 mydic[key]=[0] for key in mydic: if key%3==zahla: mydic[key].append(3)# hier macht er die 3-en in die Valueliste if key%5==zahlb: mydic[key].append(5)# hier macht er die 5-en in die Valueliste if key%7==zahlc: mydic[key].append(7)# hier macht er die 7-en in die Valueliste nr+=1 print("Nr:",nr,"Version",zahla,zahlb,zahlc) print("Bestückung der Zeilen",mydic) mydic.clear() \sourceoff sieht das Listing so aus: Nr: 1 Version 1 1 1 Bestückung der Zeilen {1: [0, 3, 5, 7], 2: [0], 3: [0], 4: [0, 3], 5: [0], 6: [0, 5], 7: [0, 3], 8: [0, 7], 9: [0], 10: [0, 3], 11: [0, 5], 12: [0], 13: [0, 3], 14: [0], 15: [0, 7], 16: [0, 3, 5], 17: [0], 18: [0], 19: [0, 3], 20: [0], 21: [0, 5], 22: [0, 3, 7], 23: [0], 24: [0], 25: [0, 3], 26: [0, 5], 27: [0], 28: [0, 3], 29: [0, 7]} Alles okay, aber... Nr: 105 Version 3 5 7 Bestückung der Zeilen {1: [0], 2: [0], 3: [0], 4: [0], 5: [0], 6: [0], 7: [0], 8: [0], 9: [0], 10: [0], 11: [0], 12: [0], 13: [0], 14: [0], 15: [0], 16: [0], 17: [0], 18: [0], 19: [0], 20: [0], 21: [0], 22: [0], 23: [0], 24: [0], 25: [0], 26: [0], 27: [0], 28: [0], 29: [0]} Da ist gar nichts mehr okay....


   Profil
DerEinfaeltige
Senior Letzter Besuch: in der letzten Woche
Dabei seit: 11.02.2015
Mitteilungen: 2964
  Beitrag No.5, eingetragen 2021-07-24

Mit \sourceon Python if key%3==zahla%3: ... \sourceoff solltest du die Ausgabe ... Nr: 104 Version 3 5 6 Bestückung der Zeilen {1: [0], 2: [0, 5], 3: [0, 3], 4: [0], 5: [0], 6: [0, 3], 7: [0, 5, 7], 8: [0], 9: [0, 3], 10: [0], 11: [0], 12: [0, 3, 5], 13: [0], 14: [0, 7], 15: [0, 3], 16: [0], 17: [0, 5], 18: [0, 3], 19: [0], 20: [0], 21: [0, 3, 7], 22: [0, 5], 23: [0], 24: [0, 3], 25: [0], 26: [0], 27: [0, 3, 5], 28: [0, 7], 29: [0]} Nr: 105 Version 3 5 7 Bestückung der Zeilen {1: [0, 7], 2: [0, 5], 3: [0, 3], 4: [0], 5: [0], 6: [0, 3], 7: [0, 5], 8: [0, 7], 9: [0, 3], 10: [0], 11: [0], 12: [0, 3, 5], 13: [0], 14: [0], 15: [0, 3, 7], 16: [0], 17: [0, 5], 18: [0, 3], 19: [0], 20: [0], 21: [0, 3], 22: [0, 5, 7], 23: [0], 24: [0, 3], 25: [0], 26: [0], 27: [0, 3, 5], 28: [0], 29: [0, 7]} erhalten.


   Profil
zippy
Senior Letzter Besuch: in der letzten Woche
Dabei seit: 24.10.2018
Mitteilungen: 2558
  Beitrag No.6, eingetragen 2021-07-24

\quoteon(2021-07-24 14:23 - Bekell in Beitrag No. 4) Wenn ich so mach: \quoteoff Es hat doch keinen Sinn, hier völlig planlos alle Varianten durchzuprobieren. Wenn du so etwas machst... \sourceon python if key%3 == zahla: \sourceoff ... dann muss zahla von 0 bis 2 laufen. Wenn du so etwas machst... \sourceon python if key%3 == zahla%3: \sourceoff ... dann kann zahla von 0 bis 2 oder von 1 bis 3 oder ... laufen, aber nicht von 1 bis 4. [Die Antwort wurde nach Beitrag No.4 begonnen.]


   Profil
Bekell
Aktiv Letzter Besuch: in der letzten Woche
Dabei seit: 05.09.2008
Mitteilungen: 2489
  Beitrag No.7, vom Themenstarter, eingetragen 2021-07-24

Danke [Die Antwort wurde nach Beitrag No.5 begonnen.]


   Profil
Bekell hat die Antworten auf ihre/seine Frage gesehen.
Bekell wird per Mail über neue Antworten informiert.

Wechsel in ein anderes Forum:
 Suchen    
 
All logos and trademarks in this site are property of their respective owner. The comments are property of their posters, all the rest © 2001-2021 by Matroids Matheplanet
This web site was originally made with PHP-Nuke, a former web portal system written in PHP that seems no longer to be maintained nor supported. PHP-Nuke is Free Software released under the GNU/GPL license.
Ich distanziere mich von rechtswidrigen oder anstößigen Inhalten, die sich trotz aufmerksamer Prüfung hinter hier verwendeten Links verbergen mögen.
Lesen Sie die Nutzungsbedingungen, die Distanzierung, die Datenschutzerklärung und das Impressum.
[Seitenanfang]