Die Präsentation wird geladen. Bitte warten

Die Präsentation wird geladen. Bitte warten

© 2004 Pohlig Informatik Kurse 11-13 1 Thema: Fibonacci-Zahlen Leonardo Pisano, genannt Fibonacci geb. vermutlich 1170 – gest. vermutlich 1250 Ort: Pisa.

Ähnliche Präsentationen


Präsentation zum Thema: "© 2004 Pohlig Informatik Kurse 11-13 1 Thema: Fibonacci-Zahlen Leonardo Pisano, genannt Fibonacci geb. vermutlich 1170 – gest. vermutlich 1250 Ort: Pisa."—  Präsentation transkript:

1 © 2004 Pohlig Informatik Kurse Thema: Fibonacci-Zahlen Leonardo Pisano, genannt Fibonacci geb. vermutlich 1170 – gest. vermutlich 1250 Ort: Pisa

2 © 2004 Pohlig Informatik Kurse Übung 1 Notieren Sie die Seitenlängen der Quadrate, wenn das erste Quadrat eine Seitenlänge 1 hat. Setzen Sie die Folge fort. Erkennen Sie ein Bildungsgesetz?

3 © 2004 Pohlig Informatik Kurse Lösung 1, 1, 2, 3, 5, 8, 13, 21, 34, 55, fib(n) = fib(n-1) + fib(n-2) mit fib(1) = fib(2) = 1 2-fach-Rekursion Basisfall

4 © 2004 Pohlig Informatik Kurse Übung 2 Siehe Aufgabenblatt Lösung

5 © 2004 Pohlig Informatik Kurse Übung 3: Fibonacci-Demo-Programm import info1.*; public class FibonacciDemo{ public static void main(String[] args){ System.out.print("Geben Sie ein Zahl an: "); int a = Console.in.readInt(); System.out.println("fib("+a+") = " + fibonacci(a)); } private static int fibonacci(int a){ } if (a==1||a==2) return 1; else return fibonacci(a-1)+fibonacci(a-2); Lösung: rekursive Methode

6 © 2004 Pohlig Informatik Kurse Übung 4 Bauen Sie in das Demoprogramm eine Uhr ein, um den zeitlichen Aufwand bei der Berechnung von Fibonacci- Zahlen zu messen import info1.*; public class FibonacciDemoUhr{ public static void main(String[] args){ StoppUhr uhr = new StoppUhr(); System.out.print("Geben Sie ein Zahl an: "); int a = Console.in.readInt(); uhr.starten(); int fib = fibonacci(a); uhr.stoppen(); System.out.println("fib("+a+") = " + fib); System.out.println("Rechendauer: "+ uhr); } private static int fibonacci(int a){ if (a==1||a==2) return 1; else return fibonacci(a-1)+fibonacci(a-2); } Lösung:

7 © 2004 Pohlig Informatik Kurse Übung 5 Finden Sie eine grafische Darstellung, aus der man ablesen kann, was in welcher Reihenfolge berechnet wird, wenn man mit unserem Programm Fibonacci-Zahlen bestimmen lässt. Mögliche Lösung:

8 © 2004 Pohlig Informatik Kurse Übung 6 Finden Sie eine nicht rekursive Methode zur Berechnung der Fibonacci-Zahlen import info1.*; public class FibonacciDemo2 { //gültig bis n= 92 public static void main (String[] args) { System.out.print("a: "); int a = Console.in.readInt(); System.out.println("fib("+a+") = "+fibonacci(a)); } private static long fibonacci(int a){ long fib = 1; for (long fib1 = 1, fib2 = 1, i=3; i <= a; i++){ fib = fib1 + fib2; fib1 = fib2; fib2 = fib; } return fib; } Typ long, um größere Zahlen berechnen zu können Es können mehrere lokale Variable definiert werden


Herunterladen ppt "© 2004 Pohlig Informatik Kurse 11-13 1 Thema: Fibonacci-Zahlen Leonardo Pisano, genannt Fibonacci geb. vermutlich 1170 – gest. vermutlich 1250 Ort: Pisa."

Ähnliche Präsentationen


Google-Anzeigen