• 1
    Eingabe und Ausgabe
    • Aufgaben
  • 2
    Bedingungen
    • Aufgaben
  • 3
    For-Schleife
    • Aufgaben
  • 4
    Zeichenketten
    • Aufgaben
  • 5
    While-Schleife
    • Aufgaben
  • 6
    Listen
    • Aufgaben
  • 7
    2D-Arrays
    • Aufgaben
  • 8
    Wörterbücher
    • Aufgaben
  • 9
    Mengen
    • Aufgaben
  • 10
    Funktionen und Rekursion
    • Aufgaben
  • к

Lektion 5. While cycle

Schwierigkeit:

Aufgabe«Fibonacci-Zahlen berechnen»

💻 Python

Sie — ein Forscher in der Fantasy-Welt, der magische Kristalle untersucht. Sie haben herausgefunden, dass diese Kristalle nach einem besonderen Gesetz wachsen, das sehr an eine alte mathematische Folge erinnert.

  • Ganz am Anfang (Monat null) haben Sie keinen einzigen ganzen Kristall, nur magischen Staub. Das Ergebnis für 0 ist 0.
  • Bis zum Ende des ersten Monats bildet sich aus dem Staub 1 Kristall. Das Ergebnis für 1 ist 1.
  • Bis zum Ende jedes folgenden Monats entspricht die Anzahl der Kristalle der Summe der Kristalle der beiden vorherigen Monate.

Sie müssen ein Programm schreiben, das Ihnen hilft, das Wachstum der Kristalle vorherzusagen. Das Programm soll vom Benutzer die Nummer des Monats   n   abfragen und berechnen, wie viele ganze Kristalle Sie bis zum Ende dieses Monats haben werden.

Technische Anforderungen:

  1. Das Programm muss eine ganze Zahl   n   — die Nummer des Monats — abfragen.
  2. Die Berechnung muss mit einer   Schleife   while erfolgen.
  3. Das Programm soll Sonderfälle korrekt verarbeiten:   n = 0   und   n = 1 .
  4. Wenn der Benutzer eine negative Zahl oder Text anstelle einer Zahl eingibt, muss das Programm eine Fehlermeldung ausgeben:   "Error: entered incorrect value."
  5. Das Ergebnis muss im Format ausgegeben werden:   "The Fibonacci number for n = [month] equals: [result]"

 

Eingabeformat

Nummer des Monats & nbsp; n für die Berechnung (eine ganze nicht-negative Zahl).

Ausgabeformat

Die endgültige Anzahl der Kristalle (die Fibonacci-Zahl) in Form einer formatierten Zeile oder Fehlermeldung (Zeile).

Beispiel

Eingabe

10

Ausgabe

Die Fibonacci-Zahl für n = 10 ist: 55

Hinweis

There will be no clue here, decide for yourself!

main.py
Test 1
Test 2
Test 3
Test 4
Test 5
Test 6
Test 7
Test 8
Test 9
Test 10
Entwicklerlösung
# Запрашиваем у пользователя номер месяца в виде строки
n_str = input()

# Проверяем, состоит ли введенная строка только из цифр
if not n_str.isdigit():
    # Если нет, выводим сообщение об ошибке
    print("Ошибка: введено некорректное значение.")
else:
    # Преобразуем строку в целое число
    n = int(n_str)

    # Обрабатываем базовые случаи n=0 и n=1
    if n == 0:
        # Для 0-го месяца результат 0
        result = 0
        print(f"Число Фибоначчи для n = {n} равно: {result}")
    elif n == 1:
        # Для 1-го месяца результат 1
        result = 1
        print(f"Число Фибоначчи для n = {n} равно: {result}")
    else:
        # Инициализируем первые два числа последовательности
        a, b = 0, 1
        # Инициализируем счетчик, начинаем со второго числа, так как 0 и 1 уже есть
        count = 1

        # Запускаем цикл, который будет работать, пока мы не достигнем нужного месяца n
        while count < n:
            # Вычисляем следующее число Фибоначчи
            # a становится b, а b становится суммой старых a и b
            a, b = b, a + b
            # Увеличиваем счетчик на 1
            count += 1
        
        # После завершения цикла в переменной 'b' находится n-ое число Фибоначчи
        result = b
        print(f"Число Фибоначчи для n = {n} равно: {result}")

🎉 Glückwunsch! 🎉

Du hast die Aufgabe hervorragend gelöst! Es war schwierig, aber du hast die Lösung gefunden. Du bist dem Meister einen Schritt näher! Mach weiter so.

AD

Werbung

red-snake blue-snake green-snake

Führe deinen Code aus...

KI-Assistent

Hallo! Ich bin dein Programmier-Assistent. Stelle mir beliebige Fragen zu Python — ich erkläre Funktionen, Methoden und helfe dir bei der aktuellen Aufgabe!