Moinsen,
sicherlich kennt ihr die Aufgabe vom BWINF:
Einen zufälligen Käsewürfel mit dem Raster(20*20*20) erstellen, die prozentuale Käsemenge eingeben lassen,
den Würfel zufällig erstellen und dann prüfen ob Wasser durchlaufen kann.
Ich bin jetzt an der Stelle wo ich den Käse zufällig generiert habe und wollte da vorsichtshalber schonmal nachfragen
ob alles richtig ist (von der Qualität des Programmes mal abgesehn, obwohl ihr mich da gerne verbessern dürft... bin
ja noch blutiger Anfänger)
Hier mal der bisherige Code:
Für die Luft würde ich dann eine Methode schreiben die das Array durchgeht und alle Felder die nicht 1 sind
mit 0 initialisiert
Danke für eure Hilfe
Mfg Bob
sicherlich kennt ihr die Aufgabe vom BWINF:
Einen zufälligen Käsewürfel mit dem Raster(20*20*20) erstellen, die prozentuale Käsemenge eingeben lassen,
den Würfel zufällig erstellen und dann prüfen ob Wasser durchlaufen kann.
Ich bin jetzt an der Stelle wo ich den Käse zufällig generiert habe und wollte da vorsichtshalber schonmal nachfragen
ob alles richtig ist (von der Qualität des Programmes mal abgesehn, obwohl ihr mich da gerne verbessern dürft... bin
ja noch blutiger Anfänger)
Hier mal der bisherige Code:
Code:
import java.io.*;
import java.util.*;
class cheese{
BufferedReader in=new BufferedReader(new InputStreamReader(System.in));
Random random_generator=new Random();
int[][][] cube_field=new int[20][20][20];
int mini_cube_amount=8000;
int cheese_amount;
int mini_cheese_cubes;
void setCheeseAmount(){ //prozentuale Käsemenge wird eingegeben
try{
System.out.print("Bitte prozentuale Kaesemenge eingeben: ");
cheese_amount=(int)Integer.parseInt(in.readLine());
System.out.println(cheese_amount + "% bestehen aus Käse");
}
catch(Exception e){
System.out.print("Bad BR-in Error");
}
}
void setCheeseCubes(){ //rechnet aus wieviele Würfel aus Käse bestehen
mini_cheese_cubes=(int)Math.round(mini_cube_amount*((double)cheese_amount/100));
System.out.println(mini_cheese_cubes+" Würfel bestehen aus Käse");
}
void generateRandomCheese(){ //belegt das cube_field zufällig mit Käse -> 1
for(int i=0; i<=mini_cheese_cubes; i++){
int field1_index=random_generator.nextInt(19+1);
int field2_index=random_generator.nextInt(19+1);
int field3_index=random_generator.nextInt(19+1);
if(cube_field[field1_index][field2_index][field3_index]!=1){
cube_field[field1_index][field2_index][field3_index]=1;
}
else{
i-=1;
}
}
}
}
public class Käse {
public static void main(String[] args) {
cheese Käsewürfel=new cheese();
Käsewürfel.setCheeseAmount();
Käsewürfel.setCheeseCubes();
Käsewürfel.generateRandomCheese();
}
}
Für die Luft würde ich dann eine Methode schreiben die das Array durchgeht und alle Felder die nicht 1 sind
mit 0 initialisiert
Danke für eure Hilfe
Mfg Bob