import java.util.Scanner;

public class ExceptionDemoKreis
{
    private Kreis kreis;

    public ExceptionDemoKreis()
    {
        kreisEinlesen();
        werteAusgeben();
    }

    public void kreisEinlesen()
    {
        Scanner scanner = new Scanner(System.in);

        while (kreis == null)
        {
            try
            {
                System.out.print("Geben Sie den Radius ein: ");
                double radius = scanner.nextDouble();

                kreis = new Kreis(radius);
            }
            catch (IllegalArgumentException ausnahme)
            {
                System.out.println
                        ("Fehler: " + ausnahme.getMessage());
            }
        }
    }

    public void werteAusgeben()
    {
        double radius, umfang, flaeche;
        
        System.out.println();
        radius = kreis.getRadius();
        System.out.println("Der Radius des Kreises betraegt: " + radius);

        umfang = 2 * radius * Math.PI;
        System.out.printf("Der Umfang betraegt %6.2f Einheiten%n",umfang);
        
        flaeche = radius * radius * Math.PI;
        System.out.printf("Die Flaeche betraegt %6.2f Einheiten%n",flaeche);
    }

    public static void main(String[] args)
    {
        new ExceptionDemoKreis();
    }
}