Ankündigung

Einklappen
Keine Ankündigung bisher.

Java Hilfe (Arrays)

Einklappen
X
 
  • Filter
  • Zeit
  • Anzeigen
Alles löschen
neue Beiträge

    Java Hilfe (Arrays)

    Hallo liebe Rm-Gemeinde,

    ich benötige bitte Hilfe bezüglich einer Aufgabe meines Fernstudiums.
    Die Aufgabe sollte denke ich recht einfach für ein Entwickler/Java"Nerd" sein.

    Würde auch ein 5er oda so per paypal senden.

    2. Aufgabe:
    Gegeben seien die beiden Klassen „Vektor“ (hat nichts mit „java.util.Vector“ zu tun) und „ArrayTest“:
    Spoiler: 
    public class Vektor {

    private int x;
    private int y;
    private int z;

    //Konstruktordefinitionen
    public Vektor() {
    this(0,0,0);
    }

    //Besitzen Methoden- oder Konstruktorenparameter die gleichen
    //Namen wie Instanzfelder, müssen die Instanzfelder über this
    //angesprochen werden
    public Vektor(int x, int y, int z)
    {
    this.x = x;
    this.y = y;
    this.z = z;
    }

    public void anzeige()
    {
    System.out.println("("+ x +","+ y +","+ z +") ");
    }
    }

    Spoiler: 
    public class ArrayTest
    {
    //Ein Array-Objekt muss mit dem new-Operator
    //ueber die Angabe einer festen Grösse erzeugt werden
    private static int[][] x = new int [2][3];

    //Alternative Deklaration:
    //private static int[] x[] = new int [2][3];

    //Klassenmethode für die Anzeige eines
    //zweidimensionalen Arrays
    public static void anzeige(int[][] x)
    {
    ... hier ergänzen
    //Zeilenumbruch ausgeben
    System.out.println();
    }
    System.out.println();
    } //ende anzeige()

    public static void main(String args[])
    {
    System.out.println("Zweidimensionale Arrays von primitiven"
    + " Datentypen");
    //Inititialisierungen von zweidimensionalen Arrays
    x = new int[][]{ {1, 2, 3}, {4,5,6} };

    ... hier ergänzen

    //Elemente von Referenzarrays müssen immer einzeln
    //instanziert werden
    System.out.println("Eindimensionales Array vom Typ der "
    + "Klasse Vektor");
    Vektor[] v = new Vektor[2];

    ... hier ergänzen

    //An den Vektor-Objekten wird die Methode anzeige() der
    //Vektor-Klasse aufgerufen

    ... hier ergänzen
    //Zeilenumbruch definieren
    System.out.println();

    }//ende main()

    }//ende class ArrayTest

    Ergänzen Sie den Code der Klasse „ArrayTest“ an den gekennzeichneten Stellen so, dass sich folgende Konsolenausgabe ergibt:

    Wäre toll, wenn mir das jemand auch kurz erklären könnte.
    Wie Arrays etc funktionieren ist mir bewusst jedoch komm ich irgendwie auf keine fehlerfreien Ausgabe :(
    Meldet euch gerne per PM :)

    Vielen herzlichen Dank!




    Zuletzt geändert von limit1455; 05.03.2020, 14:18. Grund: 1337

    #2
    Aufgabe ist mir nicht völlig klar, aber hier mal meine Interpretation

    In der ersten Lücke sollst du eine Methode "anzeigen" schreiben analog zur Vektor Klasse, die das array auf die Konsole schreibt.
    Lücke 2 sollst du wahrscheinlich o.g. Methode aufrufen mit x als Parameter
    Lücke 3 wahrscheinlich 2 Vektoren erstellen und das Array "v" damit befüllen
    Lücke 4 "anzeigen" auf den Elementen vom Array "v" aufrufen (Schleife)

    Scheint so, dass es in der Aufgabe darum geht dir den Unterschied zwischen Klassenmethoden (static) und Instanzmethoden beizubringen

    Kommentar


      #3
      Welche Konsolenausgabe soll sich denn ergeben?

      Kommentar


        #4
        Zitat von Jun Beitrag anzeigen
        Aufgabe ist mir nicht völlig klar, aber hier mal meine Interpretation

        In der ersten Lücke sollst du eine Methode "anzeigen" schreiben analog zur Vektor Klasse, die das array auf die Konsole schreibt.
        Lücke 2 sollst du wahrscheinlich o.g. Methode aufrufen mit x als Parameter
        Lücke 3 wahrscheinlich 2 Vektoren erstellen und das Array "v" damit befüllen
        Lücke 4 "anzeigen" auf den Elementen vom Array "v" aufrufen (Schleife)

        Scheint so, dass es in der Aufgabe darum geht dir den Unterschied zwischen Klassenmethoden (static) und Instanzmethoden beizubringen
        Zitat von QTPie Beitrag anzeigen
        Welche Konsolenausgabe soll sich denn ergeben?
        Pardon, diese hatte ich vergessen... https://abload.de/img/unbenanntgljme.png
        Das ganze sollte so aussehen, ein User hat mir schon die Lösung zugesendet, muss diese nur noch an die Ausgabe anpassen.

        Vielen herzlichen Dank für eure Hilfe

        Wenn jemand irgendwie Skype oder ähnliches hat womit man in Kontakt bleiben kann für solche Aufgaben wäre wirklich toll und ich würde diese Person auch für den Aufwand entschädigen :)

        Mache atm ein Fernstudium, welches wirklich sehr schlecht ist aber mein Arbeitgeber möchte es...

        Kann geclosed werden, danke!
        Zuletzt geändert von limit1455; 05.03.2020, 17:51.

        Kommentar


          #5
          https://pastebin.com/PaZGHXaM

          bitte, gerne :D

          ausgabe ist:

          Zweidimensionale Arrays von primitiven Datentypen
          1 2 3
          4 5 6

          Eindimensionales Array vom Typ der Klasse Vektor
          (1,2,3)
          (4,5,6)
          Zuletzt geändert von KINGmike; 05.03.2020, 17:55.

          Kommentar


            #6
            Zitat von KINGmike Beitrag anzeigen
            https://pastebin.com/PaZGHXaM

            bitte, gerne :D

            ausgabe ist:
            Herzlichen Dank, wünschte ich könnte das so schnell :'(

            Kommentar


              #7
              Verstehe diesen Arrayfetisch bei den Lehrkräften nicht. Später benutzt kein Mensch mehr Arrays.

              Kommentar


                #8
                Zitat von Nichtuntertoetet Beitrag anzeigen
                Verstehe diesen Arrayfetisch bei den Lehrkräften nicht. Später benutzt kein Mensch mehr Arrays.
                musste auch erstmal wieder schauen, wie das alles mit arrays funktioniert :D
                aber das ist halt die grundlage. kann schon verstehen, dass man damit anfängt. man sollte es nur nicht dabei belassen und den studenten auch mal erklären, wie man das in einer aktuellen java version lösen sollte.

                und limit1455 kannst mir ruhig per pm schreiben, wenn irgendwas am code unklar ist oder du noch fragen hast

                Kommentar


                  #9
                  Zitat von Nichtuntertoetet Beitrag anzeigen
                  Verstehe diesen Arrayfetisch bei den Lehrkräften nicht. Später benutzt kein Mensch mehr Arrays.
                  Und am Ende beruhen doch wieder n Haufen Datenstrukturen auf Arrays. Nur weil man im echten Leben dann einfach irgendwas importiert, ists doch gut zu wissen wie und wieso das so funktioniert.

                  Kommentar


                    #10
                    Zitat von QTPie Beitrag anzeigen

                    Und am Ende beruhen doch wieder n Haufen Datenstrukturen auf Arrays. Nur weil man im echten Leben dann einfach irgendwas importiert, ists doch gut zu wissen wie und wieso das so funktioniert.
                    Naja, zum einen weiß man, nur weil man mit Java-Arrays gearbeitet hat, nicht unbedingt, was sie wirklich sind. War die zum Beispiel aus dem Kopf klar, dass Primitive direkt im Array gespeichert sind, bei Objekten lediglich der Pointer auf das Objekt? Ist natürlich im Nachhinein plausibel, aber nur, weil man sich mit Java-Arrays rumgeplagt hat, ist einem das nicht unbedingt präsent. Außerdem gibt's in den meisten informatischen Ausbildungen auch nochmal extra Seminare für Datenstrukturen. Da ist ein tiefergehendes Verständnis von Arrays besser aufgehoben.
                    Zum anderen: Vielen fällt Java zum Einstieg schwer, weil es sehr "sperrig" ist. An etlichen Stellen würde ich nicht sagen: Das ist nicht sperrig, das ist gut! (hi @statische Typisierung). Aber was Arrays angeht: Das ist total unnötig und macht den Einstieg sinnlos kompliziert.

                    (Oh, und soviele Datenstrukturen beruhen jetzt auch nicht auf Arrays. Eigentlich ziemlich wenige. Oder was außer ArrayLists, die eigentlich nur verbesserte Arrays sind, hast du da noch alles im Sinn?)

                    Kommentar


                      #11
                      Union Find, Matritzen, Binärbäume. Gibt schon paar.

                      Und Arrays bieten sich halt an weil man damit auch gut zeigen kann, wie n Loop funktioniert und was passiert wenn man auf Sachen zugreifen möchte, die es nicht gibt.

                      Kommentar


                        #12
                        Zitat von QTPie Beitrag anzeigen
                        Union Find, Matritzen, Binärbäume. Gibt schon paar.
                        Bis auf Matrizen, mit denen ich in meiner Programmierkarriere eigentlich auch das letzte Mal in der Uni zu tun hatte, ist das alles entweder special interest oder Mikrooptimierung. Und ließe sich auch mit ArrayLists basteln/erklären, die weniger hakelig sind.
                        Und Arrays bieten sich halt an weil man damit auch gut zeigen kann, wie n Loop funktioniert und was passiert wenn man auf Sachen zugreifen möchte, die es nicht gibt.
                        Dafür kannste aber auch 'ne ArrayList nehmen. ;)

                        Kommentar


                          #13
                          Zitat von QTPie Beitrag anzeigen

                          Und am Ende beruhen doch wieder n Haufen Datenstrukturen auf Arrays. Nur weil man im echten Leben dann einfach irgendwas importiert, ists doch gut zu wissen wie und wieso das so funktioniert.
                          Ist für mich schon verständlich, wenn man jedoch so "kurz" gefasste Aufgabenstellungen hat und nur paar Lücken füllen muss ist das schon etwas komplex.
                          In Eclipse wird mir ja angezeigt an welchen Punkten der Compiler ein "Problem".
                          Naja mal sehen :D

                          Zitat von KINGmike Beitrag anzeigen

                          musste auch erstmal wieder schauen, wie das alles mit arrays funktioniert :D
                          aber das ist halt die grundlage. kann schon verstehen, dass man damit anfängt. man sollte es nur nicht dabei belassen und den studenten auch mal erklären, wie man das in einer aktuellen java version lösen sollte.

                          und limit1455 kannst mir ruhig per pm schreiben, wenn irgendwas am code unklar ist oder du noch fragen hast
                          vielen Dank, habe btw eine 1 erhalten (war nicht nur die Arrayaufgabe :D)
                          Habe jedoch noch 12 Einsendearbeiten vor mir...
                          Also ich arbeite für eine Großbank und das ist ein Pilotprojekt sozusagen mit dem Fernstudium, wenn man sich anschaut wie günstig das Studium selbst ist (glaub etwa 2-3k€) kann man auch nicht so viel erwarten...
                          Ich hatte nebenbei studiert und die kosten pro Semester gehabt...

                          Mal sehen wie sich das entwickelt, an sich ist es schon etwas woran ich Spaß habe aber es ist wirklich von jetzt auf gleich "schwerer" geworden.
                          Wenn man jedoch auf die Zukunft blickt ist man in der IT schon gut aufgehoben :D

                          Kommentar

                          Lädt...
                          X