Array implementierung

guidok

Mitglied
Gegeben ist folgendes Programm:


Java:
import java.util.Scanner;

public class Array {
void print (int[] arr ){
if (arr == null) return;
for(int i = 0; i < arr.length ; i++)
System.out.println(" arr[" + i + "]: " + arr[i]);
}
void input (int[] arr) {
// Ihr Code ...
}
int[] reverse (int[] arr) {
// Ihr Code ...
}
int[] encode (int[] arr ){
// Ihr Code ...
}
public static void main ( String [] args ) throws Exception {
// Arbeitsobjekt von Klasse Array anlegen
Array worker = new Array();
// Ein Array mit 15 Werten anlegen und weitere Referenzen
int[] values = new int [15];
int[] reversedArray; int[] encodedArray;
// Werte in Eingabe-Array einlesen und ausgeben
worker.input(values);
System.out.println(" ----------- Eingabewerte: ----");
worker.print(values); // Werte des Eingabe-Arrays drehen und ausgeben
reverseArray = worker.reverse(values);
System.out.println(" ----------- Nach Drehung: ----");
worker.print(reversedArray);
// Werte des Eingabe-Arrays komprimieren und ausgeben encodedArray = worker.encode(values);
System.out.println (" ---------- Komprimiert: ----"); worker.print(encodedArray);
}
}


Implementieren Sie den gegebenen Code und die Methode input() reverse() und encode()
Testen Sie diese Methode mit drei verschiedenen Zahlenszenarien
 
Zuletzt bearbeitet von einem Moderator:

Robat

Top Contributor
Na jetzt mal im ernst. Was genau erwartest du?
Du stellst keine Frage, zeigst nicht was du bisher probiert hast.

Das hier ist ein Forum zur Selbsthilfe .. keine Hausaufgabenplattform.
 
K

kneitzel

Gast
Hmm, und da hilft mir die Aufgabe? Verstehe ich nicht....

BTW: es scheint mir, dass es unüblich ist, von Anfang an ein OO Design zu nutzen. Wie seht ihr das eigentlich? Würde es doch nicht wirklich verkomplizieren, wenn man z.B. hier in Array die Daten kapseln würde. Statt dessen wird das eher eine ArrayUtil Klasse, deren Funktionen alle statisch sein sollten. Wozu eine Instanz einer Klasse Array - ist ja eigentlich Quatsch. Bei anderen Aufgaben war das ja dann auch so ...

Oder übersehe ich hier einen Grund, der für so einen Ansatz spricht?
 

Robat

Top Contributor
Würde es doch nicht wirklich verkomplizieren, wenn man z.B. hier in Array die Daten kapseln würde
Dazu gibt es die unterschiedlichsten Meinungen und es hängt wahrscheinlich auch vom Menschen ab. Ich hab im Studium festgestellt, dass es einige Leute gibt, die mit dem OO Denken nicht klar kommen. Wenn es dann noch der erste Programmierkurs ist, kann es schwer werden jemanden Basics + OOP beizubringen.
 
K

kneitzel

Gast
macht ihr nix draus, die sind zu mir auch so hhahha
Ja genau, In Deinem letzten Thread waren wir alle böse und haben Dir nicht geholfen ... hunderte Antworten, wo wir Dich nur nieder gemacht haben ....

Also sorry, glaubst du nicht, dass du hier extrem dreist auftrittst? Und Du trittst die, die ihre Zeit investiert haben um Dir zu helfen mit Füßen ... Nur weil du lernresistent bist, sind wir schuld?
 
K

kneitzel

Gast
Dazu gibt es die unterschiedlichsten Meinungen und es hängt wahrscheinlich auch vom Menschen ab. Ich hab im Studium festgestellt, dass es einige Leute gibt, die mit dem OO Denken nicht klar kommen. Wenn es dann noch der erste Programmierkurs ist, kann es schwer werden jemanden Basics + OOP beizubringen.
Aber durch die Vermeidung von OO Design wird es später doch eher schwerer. Und wenn man meint, dass OO Dinge erst Mal außen vor bleiben sollten, dann wäre doch auch eine andere Sprache angebrachter....

