Guten Tag,
ich programmiere momentan einen Schaltjahrrechner.
Die Berechnung des Schaltjahres ist schon geschrieben und funktioniert ohne Probleme.
Mein Problem ist, dass ich mein Programm dazubringen muss nur vierstellige Zahlen akzeptiert;
also die Zahl 8 n. Chr. nur akzeptiert und weiterverarbeitet, wenn man die Zahl als 0008 eingibt.
Mein bisheriger Code sieht so aus:
package schaltjahrrechner;
import java.util.Scanner;
public class Schaltjahrrechner {
public static void main(String[] args) {
try{
Scanner keyboard=new Scanner(System.in);
int Jahr;
System.out.println("Geben Sie eine vierstellige Jahreszahl.");
System.out.println("Please enter a number of a year, the number has to have four digits.");
System.out.println("Bedingung: Die Zahl muss >= 0000 sein");
System.out.println("Condition: The number have to be >= 0000");
System.out.println("Bedingung: Die Zahl muss <= 2100 sein.");
System.out.println("Condition: The number has to be <=2100.");
Jahr=keyboard.nextInt();
if (Jahr<0) {System.out.println("Diese Zahl ist außerhalb des berechenbaren Zahlenraums.");
System.out.println("The number is not computable.");
}
else if (Jahr>=2101) {System.out.println("Diese Zahl ist außerhalb des berechenbaren Zahlenraums. ");
System.out.println("The number is not computalbe.");
}
else if (Jahr % 100 == 0) {System.out.print("Das Jahr " + Jahr + " ist kein ein Schaltjahr");
System.out.println("The year " + Jahr + " is not a leap-year.");
}
else if ((Jahr % 400 == 0)) {System.out.print("Das Jahr " + Jahr + " ist ein Schaltjahr");
System.out.println("The year " + Jahr+ " is a leap-year.");
}
else if (Jahr % 4==0) {System.out.print("Das Jahr " + Jahr + " ist ein Schaltjahr");
System.out.println("The year "+Jahr+ "is a leap-year.");
}
else {System.out.println("Das Jahr " + Jahr + " ist kein Schaltjahr");
System.out.println("The year" +Jahr+ "is not a leap-year.");
}
keyboard.close();
}catch (Exception e) {System.out.println("Bitte geben Sie eine Zahl ein, wie oben beschrieben");
System.out.println("Please enter a number with the conditions above.");
}}
}
Wie kann ich mein Code bearbeiten um eine Begrenzung der Zahlenanzahl auf nur 4 Ziffern zu erreichen. Alo dass mein Programm nur Zahlen akzeptiert, welche 4 Ziffernhat und sonst eine Fehlermeldung ausspuckt.
Vielen Dank und schönen Abend noch,
Der Maschbaustudent
ich programmiere momentan einen Schaltjahrrechner.
Die Berechnung des Schaltjahres ist schon geschrieben und funktioniert ohne Probleme.
Mein Problem ist, dass ich mein Programm dazubringen muss nur vierstellige Zahlen akzeptiert;
also die Zahl 8 n. Chr. nur akzeptiert und weiterverarbeitet, wenn man die Zahl als 0008 eingibt.
Mein bisheriger Code sieht so aus:
package schaltjahrrechner;
import java.util.Scanner;
public class Schaltjahrrechner {
public static void main(String[] args) {
try{
Scanner keyboard=new Scanner(System.in);
int Jahr;
System.out.println("Geben Sie eine vierstellige Jahreszahl.");
System.out.println("Please enter a number of a year, the number has to have four digits.");
System.out.println("Bedingung: Die Zahl muss >= 0000 sein");
System.out.println("Condition: The number have to be >= 0000");
System.out.println("Bedingung: Die Zahl muss <= 2100 sein.");
System.out.println("Condition: The number has to be <=2100.");
Jahr=keyboard.nextInt();
if (Jahr<0) {System.out.println("Diese Zahl ist außerhalb des berechenbaren Zahlenraums.");
System.out.println("The number is not computable.");
}
else if (Jahr>=2101) {System.out.println("Diese Zahl ist außerhalb des berechenbaren Zahlenraums. ");
System.out.println("The number is not computalbe.");
}
else if (Jahr % 100 == 0) {System.out.print("Das Jahr " + Jahr + " ist kein ein Schaltjahr");
System.out.println("The year " + Jahr + " is not a leap-year.");
}
else if ((Jahr % 400 == 0)) {System.out.print("Das Jahr " + Jahr + " ist ein Schaltjahr");
System.out.println("The year " + Jahr+ " is a leap-year.");
}
else if (Jahr % 4==0) {System.out.print("Das Jahr " + Jahr + " ist ein Schaltjahr");
System.out.println("The year "+Jahr+ "is a leap-year.");
}
else {System.out.println("Das Jahr " + Jahr + " ist kein Schaltjahr");
System.out.println("The year" +Jahr+ "is not a leap-year.");
}
keyboard.close();
}catch (Exception e) {System.out.println("Bitte geben Sie eine Zahl ein, wie oben beschrieben");
System.out.println("Please enter a number with the conditions above.");
}}
}
Wie kann ich mein Code bearbeiten um eine Begrenzung der Zahlenanzahl auf nur 4 Ziffern zu erreichen. Alo dass mein Programm nur Zahlen akzeptiert, welche 4 Ziffernhat und sonst eine Fehlermeldung ausspuckt.
Vielen Dank und schönen Abend noch,
Der Maschbaustudent