Links und Funktionen
Sprachumschaltung

Navigationspfad
Sie sind hier: Startseite / Lehre / WS 2015/16 / Einführung in die Programmierung / Material / Quadratzahl Demo


Inhaltsbereich

Quadratzahl Demo

Demonstration dreifach verschachtelter Schleifen mit Methodenaufruf dazwischen; live in der Vorlesung konstruiert.

Java source code icon Quadratzahlen.java — Java source code, 1 KB (1418 bytes)

Dateiinhalt

/*
 *  Einführung in die Programmierung
 *  LMU München, Lehrstuhl TCS
 *  Wintersemester 2015/16
 *
 *  Live in der Vorlesung programmierte
 *  Demonstration für verschachtelte Schleifen.
 */


public class Quadratzahlen {

    // Ein paar statische Konstanten für die Größe der Tabelle
    final static public int MAX_X     =  8;
    final static public int MAX_Y     = 10;
    final static public int MAX_WIDTH = (" "+(int) Math.round(Math.pow(MAX_X, (double) MAX_Y))).length();
    // Anzahl Stellen der größten Zahl + 1
    // Kann in statischer Klassenvariable berechnet werden, da benötigte Methoden alle statisch sind.

    public static void main(String[] args) {
        for (int x=1; x<=MAX_X; x=x+1) {
            // Zeile ausgeben
            for (int y=1; y<=MAX_Y; y=y+1) {
                // Spaltenwert ausgeben
                int pot = (int) Math.round(Math.pow(x, (double) y));
                String pot_str = widen(pot);
                System.out.print(pot_str);
            }
            System.out.println(""); // Zeilenvorschub
        }
    }

    public static String widen(int p) {
        // Auffüllen von links mit Leerzeichen
        String res = ""+p;
        while (res.length() < MAX_WIDTH) {
            res = " " + res;
        }
        return res;
        // Anmerkung: Übergabe von MAX_WIDTH nicht notwendig, wenn man MAX_WIDTH als Klassenvariable definiert.
    }
}

Artikelaktionen


Funktionsleiste