Wenn Algorithmen z.B. Im Vordergrund stehen sollen, dann ist eine Sprache wie Moduls-2 super. Hat halt den Vorteil, dass sie deutlich konsequenter vom Design her ist und eben nicht überfrachtet mit Möglichkeiten.
Der Smalltalk Ansatz gefällt mir auch extrem gut und ist direkt visuell. Da hat man halt direkt eine OO Umgebung. Und auch sehr konsequent und logisch aufgebaut.
Für die Konzepte und so sind das für den Lehrbetrieb eher die besseren Wege. Java ist da weniger geeignet mit all den Funktionen und so, Da kommt extrem schnell zu viel auf jemanden zu. Lösungen wie BlueJ wollen das wohl etwas abfangen, aber so Lösungen fand ich bisher nicht überzeugend.

Aber ich muss gestehen, dass ich in dem Bereich nur wenig aktiv bin. Ich bin halt nicht damit beschäftigt, anderen das Programmieren bei zu bringen. Aber das Thema interessiert mich etwas weshalb ich mir in den letzten Jahren einiges angesehen habe. Modula2 und Smalltalk gehen aber auf meine Studienzeiten zurück ... aber damals haben wir das an der Uni mit anderen Lösungen verglichen. (Da ist Java erst aufgekommen...war noch kein Hype und hatte auch noch nicht die feste Position im Server Bereich wie heute)

Und das Argument, das man öfters hört bzgl. Tauglichkeit im Alltag: Im Lehrbetrieb geht es aus meiner Sicht nicht um sowas. Wer später richtig Software entwickeln will, muss ehh extrem viel lernen. Da kann er etwas Syntax eben mit lernen. So man die Konzepte verstanden hat, ist das wirklich einfach.

Da würde mich eure Sicht durchaus interessieren. Meine Sicht soll niemanden überzeugen sondern nur eine Grundlage für mögliche Diskussionen schaffen.
 
H

Heyoka955

Gast
Dazu gibt es die unterschiedlichsten Meinungen und es hängt wahrscheinlich auch vom Menschen ab. Ich hab im Studium festgestellt, dass es einige Leute gibt, die mit dem OO Denken nicht klar kommen. Wenn es dann noch der erste Programmierkurs ist, kann es schwer werden jemanden Basics + OOP beizubringen.
wenn ich lern Resistenz wäre dann sässe ich nicht 8 studnen dran...
 

Robat

Top Contributor
wenn ich lern Resistenz wäre dann sässe ich nicht 8 studnen dran...
Den Tipp mit der Rechtschreibung scheinst du zumindest nicht zu beherzigen ;)

@kneitzel
Ich geb dir mit allem Recht was du ansprichst. Ich wollte mit meinem Post auch eigentlich nicht ausdrücken, dass ich für so eine "Lernart" bin.
Modula2 und Smalltalk kannte ich so nicht - ist sicherlich auch nicht ganz meine Zeit.. Heute sind Dinge wie BlueJ oder Robot-Karol das "Non plus ultra" .. davon halte ich selber aber nicht viel. Das gaukelt den den Schülern/Studenten mEn nur eine wunderschöne Welt vor und sobald man dann das erste Mal eine main-Methode sieht versteht man nichts mehr.
 

guidok

Mitglied
richtiger shitstorm hier . Dann helft doch anderen oder geht raus hier.. ist nicht so das ich hier ne Lösung will.. nur evtl Ansätze um zu helfen.. das da ne for schleife reingehört ist mir selber bewusst..
 
X

Xyz1

