main
luciacanzian 2023-01-12 13:57:41 +01:00
parent e941502182
commit c893a7ce59
4 changed files with 195 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/org.eclipse.jdt.internal.debug.ui.launcher.StandardVMType/JavaSE-17">
<attributes>
<attribute name="module" value="true"/>
</attributes>
</classpathentry>
<classpathentry kind="src" path="src"/>
<classpathentry kind="output" path="bin"/>
</classpath>

View File

@ -0,0 +1,17 @@
<?xml version="1.0" encoding="UTF-8"?>
<projectDescription>
<name>SemesteraufgabeCanzian</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,158 @@
import java.io.BufferedWriter;
import java.io.File;
import java.io.FileNotFoundException;
import java.io.FileOutputStream;
import java.io.IOException;
import java.io.OutputStreamWriter;
import java.util.ArrayList;
import java.util.HashMap;
import java.util.Scanner;
public class User {
//Private Attribute
private double gewicht;
private int koerpergroesse;
private String name;
private double bmi = gewicht/(koerpergroesse*koerpergroesse);
public double ziel;
public ArrayList <Integer> streckenListe = new ArrayList<>();
//Getter/Setter-Methoden
public double getGewicht() {
return gewicht;
}
public void setGewicht(int gewicht) {
this.gewicht = gewicht;
}
public int getKoerpergroesse() {
return koerpergroesse;
}
public void setKoerpergroesse(int koerpergroesse) {
this.koerpergroesse = koerpergroesse;
}
public String getName() {
return name;
}
public void setName(String name) {
this.name = name;
}
public double getBmi() {
return bmi;
}
public void setBmi(int bmi) {
this.bmi = bmi;
}
//Konstruktor
public User (String name, double gewicht, int koerpergroesse, double ziel) {
this.name = name;
this.gewicht = gewicht;
this.koerpergroesse = koerpergroesse;
this.ziel = ziel;
}
//Methoden
//tostring Methode
public String toString() {
return String.format("%s: %.2f kg, %d cm. Mein Ziel ist es, %.2f km im Monat zu fahren.",name,gewicht,koerpergroesse,ziel);
}
//Methode1
public static HashMap<String,User> userListe = new HashMap<>();
public static void userkontoanlegen() {
Scanner sc = new Scanner (System.in);
System.out.println("Schön, dass du da bist! Bitte gebe folgende Angaben ein:");
System.out.println("Dein Name, dein aktuelles Gewicht in kg und deine Koerpergroesse in cm.");
System.out.print("Deine Angaben: ");
String [] input = sc.nextLine().split(",");
System.out.println("Dein Konto wurde angelegt! Jetzt brauche ich nur noch dein Monatsziel. Wie viel möchtest du in einem Monat radeln? Bitte gebe deine Angeben in km ein!");
double ziel = Double.parseDouble(sc.nextLine());
User us1 = new User(input[0],Double.parseDouble(input[1]),Integer.parseInt(input[2]),ziel);
userListe.put(input[0], us1 );
System.out.println("Prima! Hier nochmal dein Userkonto: "+us1);
sc.close();
}
public static void zeigeKonto() {
Scanner sc = new Scanner (System.in);
System.out.print("Bitte gebe deinen Namen ein: ");
String name=sc.nextLine();
System.out.println(userListe.get(name));
/*if (userListe.containsKey(name)) {
} else {
System.out.printf("Bis jetzt hat noch keiner mit dem Namen %s einen Konto angelegt!",name);
}*/
}
//Methode2
public static String berechneGeschwindigkeit () {
Scanner sc = new Scanner (System.in);
System.out.println("Bitte gebe die Strecke, die du gefahren bist in km und die Sessiondauer in Minuten:");
System.out.print("Deine Angaben: ");
String [] input = sc.nextLine().split(",");
double geschwindigkeit = (Double.parseDouble(input[0])*10)/Double.parseDouble(input[1]);
return String.format("Deine durschnittliche Geschwindigkeit war: %.2f", geschwindigkeit);
}
//Methode3
public static void ermittlePerformance (double geschwindigkeit) {
if (geschwindigkeit==35) {
System.out.println("Gut gemacht!");
} else if (geschwindigkeit==30) {
System.out.println("Weiter so! Nächstes Mal schaffst du sicher 35 km/h!");
} else if (geschwindigkeit==25) {
System.out.println("Muskelkater vom letzten Mal gehabt? Du schaffst das!");
} else if (geschwindigkeit==20) {
System.out.println("Schade! Aber nicht aufgeben!");
}
}
//Methode4
public static double berechneKalorienverbrauch (double strecke, double gewicht) {
double kalorienverbrauch = strecke*gewicht*0.9;
return kalorienverbrauch;
}
//Methode5
public static void speichereStrecke (int strecke) throws IOException {
BufferedWriter streckeimMonat = new BufferedWriter(new OutputStreamWriter(new FileOutputStream( "SemesteraufgabeCanzian/src/monatsliste.txt", true)));
streckeimMonat.write(strecke);
streckeimMonat.close();
}
//Methode6
public void fügeindieArrayList () throws Exception {
Scanner sc = new Scanner (new File ("SemesteraufgabeCanzian/src/monatsliste.txt"));
while (sc.hasNext()) {
streckenListe.add(Integer.parseInt(sc.nextLine()));
}
}
//Methode7
public void ermittleLaengsteStrecke () throws Exception {
fügeindieArrayList();
double laengsteStrecke = 0;
for (int i = 0; i<=streckenListe.size();i++) {
if (streckenListe.get(i)>laengsteStrecke) {
laengsteStrecke = streckenListe.get(i);
}
}
System.out.printf("Die laengste Strecke bis jetzt ist %f",laengsteStrecke);
}
//Methode8
public void wievielbiszumZiel () throws Exception {
fügeindieArrayList();
for (int h = 0; h<=streckenListe.size();h++) {
ziel -= streckenListe.get(h);
}
}
//Methode9
/*public void angabenändern() {
Scanner sc = new Scanner (System.in);
System.out.println("Welche Angaben möchtest du verändern? Name, Gewicht, Koerpergroesse oder Ziel?");
String antwort = sc.nextLine();
if (antwort.equalsIgnoreCase("name")) {
}
}*/
}

View File

@ -0,0 +1,10 @@
public class userinterface {
public static void main(String[] args) {
User.userkontoanlegen();
User.zeigeKonto();
}
}