ggT

aus ZUM-Wiki, dem Wiki für Lehr- und Lerninhalte auf ZUM.de
Wechseln zu: Navigation, Suche

Das gleiche Programm, jedoch werden die Parameter als Alternative mit java.util.Scanner eingelesen. --Axel Gruenhagen 16:01, 30. Aug. 2009 (UTC) <java> public class Ggt {

   /*
    * Hauptprogramm:
    */
   public static void main(String[] args) {
           try {
               System.out.println("Ermittlung des ggT, die Eingabewerte werden abgefragt.");
               Scanner inputScanner = new Scanner(System.in);
               System.out.print("Erste Zahl: ");
               int ersteZahl = inputScanner.nextInt();
               System.out.print("Zweite Zahl: ");
               int zweiteZahl = inputScanner.nextInt();
               // berechne ggT mit der Funktion "ggt()"
               int ergebnis = ggt(ersteZahl, zweiteZahl);
               schreibeErgebnis(ersteZahl, zweiteZahl, ergebnis);
           } catch (Exception e) {
               
               System.out.println("Es duerfen leider nur Integer (Ganzzahlen) eingegeben werden.");
           }
           return;
   }
   /*
    * Berechnung des ggT zweier Zahlen
    * nach dem Euklidischen Algorithmus
    */
   private static int ggt(int zahl1, int zahl2) {
       while (zahl2 != 0) {
           if (zahl1 > zahl2) {
               zahl1 = zahl1 - zahl2;
           } else {
               zahl2 = zahl2 - zahl1;
           }
       }
       return zahl1;
   }
   // Ausgabe des Ergebnisses:
   private static void schreibeErgebnis(int ersteZahl, int zweiteZahl, int ergebnis)
   {
       StringBuilder ergebnisStrBuilder = new StringBuilder("Der ggT von ");
       ergebnisStrBuilder.append(ersteZahl);
       ergebnisStrBuilder.append(" und ");
       ergebnisStrBuilder.append(zweiteZahl);
       ergebnisStrBuilder.append(" ist ");
       ergebnisStrBuilder.append(ergebnis);
       System.out.println(ergebnisStrBuilder.toString());
       return;
   }

} </java>