Gast
Das ihr schlafen geht
Das kann doch nicht Dein Ernst sein oder Deine natürlichen Umgangsformen....
Es ist doch ganz einfach, Problem schildern, Versuch schildern, Frage stellen und freundlich bleiben - und es ist viel wahrscheinlicher das Dir geholfen wird.... Oder soll dies auch ein 100-Seiten-Thema werden? :(
 

Robat

Top Contributor
@guidok Es ist nicht so, dass dir keiner helfen will. Nur machst du ein neuen Thread auf, postest irgendeine Aufgabe rein und stellst weder eine Frage, noch zeigst du auf, was du bisher hast bzw. was dein Problem ist.
Es ist ja wohl nicht zu viel verlangt, oder?

Also .. was hast du denn bisher bzw wie sehen deine Gedanken dazu aus?
 
K

kneitzel

Gast
Also einen Shitstorm habe ich hier bisher nicht erlebt. Liegt wohl einfach daran, dass die Leute etwas besseres zu tun haben und dann sich einfach anderen Dingen zuwenden.

Wer etwas Unmut, der nach über 200 Posts ohne wirklichen Fortschritt halt aufkommt, als Shitstorm empfindet, der hat keine Ahnung, was ein Shitstorm ist.

Aber wie dem auch sei: Hier wurde einfach nur nachgefragt, was die Erwartungshaltung des TE ist, da er versäumt hat, dies zu schreiben. Ok, er war der Meinung, dass das Problem so komplex ist, dass wir einmal drüber schlafen sollten, habe ich jetzt gemacht.

Und ja, in den Funktionen könnte man Schleifen einsetzen. Das wäre nun zu präzisieren. Also das was gegeben ist in Code-Tags:

Java:
import java.util.Scanner;

public class Array {
    
    void print (int[] arr ){
        if (arr == null) return;
        
        for(int i = 0; i < arr.length ; i++)
            System.out.println(" arr[" + i + "]: " + arr[i]);
    }

    void input (int[] arr) {
        // Ihr Code ...
    }

    int[] reverse (int[] arr) {
        // Ihr Code ...
    }

    int[] encode (int[] arr ){
        // Ihr Code ...
    }

    public static void main ( String [] args ) throws Exception {

        // Arbeitsobjekt von Klasse Array anlegen
        Array worker = new Array();

        // Ein Array mit 15 Werten anlegen und weitere Referenzen
        int[] values = new int [15];
        int[] reversedArray;
        int[] encodedArray;

        // Werte in Eingabe-Array einlesen und ausgeben
        worker.input(values);
        
        System.out.println(" ----------- Eingabewerte: ----");
        worker.print(values); // Werte des Eingabe-Arrays drehen und ausgeben

        reverseArray = worker.reverse(values);

        System.out.println(" ----------- Nach Drehung: ----");
        worker.print(reversedArray);

        // Werte des Eingabe-Arrays komprimieren und ausgeben
        encodedArray = worker.encode(values);
        
        System.out.println (" ---------- Komprimiert: ----");
        worker.print(encodedArray);
    }
}

Das Schöne hier ist doch, dass in der print Funktion ja schon prinzipiell gezeigt ist, wie so eine Schleife aussieht. Es muss ja lediglich der Inhalt der Schleife gefüllt werden. Und dann wird man evtl. vor der Schleife noch eine Kleinigkeit machen müssen. Aber wenn man das nicht macht, dann wird einem zur Laufzeit gesagt, dass man da was vergessen hat über eine NullPointerException.
 
X

Xyz1

Gast
Nein, ein richtiger shitstorm ist es nicht, aber was nicht iss, kann leicht noch werden........

Das Problem ist einfach was ich sehe, das sich dieses Thema schon wieder in diese Richtung entwickelt, das ANDERE Dir den Service bieten, Deine Hausaufgaben vollumfänglich zu lösen...

Und damit mal ein Moin in die Runde.
 
K

kneitzel

Gast
Nunja, das kommt von mir nicht. Dass da eine Schleife sein muss, hat er ja schon gesagt und ich habe in erster Linie darauf hingewiesen, dass es ja schon eine Schleife in einer Funktion gibt...

Daher wird entweder jetzt endlich mehr kommen vom TE oder der Thread wird einfach in Hausaufgaben verschoben und darf da sterben. Shitstorm sehe ich hier aber eher nicht, denn wozu sollten wir dazu Zeit verschwenden?
 

guidok

Mitglied
Naja der Scanner ist ja auch schon importiert => er sollte die Funktionen ja einlesen .. Wenn ich quasi für jede methode plätze belege sagen wir values[3]= 10 ect .. aber das ist ja nicht was von mir erwartet wird..ich soll ja keine vorgegebenen zahlen eintippen.. btw ich will hier keine Lösung haben.. Das ist ne reine Übungs aufgabe die mir gegeben wurde. Ich hab auch schon “eingabewert“ im Scanner verwendet nur leider auch nicht was ich will. Ich hätte am ende in die Klasse noch die methoden reingeschrieben encode(); reverse(); und input();..
 

temi

Top Contributor
Naja der Scanner ist ja auch schon importiert => er sollte die Funktionen ja einlesen .. Wenn ich quasi für jede methode plätze belege sagen wir values[3]= 10 ect .. aber das ist ja nicht was von mir erwartet wird..ich soll ja keine vorgegebenen zahlen eintippen.. btw ich will hier keine Lösung haben.. Das ist ne reine Übungs aufgabe die mir gegeben wurde. Ich hab auch schon “eingabewert“ im Scanner verwendet nur leider auch nicht was ich will. Ich hätte am ende in die Klasse noch die methoden reingeschrieben encode(); reverse(); und input();..

Bahnhof?

Können eigentlich alle jungen Menschen (ich unterstelle das Jung jetzt mal) nicht mehr richtig schreiben?

Ist das der komplette Text der Aufgabe?

Du sollst eine Methode "input()" programmieren, in der eine Anzahl von Werten vom Benutzer eingegeben werden und "reverse()", die die Reihenfolge des Arrays umdreht.

Außerdem noch "encode()", da ist mir nicht so klar, was die genau machen soll.

Fang doch mal mit den beiden ersten an. Tipps dazu hast du ja bereits von @kneitzel enthalten.
 
Zuletzt bearbeitet:

M.L.

Top Contributor
int[] reverse (int[] arr)
// Ihr Code ...

int[] encode (int[] arr )
Man könnte eine Suchmaschine verwenden, z.B. ixquick.com @ java array reverse (und merken, dass es mehrere Wege zum Ziel gibt. Vrmtl. wird aber die "zu-Fuss-Methode" -array.length-1 als Startparameter, dann den Laufindex bis 0 runterzählen- gesucht). Und auch das Encodieren lässt Interpretationen offen.
 
K

kneitzel

Gast
Naja der Scanner ist ja auch schon importiert => er sollte die Funktionen ja einlesen .. Wenn ich quasi für jede methode plätze belege sagen wir values[3]= 10 ect .. aber das ist ja nicht was von mir erwartet wird..ich soll ja keine vorgegebenen zahlen eintippen.. btw ich will hier keine Lösung haben.. Das ist ne reine Übungs aufgabe die mir gegeben wurde. Ich hab auch schon “eingabewert“ im Scanner verwendet nur leider auch nicht was ich will. Ich hätte am ende in die Klasse noch die methoden reingeschrieben encode(); reverse(); und input();..

Nun einmal einfach von Anfang an:
a) Du weisst, wie Du mit dem Scanner Werte vom Benutzer einlesen kannst? Ansonsten einmal selbst recherchieren.
b) Und dann überleg Dir, wie Du das Array, welches der Funktion übergeben wird, mit User-Eingaben füllen kannst.

