Mittelwert, Datei einlesen. ich verzweifle

  • Themenstarter Themenstarter Potte
  • Beginndatum Beginndatum
Status
Nicht offen für weitere Antworten.
P

Potte

Gast
Hallo allerseits, also ich habe folgendes Problem. Mein Programm läuft einfach nicht und ich weiß nicht warum ??

Kann mir einer bitte mal helfen. Ich setze es mal rein. Bin über jede Hilfe dankbar.
Eben zur Aufgabenstellung: Ich muss aus einer Zahlendatei , Median, Standardabweichung,Mittelwert ausrechnen !!

Code:
package package2;

import java.io.BufferedReader;
import java.io.FileNotFoundException;
import java.io.FileReader;
import java.io.IOException;

public class Statistic {
	
	protected double [] x;

    
    /*
     * globale Variablen
     */
    private double standardabweichung;
    private double median;
    private double mittelwert;
    private double[] liste;
    
    
    
    /*
     * Konstruktoren
     * Parameter XY das Double-Array
     */
    public Statistic(String meinDateiname){
    	x = new double[XY.length];
        for(int i = 0; i < x.length; i++) x[i] = XY[i];
      
    }
    
    /*
     * Methoden
     */  
    /**
     * Berechnet den Durchschnittswert der Zahlenfolge
     * @return den Durchschnittswert
     */
    public double meanValue()
    {
      double mean = 0.0;
      for(int i = 1; i < x.length; i++) mean += x[i];
      mean /= x.length;
      return mean;
    }

    public double berechneMittelwert(double[] values)
    
    	int i, n;
     	n=x.length;
     	double w=0;
     	for (i=0;i<n;i++) w+=x[i];
    		  w/=n;
    		  return mittelwert;
    	
 
    }
    
    public double berechneMedian(double[] values){
    	int h; // Hilfsvarialbe
    	double sum; // Summe
        int werte;
		h=(int) (werte/2);          

        if ((werte % 2) == 0) 
        {
           median = (liste[ h-1 ] + liste[ h]) /2;
        }
        else
        {
           median = liste[ h ];
        }
        return median; 
    }
    
    public double berechneStandardabweichung(double[] values){
        double standardabweichung = 0.0;
        double mean = meanValue();
        for(int i = 1; i < x.length; i++) standardabweichung += (x[i] - mean) * (x[i] - mean);
        standardabweichung = Math.sqrt(standardabweichung / (x.length - 1.0));
        return standardabweichung; 
    }
    
    public double[] leseDatei(String filename){
        double[] werte;
		return werte; 
    }
    

    public static void main(String[] args) {
        String meinDateiname = "Zahlen.txt";
        Statistic stat = new Statistic(meinDateiname);
        double[] meineWerte = stat.leseDatei(meinDateiname);
        double meinMittelwert = stat.berechneMittelwert(meineWerte);
        double meinMedian = stat.berechneMedian(meineWerte);
        double meineStabw = stat.berechneStandardabweichung(meineWerte);
        
        System.out.println("Mittelwert: " + meinMittelwert);
        System.out.println("Median: " + meinMedian);
        System.out.println("Standardabweichung: " + meineStabw);
    
		class DateiInArrayEinLesen { 
		  private StringBuilder sb; 
		  private String[] list; //String-Array zur Aufnahme des Textes 

		  public DateiInArrayEinLesen() { 
		    sb = new StringBuilder(); 
		    try { 
		      BufferedReader in = new BufferedReader(new FileReader("c:\\Zahlen.txt")); 
		      String str; 
		      while((str = in.readLine()) != null) { 
		         sb.append(str); //zeilenweise 
		         sb.append("\n"); 
		      } 
		      str = sb.toString(); 
		      System.out.println("Folgende Zahlen wurden eingelesen:\n"+str); 
		      list = str.split(" "); //Regex u. U.  noch anpassen! 
		      System.out.println("Zahlenliste:"); 
		      for(int i = 0; i < list.length; i++) { 
		        System.out.println(list[i]); 
		      } 
		    } 
		    catch(FileNotFoundException fnfe) { 
		      System.out.println("Datei nicht gefunden!"); 
		    } 
		    catch(IOException ioe) { 
		      System.out.println("Fehler beim Lesen!"); 
		    } 
		  } 
		}
		

	}

}
 
und mal wieder:

bitte sag was nicht funktioniert - werden Fehler geschmissen, wenn ja welche oder wie oder was...

je mehr infos du uns geben kannst um so eher bemüht sich einer es anzugehen und umso schneller können wir helfen.


erste Frage: was ist XY ? wo kommt das her usw?
 
liste cannot be resolved Statistic.java potte/src/package2 line 68
The local variable werte may not have been initialized potte/src/package2 line 67
local variable wSeverity Description Resource In Folder Location
Statistic.standardabweichung is never read locally line 16
may not have been initialized potte/src/package2 line 88 28. Oktober 2005
 
Ohne dass ich deinen Code angeschaut hätte:

Potte hat gesagt.:
liste cannot be resolved Statistic.java potte/src/package2 line 68
Die Variable "liste" gibts nicht... vielleicht meinst du "value"?

Potte hat gesagt.:
The local variable werte may not have been initialized potte/src/package2 line 67
Das Programm könnte so ablaufen, dass auf "werte" zugegriffen wird, ohne dass "werte" jemals irgendetwas zugewiesen wurde (-> was zum totalen Chaos führen würde). Du musst irgendwann mal "werte = ..." schreiben, möglichst vor Zeile 67 :wink:

Potte hat gesagt.:
Statistic.standardabweichung is never read locally line 16
Diese Variable wird nie verwendet, die kannst du ebensogut löschen.
 
Status
Nicht offen für weitere Antworten.

Neue Themen


Zurück
Oben