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.
mal wieder ein ganz easy Ding. Bekomme es nicht hin eine 2D Matrix mit nur Geraden Zahlen zu befüllen. Brauche ich sonst noch was ausser meine if Anweisung!?
Hier mal mein Code...
Java:
public class Befüllen {
/**
* @param args
*/
public static void main(String[] args) {
// TODO Auto-generated method stub
double [][] a = new double [5][5];
for (int i=0; i<a.length; i++){
for (int j=0; j<a.length; j++){
a[i][j] = (int) (Math.random()*10)-5;
if(a[i][j]%2==0){
????;
}
}
}
for (int i=0; i<a.length; i++){
for (int j=0; j<a.length; j++){
System.out.print(a[i][j] + " ");
}
System.out.println(" ");
}
}
}
Du müsstest solange eine Zufallszahl erzeugen, bis eine gerade Zahl enstanden ist (Stichwort do while) und erst dann mit ebendieser das Array befüllen.
EDIT: Einfacher wäre allerdings, eine x-beliebige Zufallszahl zu erzeugen und diese mit zwei zu multiplizieren, wodurch auf jeden Fall eine gerade Zahl entsteht.
Naja, was machst du denn, wenn die Zufallszahl eben doch ungerade (oder gerade, weiß nicht mehr, was nun von dir gewollt und was nicht gewollt ist) ist? Antwort: nichts (also bleibt die Zelle mit Index [j] null)
primitive Arrays (int, double, boolean... ) sind immer gefüllt und werden z.B. automatisch mit 0 initialisiert, können daher keine null Referenz enthalten.
Vielen Dank für die vielen Danke... aber du musst nicht gleich für jeden Beitrag deine Dankbarkeit mittels "Danke" (meine Güte, so viel Danke in einem Satz, das sieht man selten...) ausdrücken... v.a. nicht wenn sie dermaßen inhaltsleer wie mein letzter sind
Eine ganze Zahl p ist genau dann gerade, wenn es eine Darstellung p = 2 * q mit ganzer Zahl q gibt.
So kann man also ein Array mit geraden Zahlen befüllen:
Java:
import java.util.Random;
public class Befüllen {
public static void main(final String[] args) {
final int[][] a = new int[5][5];
final Random r = new Random();
for (int i = 0; i < a.length; i++) {
for (int j = 0; j < a[i].length; j++) {
a[i][j] = r.nextInt(5) * 2; // Element aus {0, 2, 4, 6, 8}
}
}
for (int i = 0; i < a.length; i++) {
for (int j = 0; j < a[i].length; j++) {
System.out.print(a[i][j] + " ");
}
System.out.println();
}
}
}