Hallo,
ich hab ein kleines Porblem mit meinem Code. Wir sollen eine Applikation schreiben, in dem wir das arihtmetische und geometrische Mittel eines Feldes (welches randomisierte Zahlen enthält) ermitteln. Durch Fehlermeldungen weiß ich, dass ich das i in der while-Schleife (siehe Abschnitt 3) definieren muss, nur leider verstehe ich nicht, wie ich das umsetzen kann. Meine Gedanke war, da man ja in den Formlen für i = 1 startet, einfach einen int i = 1 bzw. i = 0 ( um im Feld bei 0 anzufangen). Allerdings fürht das zu der Fehlermeldung: variable x might not have been initialised.
Hoffentlich hab ihr Ideen und könnt mir helfen zu verstehen, wo genau das Problem liegt.
Es wäre gut zu wissen, dass ich bis vor ein paar Wochen nicht einmal wusste, was Java ist (also blutiger Anfänger). Die Erklärungen bitte so einfach wie möglich halten und auf dumme Nachfragen gefasst sein... 😅
ich hab ein kleines Porblem mit meinem Code. Wir sollen eine Applikation schreiben, in dem wir das arihtmetische und geometrische Mittel eines Feldes (welches randomisierte Zahlen enthält) ermitteln. Durch Fehlermeldungen weiß ich, dass ich das i in der while-Schleife (siehe Abschnitt 3) definieren muss, nur leider verstehe ich nicht, wie ich das umsetzen kann. Meine Gedanke war, da man ja in den Formlen für i = 1 startet, einfach einen int i = 1 bzw. i = 0 ( um im Feld bei 0 anzufangen). Allerdings fürht das zu der Fehlermeldung: variable x might not have been initialised.
Hoffentlich hab ihr Ideen und könnt mir helfen zu verstehen, wo genau das Problem liegt.
Es wäre gut zu wissen, dass ich bis vor ein paar Wochen nicht einmal wusste, was Java ist (also blutiger Anfänger). Die Erklärungen bitte so einfach wie möglich halten und auf dumme Nachfragen gefasst sein... 😅
Java:
public class Aufgabe2 {
public static void main(String[] args) {
//erster Abschnitt--------------------------
System.out.println("Bitte gebe eine Zahl n größer 1 ein");
int n = StdIn.readInt(); // int-wert wird von der Kommandozeile übernommen
if(n<0) { // wenn n<1: Fehlermeldung
System.out.println("n zu kein!");
return;
}
//zweiter Abschnitt-------------------------
int [] Feld = new int [n];
System.out.println("Array der Länge " +n +"ist: ");
for (int i =0; i<n; i++) {//mit Zufallszahlen aus dem Bereich 1 bis n gefüllt
Feld[i] = (int) (Math.random()*n)+1;
System.out.println(Feld[i]);
}
//Abschnitt3---------------------------------
double x;
double a=0;
double b=0;
double y=0;
while(i<=n && x>0) {
a=1.0/n*(x*i);//arithmetisches Mittel-Formel
y=Math.pow(x,i);//neuen Term benennen für "unter die Wurzel".
b=Math.pow(y,1/n);//Math.pow(y,1/n für n-te Wurzen von y
}
//vierter Abschnitt--------------------------
System.out.println(" arithmetische Mittel: " +a);
System.out.println("geometrische Mittel: " +b);
if(a>=b){
System.out.println("OK");
}
else {
System.out.println("WIDERLEGT!");
}
}
}