Aufgaben bearbeitet

This commit is contained in:
Marc Koch 2020-04-06 15:09:36 +02:00
parent 035ab6c0b8
commit 2e74f1c392
1 changed files with 83 additions and 0 deletions

83
src/gfn/marc/Main.java Normal file
View File

@ -0,0 +1,83 @@
package gfn.marc;
import javax.swing.*;
public class Main {
public static void main(String[] args) {
String vorname;
String nachname;
// Eingabe Vorname und Nachname
vorname = JOptionPane.showInputDialog(null, "Vorname",
"Ena").trim().replace("ä","ae").
replace("ö", "oe").replace("ü", "ue").
replace("Ä", "Ae").replace("Ö", "Oe").
replace("Ü", "Ue").replace("ß", "ss").toUpperCase();
nachname = JOptionPane.showInputDialog(null, "Nachname",
"Mustermann").trim().replace("ä","ae").
replace("ö", "oe").replace("ü", "ue").
replace("Ä", "Ae").replace("Ö", "Oe").
replace("Ü", "Ue").replace("ß", "ss").toUpperCase();
// Ausgabe von Vor- und Nachname + Stellenanzahl
System.out.println(vorname + " (" + vorname.toLowerCase() + ", " + vorname.length() + " Stellen)");
System.out.println(nachname + " (" + nachname.toLowerCase() + ", " + nachname.length() + " Stellen)");
// Ausgabe der gemeinsamen Stellenanzahl
System.out.println("Stellen: " + (vorname.length() + nachname.length()));
// Prüfung, ob Vor- oder Nachname "Muster" ist.
System.out.println("Initialien: " + vorname.charAt(0) + nachname.charAt(0));
if (vorname.equalsIgnoreCase("Muster") || nachname.equalsIgnoreCase("Muster")) {
System.out.println(vorname.equalsIgnoreCase("Muster") ? "Der Vorname ist \"Muster\"!" :
"Der Nachname ist \"Muster\"!");
} else {
System.out.println("Weder der Vorname noch der Nachname ist \"Muster\"");
}
System.out.println();
// Kartennummer generieren und ausgeben
String kartennummer = generiereKartennummer();
// String kartennummer = "1234-5678-9123-4560";
System.out.println(kartennummer);
// Maskierte Kartennummer ausgeben
System.out.println(maskiereKartennummer(kartennummer));
// Prüfung, ob Stellen 1-4 "5555" sind
if (kartennummer.substring(0,4).equals("5555")) {
System.err.println("ungültige Startkennung!");
}
if (kartennummer.startsWith("0") || kartennummer.endsWith("0")) {
System.err.println("ungültige Startkennung!");
}
}
public static String maskiereKartennummer(String kartennummer) {
String maske = "xxxx-xxxx-xxxx-";
kartennummer = kartennummer.substring(15,19);
return maske.concat(kartennummer);
}
public static String generiereKartennummer() {
StringBuilder kartennummer = new StringBuilder();
for (int i = 0; i < 4; i++) {
for (int j = 0; j < 4; j++) {
kartennummer.append(erzeugeZugallszahl());
}
kartennummer.append("-");
}
kartennummer.deleteCharAt(kartennummer.length() - 1);
return kartennummer.toString();
}
public static int erzeugeZugallszahl() {
return (int) (Math.random() * 9) + 1;
}
}