Array mit Zufallszahlen füllen...



  • Also erst mal vielen dank für die viele Hilfe ^^
    Na ja ich möchte eigentlich nicht das andere für mich die Hausaufgaben machen aber alleine bekomme ich das einfach nicht hin..

    Also bei mir gehen beide Codes nicht.. der erste steht das an folgenden stellen ";" erwartet wird:

    int groesste(int arr[])
    int[] erzeugeArray()

    Aber wenn ich ; hinmache ist es immer noch falsch.. wo genau muss es denn dann hin?

    Und beim anderen Code zeigt er mir mehrere Fehler an.. vielleicht baue ich ihn aber auch falsch ein..



  • Leonie schrieb:

    Und beim anderen Code zeigt er mir mehrere Fehler an.. vielleicht baue ich ihn aber auch falsch ein..

    Dann zeig doch mal deinen kompletten Code mitsamt Fehlermeldung, vllt. dann.



  • Mein Code muss mit Java 1.5 compiliert werden. Sonst klappen Sachen wie List<Integer> ... nicht.



  • KaraHead schrieb:

    Mein Code muss mit Java 1.5 compiliert werden. Sonst klappen Sachen wie List<Integer> ... nicht.

    Entweder das oder der Op hat vergessen ne Klasse drumrumzubauen.



  • class Test
    {
    	int groesste(int arr[])
    	{
    		int gr = arr[0];
    		for(int i = 1; i < 15; i++)
    			if(arr[i] > gr)
    				gr = arr[i];
    		return gr;
    	}
    
    	int[] erzeugeArray()
    	{
    		int arr[] = new int[20];
    		for(int i = 0; i < 15; i++)
    			arr[i] = (int)(Math.random()*9)+1;
    		return arr;
    	}
    
    	public Test()
    	{
    		int arr[] = erzeugeArray();
    		int groesste = groesste(arr);
    		for(int i = 0; i < 15; i++)
    			System.out.print(arr[i] + " ");
    		System.out.print("\n");
    		System.out.println(groesste);
    	}
    
    	public static void main(String args[])
    	{
    		new Test();	
    	}	
    }
    

    funktioniert einwandfrei bei mir. hab nichts geändert an den funktionen.



  • Ok ich hab jetzt ein Programm das soweit auch läuft.. nur hab ich immer noch das Problem mit der Zahl die am nächsten an den Mittelwert rankommt..

    Hier mal das Programm:

    public class Mittelwert {
    
      public static void main(String[] args) {
        long Feld[];
        int Elemente;
        long Maximum;
        long Minimum;
        float Mittelw;
    
        Feld = new long[20];
        Elemente = 15;
    
        System.out.println("Zufallszahlen");
        for (int i = 0; i < Elemente; i++) {
          Feld[i]= Math.round(50*Math.random());
          System.out.println(Feld[i]);
        }
    
        Maximum = Feld[0];
        for (int i = 1; i < Elemente; i++) {
          if (Feld[i] > Maximum) {
            Maximum = Feld[i];
          }
        }
        System.out.println("Maximum: " + Maximum);
    
        Minimum = Feld[0];
        for (int i = 1; i < Elemente; i++) {
          if (Feld[i] < Minimum) {
            Minimum = Feld[i];
          }
        }
        System.out.println("Minimum: " + Minimum);
    
        Mittelw = (Maximum - Minimum) / 2;
    
        System.out.println("Mittelwert: " + Mittelw);
    
      }
    }
    


  • Knall mal nicht nur irgendwelche Sätze und Probleme hier rein sondern sag wenigstens klipp und klar wo was nicht stimmt.
    Das kann man ja verlangen wenn man dir die "Hausaufgaben" macht 🙄



  • Das ist jetzt aber kein progammiertechnisches Problem oder?

    public int[] getNextToMiddle(int[] array, int middle) {
      int[] i = new int[2];
    
      for(int i = 0; nextToMiddle < array.length(); i++) {
        if(array[i] < middle  && array[i] < int[0]) {
          int[0] = array[i];
        }
        if(array[i] > middle  && array[i] > int[1]) {
          int[1] = array[i];
        }
      }
    
      return i;
    }
    

    So, jetzt hast du einmal die Zahl die kleiner ist als der Mittelwert und einmal die Zahl die größer ist 😉

    Auch wenn du die schon längst hast wie ich gerade sehe 🙄
    Boa bin ich heute durch den Wind...



  • Entschuldigung wenn ich mich nicht ganz so deutlich ausgedrückt habe.. x) aber das ist jetzt eigentlich schon noch ein Programmiertechnisches Problem..
    Da ich ja die Zahl die dem Mittelwert am nächsten ist brauche die aber auch wirklich vorkommt also nicht nur die Zahl allgemein...
    Aber wie drücke ich das in Java aus? Muss ich dann theoretisch eine Abfrage aller Zahlen machen um zu schauen wie weit sie vom Mittelwert entfern sind und dann die niedrigste Diferrenz ausgeben lassen oder gibt es da auch noch eine einfachere Methode?
    Oder ist bereits das was BugJoe geschrieben hat?

    Wenn nicht geb ich es einfach so ab.. ist ja fast komplett aber auf jeden Fall schon mal Danke an alle die mir geholfen haben und ein wenig ihrer kostbaren Zeit an einen Hoffnungslosen Fall wie mich verschwendet haben XD



  • Guckst du ein Posting über deinem, da steht wies geht 😉

    Mit dieser Methode bekommst du die Zahl die kleiner ist und am nähesten dran ist am Mittelwert und einmal die Zahl die größer ist als der Mittelwert und am nähesten drann. Jetzt musst du nur noch untersuchen welche davon letztendlich absolut am nächsten dran ist, aber dass darfst du jetzt selber machen 😉


Anmelden zum Antworten