Java, räkna antal delar av en talserie
Jag väljer hur många tal jag ska slumpa till en talserie mellan 1 och 999. Efter att jag skrivit ut den och sorterat den i fallande serie ska jag plocka ut vilka tal i serien som är jämna. Det funkar, men sen fastnar jag på hur jag ska kunna räkna ut antalet jämna tal. Mina sista kodrader längst ner skriver inte ut något alls!
import java.util.Scanner;
public class Problem {
public static void main(String[] args) {
// Deklarera variabler som behövs
int antalNr, sum = 0;
// Mata in antal som ska slumpas
Scanner matain = new Scanner(System.in);
System.out.print("Hur många slumptal i intervallet 0-999 önskas?");
antalNr = matain.nextInt();
matain.nextLine(); // Rensa inmatningsbufferten
int[] array = new int[antalNr];
int bredd = array.length;
int max = 0;
int rad = 0;
// Slumpning av talen
for (int i = 0; i < bredd; i++) {
array[i] = (int) (Math.random() * 1000) + 1;
}
System.out.println();
System.out.println("Här är de slumpade talen.");
// Skriv ut osorterat
for (int i = 0; i < antalNr; i++) {
System.out.print(array[i] + " ");
}
System.out.println();
// Sorterar talserien
for (int i = 0; i < bredd - 1; i++) {
max = i;
for (int k = i + 1; k < bredd; k++) {
if (array[k] > array[max]) {
max = k;
}
}
// Byter plats på två platser i arrayen
rad = array[i];
array[i] = array[max];
array[max] = rad;
}
System.out.println();
System.out.println("Här är de slumpade talen ordnade.");
// Skriv ut sorterat
for (int i = 0; i < bredd; i++) {
System.out.print(array[i] + " ");
}
System.out.println();
System.out.println();
// Summera talkedjan (för senare koll av resultatet)
for (int i = 0; i < array.length; i++) {
sum = sum + array[i];
}
System.out.println("Summan är " + sum + " och de jämna talen är:");
int[] evenArray = new int[antalNr];
int evenCounter = 0;
int[] antalEven = new int[evenCounter];
for (int i = 0; i < array.length; i++) {
if (array[i] % 2 == 0) {
evenArray[evenCounter] = array[i];
System.out.print(+evenArray[evenCounter] + ", ");
evenCounter++;
}
// int length = antalEven.length;
for (int a = 0; a < antalEven.length; a++) {
System.out.print("\nAntal " + evenArray[a]);
}
}
}
}
Är det någon som ser var jag trasslat till det?