Wenn Du bei b) Probleme hast, dann überleg doch einfach einmal selbst mit Stift und Papier:
- was hast Du vorliegen (Array, Scanner, ....)?
- was würdest Du umgangssprachlich hier durchführen?
 
Ähnliche Java Themen
  Titel Forum Antworten Datum
T Array verkleinern Java Basics - Anfänger-Themen 2
J Array aus Numberfield Eingaben Java Basics - Anfänger-Themen 7
D Array List mit Objekten sortieren Java Basics - Anfänger-Themen 2
onlyxlia Anzahl Random Zahlen mit Scanner abfragen und in Array speichern Java Basics - Anfänger-Themen 10
Ü Java Array - Buchstaben als Zahlen ausgeben Java Basics - Anfänger-Themen 22
Ü Zweidimensionales Array in der ersten Zeile deklarieren Java Basics - Anfänger-Themen 13
Thomas Uppe 2D Array Reihenfolge vermischen Java Basics - Anfänger-Themen 4
T array auslesen Java Basics - Anfänger-Themen 2
Nitrogames Variablen Variable aus JOptionPane Abfrage in Array einfügen Java Basics - Anfänger-Themen 4
moini Auf Array aus Superklasse zugreifen? Java Basics - Anfänger-Themen 2
J ArrayList in 2D-Array konvertieren. Java Basics - Anfänger-Themen 48
M NullPointerException: Cannot read the array length because "this.Kinder" is null Java Basics - Anfänger-Themen 1
P Wieso kann ich als Index für einen Array einen Char angeben? Java Basics - Anfänger-Themen 3
Finn_lol Fehlermeldung bei Schleife mit Array Java Basics - Anfänger-Themen 4
Proxy Chars vor array übergabe toLowerUpcase Java Basics - Anfänger-Themen 14
iAmFaiinez Primzahlen Tester ohne Array Java Basics - Anfänger-Themen 4
S array 2 dimensional treppe Java Basics - Anfänger-Themen 3
S Array 2x2 Blöcke mit 0 und 1 Java Basics - Anfänger-Themen 10
C Array von Klassen Java Basics - Anfänger-Themen 2
julian0507 2Dim-Array Spaltensummen Java Basics - Anfänger-Themen 1
XWing Doppelte Zahlen im Array Java Basics - Anfänger-Themen 8
melisax Java 2D-Array Tabelle Java Basics - Anfänger-Themen 4
melisax Java Array Wert an bestimmtem Index angeben Java Basics - Anfänger-Themen 14
W Items löschen aus String Array vom Custom Base Adapter Java Basics - Anfänger-Themen 2
Proxy Stack erweitern mit neuem Array falls der alte voll ist!? Java Basics - Anfänger-Themen 5
E Array, nächste Zahl zur 5 ausgeben, wie? Java Basics - Anfänger-Themen 42
J Array.list vergleichen Java Basics - Anfänger-Themen 1
W Java-Code mit Array Java Basics - Anfänger-Themen 14
D Reflections & Generisches Array Java Basics - Anfänger-Themen 4
T Array Java Basics - Anfänger-Themen 2
T Array Java Basics - Anfänger-Themen 15
T Wörteranzahl im Array zählen Java Basics - Anfänger-Themen 9
Ostkreuz Zweidimensionaler Array Index Java Basics - Anfänger-Themen 2
S String Array Buchstaben um einen gewissen Wert verschieben Java Basics - Anfänger-Themen 4
R Images aus einem Array ausgeben Java Basics - Anfänger-Themen 3
R 2d Array individuell machen Java Basics - Anfänger-Themen 4
D 2D Char Array into String Java Basics - Anfänger-Themen 2
J Array Median bestimmen Java Basics - Anfänger-Themen 6
S Array Maximum bestimmen mit for und foreach Java Basics - Anfänger-Themen 7
S Prüfen ob ein zweidimensionales Array rechteckig ist Java Basics - Anfänger-Themen 4
N Array Java Basics - Anfänger-Themen 1
J Array Mittleren Wert bestimmen Java Basics - Anfänger-Themen 2
D OOP Array einem Objekt zuweisen Java Basics - Anfänger-Themen 2
O Zahlen aus einem char-array per char + Zeichen addieren Java Basics - Anfänger-Themen 2
S leeres Array statt Null Pointer Exception ausgeben Java Basics - Anfänger-Themen 20
S Inhalte aus Array vergleichen und Max ausgeben Java Basics - Anfänger-Themen 3
M 2d array ohne längen anlegen Java Basics - Anfänger-Themen 4
S Bestimmte werte aus einem Array löschen Java Basics - Anfänger-Themen 2
S Ausgeben wie oft ein Wert in einem Array vorkommt Java Basics - Anfänger-Themen 7
E Reihenfolge der Werte umdrehen (mittels statischem int-Array Java Basics - Anfänger-Themen 3
O 2 Dimensionales Array Java Basics - Anfänger-Themen 6
M Bubble Sort - Int[] Array sortieren Java Basics - Anfänger-Themen 2
javaBoon86 Array mehrere Dimensionen Java Basics - Anfänger-Themen 10
B Array nach Elementwerten sortieren? Java Basics - Anfänger-Themen 1
B Explizit Array definieren geht nicht? Java Basics - Anfänger-Themen 14
D Kleinste Zahl in Array finden die vorher noch errechnet werden müssen. Java Basics - Anfänger-Themen 4
L Gegebenes Array sortieren, indem zufällige Zahlenpaare aus Array ausgewählt werden Java Basics - Anfänger-Themen 14
Say 2-DIM Array Code lesen und verstehen Java Basics - Anfänger-Themen 5
N Array beim erstellen mit Werten füllen Java Basics - Anfänger-Themen 6
C Java Array Struktur, welche ist wann besser? Java Basics - Anfänger-Themen 12
Temsky34 Array IndexOf nicht verfügbar Java Basics - Anfänger-Themen 18
belana wie am besten 2D Array von String to Integer Java Basics - Anfänger-Themen 18
S Array mit Methode löschen Java Basics - Anfänger-Themen 2
J Java To String Methode, Array mit For-Schleife Java Basics - Anfänger-Themen 2
E Durch Muster in Array iterieren Java Basics - Anfänger-Themen 3
L Frage zum Array Java Basics - Anfänger-Themen 1
C 2D Array Ausgabe mit for-Schleife i,j Java Basics - Anfänger-Themen 4
D Methode: Array Reihenfolge tauschen Java Basics - Anfänger-Themen 3
julian0507 Array aus Methode in anderer Methode sichtbar machen Java Basics - Anfänger-Themen 10
P Array vom Typ Klasse Java Basics - Anfänger-Themen 18
Lion.King Array deklarieren und initialisieren Java Basics - Anfänger-Themen 5
P Array-Objekte-Aufruf Java Basics - Anfänger-Themen 22
A CSv.Datei einlesen und die werte in zweidemosional Int Array speichern Java Basics - Anfänger-Themen 9
M Methoden Zweidimensionaler Array mit Setter Methode ändern Java Basics - Anfänger-Themen 4
AkiJou Zeile in 2d Array löschen Java Basics - Anfänger-Themen 2
LilliCherry Array in einer Zeile ausgeben Java Basics - Anfänger-Themen 6
A Elemente in einem Array Java Basics - Anfänger-Themen 5
A Vorkommende Farben ermittel und als Array zurückgeben Java Basics - Anfänger-Themen 7
AhmadSlack Array Java Basics - Anfänger-Themen 7
Jambolo Kartenhand Array Java Basics - Anfänger-Themen 14
ravenz Schleife mit for über String Array „zahlen“und prüfen ob Wert „a“ oder „b“ oder „c“ entspricht (mittels || ) Java Basics - Anfänger-Themen 4
S Eine Variable in einem Array speichern Java Basics - Anfänger-Themen 5
T Methode, die prüft ob in einem Int-Array maximal 2 Zahlen enthalten sind, die größer als ihr Vorgänger sind Java Basics - Anfänger-Themen 5
T String Array Fehler beim Index Java Basics - Anfänger-Themen 3
krgewb byte-Array, das ein Bild repräsentiert Java Basics - Anfänger-Themen 1
1 Array rekursiv durchlaufen Java Basics - Anfänger-Themen 8
I Methoden Wieso wird mein Array "a" verändert und meine Variable "a" nicht? Java Basics - Anfänger-Themen 4
EykS 3D Druckdatei basierend auf 3D Array? Java Basics - Anfänger-Themen 3
sserio Array funktioniert nicht Java Basics - Anfänger-Themen 2
sserio Iterierung über ein zweidimensionales Array Java Basics - Anfänger-Themen 16
sserio Zweidimensionales Array [][] wird untereinander ausgegeben Java Basics - Anfänger-Themen 14
Chris.089 2 Werte im Array tauschen Java Basics - Anfänger-Themen 6
D EinMalEins mithilfe einer for-Schleife und Array Java Basics - Anfänger-Themen 1
L Unbekanntes Problem mit 2d Array Java Basics - Anfänger-Themen 6
L Gridmuster in einem Array Java Basics - Anfänger-Themen 2
sgtcoopa Array übergeben Schleife Java Basics - Anfänger-Themen 0
B Compiler-Fehler Array aus Objekten übergeben Java Basics - Anfänger-Themen 7
padde479 Array Multiplikation der ersten n Zahlen Java Basics - Anfänger-Themen 7
G zweidimensionales int Array sortieren Java Basics - Anfänger-Themen 57
W Array ausgeben Java Basics - Anfänger-Themen 29

Ähnliche Java Themen

Neue Themen


Oben