Ich bin in einer Anfänger-Python-Kurs, und meine Aufgabe ist es, print-variable ‚N‘ ist nach hinten mit einer ‚while‘ – Anweisung

Hier sind meine Anweisungen:

Geben wir Ihnen einen Wert, N. Sie ausgeben sollte jeden positiven Wert von N bis zum und einschließlich 0.

Und hier ist meine Aufgabe:

    # Get N from the command line
    import sys
    N = int(sys.argv[1])

    # Your code goes here
    counter = 0 
    while counter <= N:
     print(counter-N)
     counter = counter + 1

Meine Lösung Ausdrucke dieser:

Program Output

Program Failed for Input: 3
Expected Output: 3
2
1
0
Your Program Output: -3
-2
-1
0

Wie Sie sehen können, ich hab mir den Ausgang zu zeigen, -3, -2, -1, 0, sollte es doch 3, 2, 1, 0. Bitte denken Sie daran, dass ich bin ein Anfänger und mein code passieren muss mit einer ‚while‘ – Anweisung, und mein code muss eingegeben werden bei Codio. Vielen Dank im Voraus für etwaige Hilfestellungen.

  • So print(N-counter) statt?
InformationsquelleAutor T.Mic | 2017-11-14



3 Replies
  1. 2

    Da erwarten wir N den Wert höher zu sein, als wir die Zähler-Wert Zähler-N negativ wird.

    Versuchen Sie Folgendes:

     import sys
        N = int(sys.argv[1])
    
        # Your code goes here
        counter = 0 
        while counter <= N:
         print(N-counter)
         counter = counter + 1
    • Vielen Dank Biene-es hat funktioniert. Ich Schätze diese community, denn als student, bekommt man nicht viel Hilfe, und ich weiß, das Ziel ist zu lernen, aber wenn ich nicht etwas herausfinden nach ein paar Tagen, was soll ich tun? Jedenfalls nochmals vielen Dank!!!
  2. 1

    Nur Schritt nach unten von N bis 0:

    # Get N from the command line
    import sys
    N = int(sys.argv[1])
    
    # Your code goes here
    counter = N
    while counter >= 0:
     print(counter)
     counter -= 1
  3. 0

    Nur pass counter-N zu den abs Funktion:

    while counter <= N:
      print(abs(counter-N))
      counter = counter + 1

    Oder, benutzen Sie einfach N-counter:

    while counter <= N:
     print(N-counter)
     counter = counter + 1
    • Wat…. gerade bei der Verwendung von N – Zähler
    • warum benutzen Sie abs?
    • da der OP ist eine Programmiersprache für Anfänger, macht es Sinn, für einfache workarounds, die mehr mathematisch nachvollziehbar, wie der absolute Wert eher als Feintuning der Theke.
    • Ich glaube kaum, dass die Einführung einer neuen Funktion „mathematisch einfacher“ nur eine Umkehrung der Reihenfolge der Operanden, um loszuwerden, die negativen Vorzeichen. …
    • Ich glaube, dass in diesem Fall der absolute Wert ist intuitiver, während N-counter ist weiter Fortgeschritten.
    • N ist (vermutlich) einen positiven Wert. counter von 0 startet und geht bis zu N., So würde es „intuitiv“ machen Sinn, subtrahieren Sie die kleinere Zahl von der größeren.
    • Danke Euch allen für Eure Hilfe…print(N-Zähler) hat den trick!!!

Schreibe einen Kommentar

Deine E-Mail-Adresse wird nicht veröffentlicht. Erforderliche Felder sind mit * markiert.