Witam. Uczę się programować w Javie i napotkałem pewien problem, otóż napisałem sobie kodzik, który po wybraniu Koła lub Prostokąta liczy promień, obwód, pole, ale gdy wpiszemy coś innego niż Koło lub Prostokąt program wyświetla błąd i przestaje działać i tutaj moje pytanko - jak zrobić aby program po wyświetleniu błędu z instrukcji else wykonywał się dopóki użytkownik nie wpisze poprawnej wartości ? Czy ten kod jest właściwy ?
Tutaj kodzik:
package pl.teleseil.pierwszy;
import java.util.Scanner;
public class Glowne {
private double obwod;
private double promien;
private double pole;
private double obwodprost;
private double poleprost;
private double prosta;
private double prostb;
public double ustawPromien(double r){
promien = r;
return promien;
}
public double obliczPole(){
pole = Math.PI*promien*promien;
return pole;
}
public double obliczObwod(){
obwod = 2*Math.PI*promien;
return obwod;
}
public void ustawAB(double a, double b){
prosta = a;
prostb = b;
return;
}
public double obliczPoleProstokata(){
poleprost = prosta*prostb;
return poleprost;
}
public double obliczObwodProstokata(){
obwodprost = 2*(prosta+prostb);
return obwodprost;
}
public static void main(String[] args) {
Scanner odczyt = new Scanner(System.in);
System.out.println("Wybierz: Koło lub Prostokąt");
String wybkolo = odczyt.nextLine();
if(wybkolo.equals("Koło")){
Glowne kolo = new Glowne();
System.out.println("Wprowadź promień");
int danap = odczyt.nextInt();
kolo.ustawPromien(danap);
System.out.println("Pole koła wynosi: "+kolo.obliczPole());
System.out.println("Obwód koła wynosi: "+kolo.obliczObwod());
}
else if(wybkolo.equals("Prostokąt")){
Glowne prostokat = new Glowne();
System.out.println("Wprowadź a");
int danaa = odczyt.nextInt();
System.out.println("Wprowadź b");
int danab = odczyt.nextInt();
prostokat.ustawAB(danaa, danab);
System.out.println("Pole prostokąta wynosi: "+prostokat.obliczPoleProstokata());
System.out.println("Obwod prostokąta wynosi: "+prostokat.obliczObwodProstokata());
}
else{
System.out.println("BLAD!! Wybierz Koło lub Prostokąt");
}
}
}