Hi,
versuche mich gerade an folgender Programmieraufgabe:
ich scheitere allerdings daran, dass ich mir mein Feld am Ende nicht ausgeben lassen kann und so nicht weiß ob ich alles richtig gemacht habe.
Code:
import Prog1Tools.IOTools;
public class feldordnung{
public static double[] enter(double d, double k, double [] dFeld){
double [] newfeld = new double[dFeld.length +1];
if(k<0){
newfeld[0]= d;
for(int i=1; i< newfeld.length; i++){
newfeld[i]= dFeld[i-1];
return newfeld;
}
}
if(k>= dFeld.length){
for(int i=0; i< newfeld.length; i++){
newfeld[i]= dFeld[i];
newfeld[newfeld.length-1]= d;
return newfeld;
}
} else{
newfeld[(int)(k-1)]= d;
for(int i=0; i< newfeld.length; i++){
if(i<(k-1)){
newfeld[i] = dFeld[i];
}
if(i>= k){
newfeld[i+1]= dFeld[i];
}
}
return newfeld;
}
return newfeld;
}
public static int position (double d, double[] dFeld){
for(int i =0; i< dFeld.length; i++){
if(dFeld[i]== d){
return i;
}else{
if(d>0){
return 0 ;
}
}
} return dFeld.length;
}
public static void main (String [] args){
int x = IOTools.readInteger("länge feld:");
double [] dFeld = new double[x];
for(int i = 0; i< x; i++){
double n = IOTools.readDouble((i+1)+"ter Wert:");
if(n ==0){
break;
}
double g = position(n, dFeld);
enter(g, (double) x, dFeld);
}
}
}
Anstatt "enter(g, (double) x, dFeld);" müsste dann ja die Referenz auf newfeld dastehen.
Wie kann ich mir jetzt die einzelnen Komponentan ausgeben lassen?
THX schonmal