Du verwendest einen veralteten Browser. Es ist möglich, dass diese oder andere Websites nicht korrekt angezeigt werden. Du solltest ein Upgrade durchführen oder ein alternativer Browser verwenden.
hallo leute könnt ihr mir bei folgender Aufgabe helfen,
Erstellen Sie eine Methode reihenfolgeUmkehren(), in welcher die erste zahl mit der letzten, die zweite mit der vorletzten, usw. vertauscht werden.
ps. ist ein Array mit new int[100]; in welchem die ersten 50 Indexe mit Zahlen von 1 bis 50 belegt sind die nächsten fuenzig indexe haben bis jetzt den stadard wert 0
anbei mal mein kleine BlueJ Klasse
/**
* Beschreiben Sie hier die Klasse ZahlenSammlung.
*
* @author (Ihr Name)
* @version (eine Versionsnummer oder ein Datum)
*/
public class ZahlenSammlung
{
int[] zahlen;
int anzahl;
public void reihenfolgeUmkehren(){
int hochzaehlen=0;
for (int i= zahlen.length-1;i>=0; i--){
zahlen[i] = zahlen[hochzaehlen++];
}//end for
}
erstma werden die zahlen doch so gar nit getauscht. dazu müsstest du erst zahlen temporär speichern und den gespeicherten wert wieder in zahlen[hochzaehlen] reinschreiben. mmh außerdem für mich sieht das aus als ob du jede Zahl genau zweimal tauschst...du must doch die for schleife gar nicht bis i>=0 laufen lasssen sondern nur bis zur Hälfte des Arrays.
weil so wird im ersten schritt die letzte zahl mit der ersten und im letzten schritt die erste mit der letzten getauscht.
also wird der tausch rückgängig gemacht!
Code:
public void reihenfolgeUmkehrenZwei(){
int hochzaehlen=1;
int groesteZahl = größteZahl();
for(int i=0; i<= 49;i++){
System.out.println(zahlen[i] = zahlen[zahlen.length-hochzaehlen]);
groesteZahl--;
hochzaehlen++;
}
}//end reihenfolgeUmkehren
hier fehlt auch irgendwie der tausch der zahlen...so schreibst du nur die hinteren 50 werte in die vorderen 50 arrayplätze.
was soll das alles sein, drei seiten voll mit irgendeinem kram, erwartest du von den leuten dass die das alles durchlesen, wobei es nicht mal in code-tags eingeschlossen ist?
Wenn du eine konkrete Frage zu einer konkreten methode hast, dann poste eben nur die frage und nur die methode, den exakten wortlaut der aufgabenstellung und den drei kilometer langen code, der nichts mit der frage zu tun hat kannst du uns gerne vorenthalten, da ist dir keiner böse deswegen^^ :roll:
ok das mit den überschüssigen methoden werde ich mir merken und künftig ändern, die antwort mit dem org.... Anweisung hört sich ja relativ einfach an aber wenn ich diese Metode aufrufen möchte bekomme ich eine Meldung das das package nicht existiert, gibt es da auch noch eine andere Lösung die ihr mir in meine methode schreiben könnt?
for(int i=0; i< zahlen.length / 2;i++){
// schreibe zahlen[i] in eine Hilfsvariable
// schreibe zahlen[zahlen.length-i] nach vorne
// schreibe aus der Hilfsvariable nach hinten
}
eigentlich müsste schone das Collections.reverse(..) funktionieren aber ich glaube hier geht es um etwas selbst implementiertes als Hausaufgabe oder ähnliches. Die Formulierung der Aufgabe suggeriert dies.
Und der ansatz wurde hier auch schon beschrieben. Obwohl das schon fast zuviel hilfe ist wenns einfach nur eine Hausaufgabe ist.