Waehrungsumrechner mit 10 Waehrungen.

master
Aliuy 2024-01-07 22:07:01 +01:00
commit 4cb54b9662
6 changed files with 183 additions and 0 deletions

View File

@ -0,0 +1,10 @@
<?xml version="1.0" encoding="UTF-8"?>
<classpath>
<classpathentry kind="con" path="org.eclipse.jdt.launching.JRE_CONTAINER">
<attributes>
<attribute name="module" value="true"/>
</attributes>
</classpathentry>
<classpathentry kind="src" path="src"/>
<classpathentry kind="output" path="bin"/>
</classpath>

View File

@ -0,0 +1 @@
/bin/

View File

@ -0,0 +1,17 @@
<?xml version="1.0" encoding="UTF-8"?>
<projectDescription>
<name>Semesteraufgabe, Währungsumrechner</name>
<comment></comment>
<projects>
</projects>
<buildSpec>
<buildCommand>
<name>org.eclipse.jdt.core.javabuilder</name>
<arguments>
</arguments>
</buildCommand>
</buildSpec>
<natures>
<nature>org.eclipse.jdt.core.javanature</nature>
</natures>
</projectDescription>

View File

@ -0,0 +1,2 @@
eclipse.preferences.version=1
encoding/<project>=UTF-8

View File

