Die Präsentation wird geladen. Bitte warten

Die Präsentation wird geladen. Bitte warten

© 2004 Pohlig Informatik Kurse 11-13 1 Bestimmung des ggT zweier Zahlen Bestimmung nach Definition – Implementierung Euklidscher Algorithmus – Implementierung.

Ähnliche Präsentationen


Präsentation zum Thema: "© 2004 Pohlig Informatik Kurse 11-13 1 Bestimmung des ggT zweier Zahlen Bestimmung nach Definition – Implementierung Euklidscher Algorithmus – Implementierung."—  Präsentation transkript:

1 © 2004 Pohlig Informatik Kurse Bestimmung des ggT zweier Zahlen Bestimmung nach Definition – Implementierung Euklidscher Algorithmus – Implementierung Aufwand – Effizienz von Algorithmen Erweiterung der Klasse Mathematik die Methode ggt(int a, int b)

2 © 2004 Pohlig Informatik Kurse Übung Nr. 1 (Aufgabenblatt) import info1.*; public class GgT1{ public static void main(String[] args){ int ggT = 1; System.out.print("erste Zahl: "); int a = Console.in.readInt(); System.out.print("zweite Zahl: "); int b = Console.in.readInt(); for (int i = 1; i <= Math.min(a,b); i++){ if ((a%i==0)&&(b%i==0)) ggT = i; } System.out.println(ggT); } Lösung: Variante 1 Konsolen-Eingabe der Zahlen, deren ggT bestimmt werden soll. Prüft mit der 1 beginnend, ob i die Zahlen a und b restlos teilt. Ende bei der Kleineren der beiden. Teilt i a und b restlos, so kommt i als ggT in Frage. Der letzte i-Wert ist der gesuchte ggT. Er wird am Schluss ausgegeben.

3 © 2004 Pohlig Informatik Kurse Test Geben Sie für a den Wert und für B den Wert ein Es dauert eine geraume Zeit, bis das Ergebnis erscheint. Wir bauen in unser Programm eine Stoppuhr ein, die die Zeit stoppt, die zur Durchführung des Algorithmus benötigt wird. Wir benutzen dazu ein Objekt der Klasse StoppUhr. Benutze deren Methoden starten() und stoppen(). Wenn das Objekt eineStoppuhr heißt. Lässt sich gestoppte Zeit mit System.out.println(eineStoppUhr) auf dem Bildschirm ausgeben.

4 © 2004 Pohlig Informatik Kurse Variante 2 eineStoppUhr.starten(); for (int i = 1; i <= Math.min(a,b); i++){ if ((a%i==0)&&(b%i==0)) ggT = i; } eineStoppUhr.stoppen(); System.out.println(ggT); System.out.println(eineStoppUhr); Starten und Stoppen der StoppUhr Ausgabe der gestoppten Zeit StoppUhr eineStoppUhr = new StoppUhr(); … Deklarartion und Erzeugen eines StoppUhr-Objekts

5 © 2004 Pohlig Informatik Kurse Effizienz prüfen

6 © 2004 Pohlig Informatik Kurse Euklid Lebensdaten: ca. 365 – ca. 300 Möglicherweise verbirgt sich hinter dem Namen Euklid mehrere Personen. 13 Bücher zu den Elementen zusammengefasst. Axiomatischer Aufbau der Mathematik. Formulierung von Algorithmen und deren Beweise

7 © 2004 Pohlig Informatik Kurse Raffael Raffael ( : Die Schule von Athen, Vatikanische Museen) Euklid unterrichtet seine Schüler. Als Vorlage für Euklid diente Raffel das Portrait von Bramante, einem der Bauleiter des Peterdomes in Rom

8 © 2004 Pohlig Informatik Kurse Der erweiterte Euklidsche Algorithmus Gesucht ggT(792,75) 792 = = = = = = 3 =3 eineStoppUhr.starten(); int r; do{ r = a%b; a = b; b = r; } while(b!=0); a b r

9 © 2004 Pohlig Informatik Kurse Effizienz prüfen

10 © 2004 Pohlig Informatik Kurse Effiziente Methode in die Klasse Mathematik übernehmen public static int ggT(int a, int b){ int ggT = 1; int r; do{ r = a%b; a = b; b = r; } while(b!=0); return a; } import info1.*; public class GgTTest { public static void main (String[] args) { System.out.print("1. Zahl: "); int a = Console.in.readInt(); System.out.print("2. Zahl: "); int b = Console.in.readInt(); System.out.println("der ggT("+a+","+b+") ist: "+ Mathematik.ggT(a,b)); } }


Herunterladen ppt "© 2004 Pohlig Informatik Kurse 11-13 1 Bestimmung des ggT zweier Zahlen Bestimmung nach Definition – Implementierung Euklidscher Algorithmus – Implementierung."

Ähnliche Präsentationen


Google-Anzeigen