Beiträge von mnts

    Mal wieder ne Python Aufgabe:

    Gegeben sind die Größe eines Feldes. Also z.B. 5*5 Felder. Über dieses Feld Fliegen verschiedene Figuren, von denen wir jeweils Abflugzeit, Startfeld und Richtung erhalten. Jede Figur braucht 1 min um ein Feld zu überfliegen und fliegt immer hin und her über das gesamte Feld, ändert dabei jedoch nie seine Richtung. Das Programm soll die Felder in einer Farbe markieren, die nie überflogen werden, sowie die, bei denen es 30 min Spielraum zwischen den Überfliegungen gibt, in einer anderen Farbe. Am Schluss soll es noch alle Felder in einer wieder anderen Farbe markieren, bei denen es keinen Zeitraum von 30 min zwischen den Überfliegungen gibt.



    Hoffentlich ist dies verständlich formuliert.



    Vielen Dank im vorraus MNTS

    Wir brauchen:
    1. Ein Befehl, der Zahlen aus der 1. Variable in eine neuerstellte Variable einsteckt, und aus der 1. die Zahl löscht (ausschneiden)
    2. Er soll alle Zahlen die maximal 3 Einheiten größer sind als die kleinste dort einfügen.
    3. Wenn es keine passenden Zahlen mehr gibt, wiederholt er den Vorgang mit den verbleibenden Zahlen.


    Wir haben jetzt das Problem, dass das (i) nur jede zweite Zahl bearbeitet.


    Code:




    • x = [2,5,7,9,3,5]


    • y = []


    • while len(x) is not 0:


    • minX = min(x)


    • print(minX)


    • for i in x:


    • if i <= minX+3:


    • y.append(i)


    • x.remove(i)


    • print(x)


    • y.append(-1)


    • print(y)










    Nun die Frage [Blockierte Grafik: https://www.python-forum.de/images/smilies/icon_question.gif] :
    Womit kann man (i) ersetzen oder wie soll man den code verändern?
    Danke im vorraus


    In English:
    You saw that code. The (i) just works on every 2nd number, but we need it to work on everything...
    Now the question: With what to exchange the (i) or how to change the code?


    (sorry my english is really bad...)