Mit rontottam el? (java)
Ez a feladat:
Create a method that removes the middle (or the middle two) values of an array. This method removes a single element if the initial list has a odd length and two elements if the length is even. The method should return a new array.
(input: 3, 2, 6, 1, 0)
[3, 2, 1, 0]
(input: 1, 2, 3, 4)
[1, 4]
public class Week6Ex7 {
public void run(){
int[] numbs1 = {3, 2, 6, 1, 0};
int[] numbs2 = {1, 2, 3, 4};
int[] result = deleteMiddle(numbs1);
for (int i = 0; i < result.length; i++){
System.out.println(result[i]);
}
}
public int[] deleteMiddle(int[] theArray){
int sum = 0;
for (int i = 0; i < theArray.length; i++){
sum += theArray[i];
}
int[] tempArray;
if (sum % 2 == 0){
tempArray = new int[theArray.length - 2];
for (int i = 0; i <theArray.length; i++){
int p = 0;
if (i != (theArray.length/2) && i!= (theArray.length/2) + 1){
tempArray[p] = theArray[i];
}
p++;
}
} else{
tempArray = new int[theArray.length - 1];
for (int i = 0; i <theArray.length; i++){
int p = 0;
if (i != (theArray.length/2) + 1) {
tempArray[p] = theArray[i];
}
p++;
}
}
return tempArray;
}
public static void main(String[] args){
new Week6Ex7().run();
}
}
10# Tudom kipróbáltam úgy is ... miután megtaláltam a p variabel hibát hamar rájöttem, hogy a rossz indexeket nézem és korrigáltam, hogy az eredeti kódomat és ugyan úgy egy if state mentel csináltam egy 'and'-el, de valamiért hibát dobott ki az intelij és csak így tudta normálisan lefutatni. :S
De nem is probléma ez csak egy kis feladat.
Kapcsolódó kérdések:
Minden jog fenntartva © 2025, www.gyakorikerdesek.hu
GYIK | Szabályzat | Jogi nyilatkozat | Adatvédelem | Cookie beállítások | WebMinute Kft. | Facebook | Kapcsolat: info(kukac)gyakorikerdesek.hu
Ha kifogással szeretne élni valamely tartalommal kapcsolatban, kérjük jelezze e-mailes elérhetőségünkön!