@ -0,0 +1,105 @@
import java.util.TreeMap;
import java.util.Scanner;
public class Semesteraufgabe {
public static void main(String[] args) {
Scanner input = new Scanner(System.in);
Waehrung euro = new Waehrung("Euro", 1, 1);
Waehrung dollar = new Waehrung("US-Dollar", 0.91, 1.10);
Waehrung pfund = new Waehrung("Britische Pfund", 1.16, 0.86);
Waehrung rubel = new Waehrung("Russische Rubel", 0.01, 98.75);
Waehrung franken = new Waehrung("Schweizer Franken", 1.07, 0.93);
Waehrung yen = new Waehrung("Japanische Yen", 0.0063, 158.49);
Waehrung lira = new Waehrung("Türkische Lira", 0.031, 32.57);
Waehrung zloty = new Waehrung("Polnische Zloty", 0.23, 4.36);
Waehrung krone = new Waehrung("Daenische Kronen", 0.13, 7.46);
Waehrung riyal = new Waehrung("Saudische Riyal", 0.24, 4.11);
TreeMap<String, Waehrung> waehrungen = new TreeMap<>();
waehrungen.put("us-dollar", dollar);
waehrungen.put("britischer pfund", pfund);
waehrungen.put("russischer rubel", rubel);
waehrungen.put("schweizer franken", franken);
waehrungen.put("japanischer yen", yen);
waehrungen.put("tuerkischer lira", lira);
waehrungen.put("polnischer zloty", zloty);
waehrungen.put("daenische krone", krone);
waehrungen.put("saudischer riyal", riyal);
waehrungen.put("euro", euro);
System.out.println("Hallo, was kann ich für sie tun \n" + "Wenn sie hilfe benötigen, schreiben sie 'Help'.");
while (true) {
String eingabe = input.nextLine();
if (eingabe.equalsIgnoreCase("help")) {
System.out.println("Waehrungen anzeigen: Zeigt alle Waehrungen unseres Systems an.");
System.out.println("Waehrung umrechnen: Rechnet Waehrungen ihrer Wahl um.");
System.out.println("Waehrungskurs: Zeigt den momentanen Kurs einer Währung im vergleich zum Euro an.");
System.out.println("Stop: Beendet das Programm.");
} else if (eingabe.equalsIgnoreCase("waehrungen anzeigen")) {
System.out.println(waehrungen.values());
System.out.println("Stand: 07.01.2024");
} else if (eingabe.equalsIgnoreCase("stop")) {
break;
} else if (eingabe.equalsIgnoreCase("Waehrungskurs")) {
System.out.println("Von welcher Waehrung möchten sie den Kurs sehen?");
String eingabe2 = input.nextLine();
String neweingabe2 = eingabe2.toLowerCase();
boolean a = waehrungen.containsKey(neweingabe2);
if (a == true) {
Waehrung waehrung = waehrungen.get(neweingabe2);
String name = waehrung.getName();
double kurs = waehrung.getUmrechnungsfaktorzueuro();
System.out.println("Momentan entspricht 1 " + name + " " + kurs + " Euro");
}
} else if (eingabe.equalsIgnoreCase("Waehrung umrechnen")) {
System.out.println("Welche Währung möchten sie umrechnen?");
String eingabe2 = input.nextLine();
String neweingabe2 = eingabe2.toLowerCase();
boolean a = waehrungen.containsKey(neweingabe2);
if (a == true) {
Waehrung eins = waehrungen.get(neweingabe2);
System.out.println("In welche Währung möchten sie umrechnen?");
String eingabe3 = input.nextLine();
String neweingabe3 = eingabe3.toLowerCase();
boolean b = waehrungen.containsKey(neweingabe3);
if (b == true) {
try {
Waehrung zwei = waehrungen.get(neweingabe3);
String name1 = eins.getName();
System.out.println("Wie viel " + name1 + " möchten sie umrechnen?");
String zahl = input.nextLine();
double menge = Double.parseDouble(zahl);
double umrechnungsfaktor1 = eins.getUmrechnungsfaktorzueuro();
double umrechnungsfaktor2 = zwei.getUmrechnungsfaktorvoneuro();
String name2 = zwei.getName();
double ergebniss = waehrungsumrechner(menge, umrechnungsfaktor1, umrechnungsfaktor2);
System.out.printf("Rechnet man " + menge + " " + name1 + " in " + name2
+ " um, so erhält man %.2f " + name2, ergebniss);
} catch (NumberFormatException E) {
System.out.println("Bitte geben sie eine Zahl ein. Verwenden sie '.' anstatt ','");
}
}else {
System.out.println(
"Diese Waehrung ist in unserem System nicht vorhanden, der Vorgang wurde abgebrochen. \n"
+ "Wenn sie hilfe benötigen, schreiben sie 'Help'.");
}
} else {
System.out.println(
"Diese Waehrung ist in unserem System nicht vorhanden, der Vorgang wurde abgebrochen. \n"
+ "Wenn sie hilfe benötigen, schreiben sie 'Help'.");
}
} else {
System.out.println("Unbekannter Befehl, versuchen sie es erneut");
}
}
}
public static double waehrungsumrechner(double menge, double umrechnungsfaktor1, double umrechnungsfaktor2) {
double end = menge * umrechnungsfaktor1;
end = end * umrechnungsfaktor2;
return end;
}
}

View File

@ -0,0 +1,48 @@
public class Waehrung {
String name;
private double umrechnungsfaktorzueuro;
private double umrechnungsfaktorvoneuro;
Waehrung (String name, double umrechnungsfaktorzueuro, double umrechnungsfaktorvoneuro) {
this.name = name;
this.umrechnungsfaktorzueuro = umrechnungsfaktorzueuro;
this.umrechnungsfaktorvoneuro = umrechnungsfaktorvoneuro;
}
@Override
public String toString() {
return name;
}
public String getName() {
return name;
}
public void setName(String name) {
this.name = name;
}
public double getUmrechnungsfaktorzueuro() {
return umrechnungsfaktorzueuro;
}
public void setUmrechnungsfaktorzueuro(double umrechnungsfaktorzueuro) {
this.umrechnungsfaktorzueuro = umrechnungsfaktorzueuro;
}
public double getUmrechnungsfaktorvoneuro() {
return umrechnungsfaktorvoneuro;
}
public void setUmrechnungsfaktorvoneuro(double umrechnungsfaktorvoneuro) {
this.umrechnungsfaktorvoneuro = umrechnungsfaktorvoneuro;
}
}