java-forum.org - Java programmieren aus Leidenschaft
Java 6 Einstieg und professioneller Einsatz
Alter Preis: 34,90 EUR
Jetzt: 0,00 EUR

zzgl. Versandkosten

Zurück   java-forum.org - Java programmieren aus Leidenschaft > Java - Programmierung > Java Basics - Anfänger-Themen

Java Basics - Anfänger-Themen Fragen ausschließlich zu Java-Grundlagen von Ein- und Umsteigern

Antwort    
Themen-Optionen Thema durchsuchen Ansicht
Alt 29.08.2012, 09:02   #1 (permalink)
prodonn
Nicht angemeldet
 
Fachbeiträge: n/a
Standard Würfel Pasch

Hi,
wie schreibe ich ein programm, das solange würfelt bis ein pasch kommt?
 
Bei Google nach dem markiertem Wort suchen Bei Wikipedia nach dem markiertem Wort suchen Im Forum nach dem markiertem Wort suchen
Mit Zitat antworten
Alt 29.08.2012, 09:05   #2 (permalink)
Stammbenutzer
Viertel Megabyte
 
Benutzerbild von KingOfExceptions
 
Registriert seit: 20.04.2011
Fachbeiträge: 429
Abgegebene Danke: 94
Erhielt 51 Danke für 50 Beiträge
Mit GUI und allem drum und dran oder nur auf der Konsole?
__________________
Java Code: Quelltext in neuem Fenster öffnen
1
2
3
4
5
try{
   ask();
} catch(BrainException e){
   e.printStackTrace("You are too dumb!");
}
KingOfExceptions ist offline  
Bei Google nach dem markiertem Wort suchen Bei Wikipedia nach dem markiertem Wort suchen Im Forum nach dem markiertem Wort suchen
Mit Zitat antworten
Alt 29.08.2012, 09:05   #3 (permalink)
Stammbenutzer
Floppy Disc
 
Benutzerbild von bone2
 
Registriert seit: 08.11.2010
Fachbeiträge: 969
Abgegebene Danke: 14
Erhielt 136 Danke für 134 Beiträge
Java Code: Quelltext in neuem Fenster öffnen
1
2
3
4
5
6
do {
 
ergebnisA = würfel()
ergebnisB = würfel()
 
} while (ergebnisA != ergebnisB)

das sind primitive grundlagen, das hat man in der 2. unterrichtsstunde. schau dir mal schleifen und verzweigungen an...
__________________
Gib mir 3 Sekunden, edit ist mein Freund.
bone2 ist offline  
Bei Google nach dem markiertem Wort suchen Bei Wikipedia nach dem markiertem Wort suchen Im Forum nach dem markiertem Wort suchen
Mit Zitat antworten
Alt 29.08.2012, 09:06   #4 (permalink)
Stammbenutzer
Halbes Gigabyte
 
Registriert seit: 02.09.2009
Fachbeiträge: 6.091
Abgegebene Danke: 24
Erhielt 1.225 Danke für 1.209 Beiträge
Zitat: bone2
Beitrag anzeigen
Java Code: Quelltext in neuem Fenster öffnen
1
2
3
4
5
6
do {
 
ergebnisA = würfel()
ergebnisB = würfel()
 
} while (ergebnisA != ergebnisB)
Dann doch lieber nur einen Würfel werfen und den anderen auf den selben Wert setzen :P
__________________
jCSV - Simple CSV library for Java - http://code.google.com/p/jcsv/
Asteroid Impact - Echtzeit-Strategie-Browsergame
EikeB ist offline  
Bei Google nach dem markiertem Wort suchen Bei Wikipedia nach dem markiertem Wort suchen Im Forum nach dem markiertem Wort suchen
Mit Zitat antworten
Danke sagt:
bone2 (29.08.2012)
Alt 29.08.2012, 09:07   #5 (permalink)
Stammbenutzer
Floppy Disc
 
Benutzerbild von bone2
 
Registriert seit: 08.11.2010
Fachbeiträge: 969
Abgegebene Danke: 14
Erhielt 136 Danke für 134 Beiträge
Zitat: EikeB
Beitrag anzeigen
Dann doch lieber nur einen Würfel werfen und den anderen auf den selben Wert setzen :P
Die Idee gefällt mir
__________________
Gib mir 3 Sekunden, edit ist mein Freund.
bone2 ist offline  
Bei Google nach dem markiertem Wort suchen Bei Wikipedia nach dem markiertem Wort suchen Im Forum nach dem markiertem Wort suchen
Mit Zitat antworten
Alt 29.08.2012, 09:16   #6 (permalink)
Stammbenutzer
Viertel Megabyte
 
Benutzerbild von KingOfExceptions
 
Registriert seit: 20.04.2011
Fachbeiträge: 429
Abgegebene Danke: 94
Erhielt 51 Danke für 50 Beiträge
Ist wahrscheinlich nicht soooo optimal aber es funktioniert

Java Code: Quelltext in neuem Fenster öffnen
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
import java.util.Random;
 
public class PaschWuerfel
{
    public static void main(String[] args)
    {
        int ergebnis1;
        int ergebnis2;
        do
        {
            ergebnis1=wuerfeln();
            try
            {
                Thread.sleep((long) new Random().nextDouble());
            }
            catch (InterruptedException e)
            {
                e.printStackTrace();
            }
            ergebnis2=wuerfeln();
            System.out.println("Wurf 1: "+ergebnis1+" ; Wurf 2: "+ergebnis2);
            
        }while(ergebnis1!=ergebnis2);
    }
    
    static int wuerfeln()
    {
        return new Random().nextInt(6)+1;
    }
}
__________________
Java Code: Quelltext in neuem Fenster öffnen
1
2
3
4
5
try{
   ask();
} catch(BrainException e){
   e.printStackTrace("You are too dumb!");
}
KingOfExceptions ist offline  
Bei Google nach dem markiertem Wort suchen Bei Wikipedia nach dem markiertem Wort suchen Im Forum nach dem markiertem Wort suchen
Mit Zitat antworten
Alt 29.08.2012, 10:17   #7 (permalink)
Stammbenutzer
Floppy Disc
 
Benutzerbild von bone2
 
Registriert seit: 08.11.2010
Fachbeiträge: 969
Abgegebene Danke: 14
Erhielt 136 Danke für 134 Beiträge
a) warum kaust du ihm alles vor?

b) warum legst du den thread random 0 ms schlafen?

edit: ah, die sig, eine danke hure
__________________
Gib mir 3 Sekunden, edit ist mein Freund.
bone2 ist offline  
Bei Google nach dem markiertem Wort suchen Bei Wikipedia nach dem markiertem Wort suchen Im Forum nach dem markiertem Wort suchen
Mit Zitat antworten
Alt 29.08.2012, 10:20   #8 (permalink)
Stammbenutzer
Viertel Megabyte
 
Benutzerbild von KingOfExceptions
 
Registriert seit: 20.04.2011
Fachbeiträge: 429
Abgegebene Danke: 94
Erhielt 51 Danke für 50 Beiträge
Zitat: bone2
Beitrag anzeigen
a) warum kaust du ihm alles vor?

b) warum legst du den thread random 0 ms schlafen?
a) mir war grad langweilig...
b) wieso 0ms? damit man nicht mehrmals hintereinander die gleichen zahlen kriegt.
Zitat: Galileo Computing
Bevor der Zeitwert in eine Fließkommazahl umgewandelt wird, ist noch eine weitere Überlegung erforderlich. Wenn Sie die Zufallszahlengenerierung mehrmals hintereinander aufrufen, ähneln sich die ersten Zufallszahlen sehr, denn der Startwert ändert sich dort erst circa in der achten Nachkommastelle.
EDIT: eine danke HURE?! was soll das denn? nur weil ich ein danke für einen nützlichen beitrag verdient finde? heute vergreifen sich aber eine menge im tonfall....
__________________
Java Code: Quelltext in neuem Fenster öffnen
1
2
3
4
5
try{
   ask();
} catch(BrainException e){
   e.printStackTrace("You are too dumb!");
}

Geändert von KingOfExceptions (29.08.2012 um 10:25 Uhr)
KingOfExceptions ist offline  
Bei Google nach dem markiertem Wort suchen Bei Wikipedia nach dem markiertem Wort suchen Im Forum nach dem markiertem Wort suchen
Mit Zitat antworten
Alt 29.08.2012, 10:25   #9 (permalink)
Stammbenutzer
Viertel Gigabyte
 
Benutzerbild von faetzminator
 
Registriert seit: 05.01.2007
Fachbeiträge: 4.923
Abgegebene Danke: 57
Erhielt 542 Danke für 523 Beiträge
Zitat: KingOfExceptions
Beitrag anzeigen
a) mir war grad langweilig...
Wenn du dir den anderen Thread des TO anschaust, kannst du dir die Zeit mit kotzen ausfüllen
Zitat: KingOfExceptions
Beitrag anzeigen
b) wieso 0ms? damit man nicht mehrmals hintereinander die gleichen zahlen kriegt.
Auch wenn tatsälich meist die Systemzeit eine Rolle spielt, halte ich die dort aufgeführten Erläuterungen nicht gerade als Musterbeispiel. Und wenn, dann kann man gleich Thread.yield() verwenden

Zitat: KingOfExceptions
Beitrag anzeigen
nur weil ich ein danke für einen nützlichen beitrag verdient finde?
Das wird nützlich, sobald man "Danke" gegen EUR eintauschen kann... Ansonsten können wir es wie immer machen: Hose runter, Sch****vergleich! (Ich will damit zum Ausdruck bringen, dass die Diskussion über "Danke" sinnlos ist)
__________________
Ich bin keine Signatur, ich headbang hier nur!
faetzminator ist gerade online  
Bei Google nach dem markiertem Wort suchen Bei Wikipedia nach dem markiertem Wort suchen Im Forum nach dem markiertem Wort suchen
Mit Zitat antworten
Alt 29.08.2012, 10:28   #10 (permalink)
Stammbenutzer
Kilobyte
 
Registriert seit: 26.11.2011
Fachbeiträge: 110
Abgegebene Danke: 12
Erhielt 22 Danke für 21 Beiträge
Zitat: KingOfExceptions
Beitrag anzeigen
wieso 0ms?
Ich glaube er will darauf hinaus, dass (long) new Random().nextDouble() Quatsch ist, weil da immer 0 rauskommt.
Bile Demon ist offline  
Bei Google nach dem markiertem Wort suchen Bei Wikipedia nach dem markiertem Wort suchen Im Forum nach dem markiertem Wort suchen
Mit Zitat antworten
Alt 29.08.2012, 10:29   #11 (permalink)
Stammbenutzer
Viertel Megabyte
 
Benutzerbild von KingOfExceptions
 
Registriert seit: 20.04.2011
Fachbeiträge: 429
Abgegebene Danke: 94
Erhielt 51 Danke für 50 Beiträge
Zitat: faetzminator
Beitrag anzeigen
Das wird nützlich, sobald man "Danke" gegen EUR eintauschen kann... Ansonsten können wir es wie immer machen: Hose runter, Sch****vergleich! (Ich will damit zum Ausdruck bringen, dass die Diskussion über "Danke" sinnlos ist)
Jetzt kommt doch alle mal runter... Für so ein kleines Mini-Programm braucht man doch nichts zahlen... zumindest nicht, wenn mir langweilig ist Fazit: Die Danke-Diskussion ist hier fehl am Platze.
__________________
Java Code: Quelltext in neuem Fenster öffnen
1
2
3
4
5
try{
   ask();
} catch(BrainException e){
   e.printStackTrace("You are too dumb!");
}
KingOfExceptions ist offline  
Bei Google nach dem markiertem Wort suchen Bei Wikipedia nach dem markiertem Wort suchen Im Forum nach dem markiertem Wort suchen
Mit Zitat antworten
Alt 29.08.2012, 10:30   #12 (permalink)
Stammbenutzer
Floppy Disc
 
Benutzerbild von bone2
 
Registriert seit: 08.11.2010
Fachbeiträge: 969
Abgegebene Danke: 14
Erhielt 136 Danke für 134 Beiträge
Zitat: KingOfExceptions
Beitrag anzeigen
b) wieso 0ms? damit man nicht mehrmals hintereinander die gleichen zahlen kriegt.

EDIT: eine danke HURE?! was soll das denn? nur weil ich ein danke für einen nützlichen beitrag verdient finde? heute vergreifen sich aber eine menge im tonfall....
b) ein 0.xyz double auf int gecasted ist immer 0
es vergehen eh schon cycles, wo er beispielsweise die 1 im würfeln zum random ergbnis addiert, sleep ist imo unnötig.

Java Code: Quelltext in neuem Fenster öffnen
1
2
3
4
5
        for(int i = 1; i < 100; i++) {
            int a = new Random().nextInt(6)+1;
            int b = new Random().nextInt(6)+1;
            System.out.println(a + " " + b);
        }

Offtopic:
posten nur weil man danke sammeln will. bin ich großer fan von, vor allem wenn man esnoch in so aufdringlicher großer roter schrift 2mal in der sig verlangt. user werden sich schon bedanken wenn sie es für angemessen halten. der danke button hat nicht wirklich einen sinn und ist imo total überflüssig
__________________
Gib mir 3 Sekunden, edit ist mein Freund.
bone2 ist offline  
Bei Google nach dem markiertem Wort suchen Bei Wikipedia nach dem markiertem Wort suchen Im Forum nach dem markiertem Wort suchen
Mit Zitat antworten
Alt 29.08.2012, 10:31   #13 (permalink)
Stammbenutzer
Viertel Megabyte
 
Benutzerbild von KingOfExceptions
 
Registriert seit: 20.04.2011
Fachbeiträge: 429
Abgegebene Danke: 94
Erhielt 51 Danke für 50 Beiträge
Zitat: Bile Demon
Beitrag anzeigen
Ich glaube er will darauf hinaus, dass (long) new Random().nextDouble() Quatsch ist, weil da immer 0 rauskommt.
Das stimmt aber nicht.... Ich hab mal den Test gemacht:

Code:
0.94525486
0.12616083
0.66240716
0.44997197
0.08774629
0.31162557
0.034802414
0.9388701
0.6829761
0.6609974
0.6243153
0.16821659
__________________
Java Code: Quelltext in neuem Fenster öffnen
1
2
3
4
5
try{
   ask();
} catch(BrainException e){
   e.printStackTrace("You are too dumb!");
}
KingOfExceptions ist offline  
Bei Google nach dem markiertem Wort suchen Bei Wikipedia nach dem markiertem Wort suchen Im Forum nach dem markiertem Wort suchen
Mit Zitat antworten
Alt 29.08.2012, 10:32   #14 (permalink)
Stammbenutzer
Floppy Disc
 
Benutzerbild von bone2
 
Registriert seit: 08.11.2010
Fachbeiträge: 969
Abgegebene Danke: 14
Erhielt 136 Danke für 134 Beiträge
Zitat: KingOfExceptions
Beitrag anzeigen
Das stimmt aber nicht.... Ich hab mal den Test gemacht:

0.94525486 0.12616083 0.66240716 0.44997197 0.08774629 0.31162557 0.034802414 0.9388701 0.6829761 0.6609974 0.6243153 0.16821659
dann caste die ergebnisse mal auf (long)
__________________
Gib mir 3 Sekunden, edit ist mein Freund.
bone2 ist offline  
Bei Google nach dem markiertem Wort suchen Bei Wikipedia nach dem markiertem Wort suchen Im Forum nach dem markiertem Wort suchen
Mit Zitat antworten
Alt 29.08.2012, 10:33   #15 (permalink)
Stammbenutzer
Viertel Megabyte
 
Benutzerbild von KingOfExceptions
 
Registriert seit: 20.04.2011
Fachbeiträge: 429
Abgegebene Danke: 94
Erhielt 51 Danke für 50 Beiträge
Zitat: bone2
Beitrag anzeigen
dann caste die ergebnisse mal auf (long)
Sind schon :p und damit es dich beruhigt: jetzt halt keine sig mehr.
KingOfExceptions ist offline  
Bei Google nach dem markiertem Wort suchen Bei Wikipedia nach dem markiertem Wort suchen Im Forum nach dem markiertem Wort suchen
Mit Zitat antworten
Danke sagt:
bone2 (29.08.2012)
Alt 29.08.2012, 10:34   #16 (permalink)
Stammbenutzer
Floppy Disc
 
Benutzerbild von bone2
 
Registriert seit: 08.11.2010
Fachbeiträge: 969
Abgegebene Danke: 14
Erhielt 136 Danke für 134 Beiträge
Zitat: KingOfExceptions
Beitrag anzeigen
Sind schon :p
longs haben aber selten kommastellen
__________________
Gib mir 3 Sekunden, edit ist mein Freund.
bone2 ist offline  
Bei Google nach dem markiertem Wort suchen Bei Wikipedia nach dem markiertem Wort suchen Im Forum nach dem markiertem Wort suchen
Mit Zitat antworten
Alt 29.08.2012, 10:36   #17 (permalink)
Stammbenutzer
Viertel Megabyte
 
Benutzerbild von KingOfExceptions
 
Registriert seit: 20.04.2011
Fachbeiträge: 429
Abgegebene Danke: 94
Erhielt 51 Danke für 50 Beiträge
gucks dir selbst an:

Java Code: Quelltext in neuem Fenster öffnen
1
2
3
4
5
while(true)
        {
            System.out.println((float)new Random().nextDouble());
            System.out.println(new Random().nextDouble());
        }

bei mir:
Java Code: Quelltext in neuem Fenster öffnen
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
0.35304937050031937
0.57134867
0.08915329762139412
0.50101256
0.8350171473768307
0.10843991
0.12935842168212308
0.5716726
0.1814527523930266
0.34938252
0.8976548457419956
0.44961387
0.22339332215266905
0.021389892
0.6685597804250061
0.93727386
0.15727694166815864
0.010215317
0.01408403087556176
0.23602504
0.15169041755660528
0.6871222
0.03415573352586265
0.6091017
0.16813481123190044
0.9008272
0.34578191840035444
0.8937171
0.8841820898809468
0.6847016
0.5749515258714147
0.4232552
0.3876110281928201
0.35756648
0.2683719929934676
0.6901733
0.2706738913233484
0.79659474
0.12379776572231871
0.5687502
0.8481165343921588
0.10041666
0.9213374094112482
0.69680667
0.90146875798269
0.051615387
0.05092268793704846
0.9730155
0.22554008042849194
0.35392022
0.47071418655613095
0.07187537
0.5737426403183031
0.11542147
0.8491184275948734
0.6358773
0.43576046031027693
0.97530526
0.6821506877956487
0.6857569
0.9576658881384938
0.2565417
KingOfExceptions ist offline  
Bei Google nach dem markiertem Wort suchen Bei Wikipedia nach dem markiertem Wort suchen Im Forum nach dem markiertem Wort suchen
Mit Zitat antworten
Alt 29.08.2012, 10:37   #18 (permalink)
Stammbenutzer
Viertel Megabyte
 
Benutzerbild von KingOfExceptions
 
Registriert seit: 20.04.2011
Fachbeiträge: 429
Abgegebene Danke: 94
Erhielt 51 Danke für 50 Beiträge
hier stand was falsches

Geändert von KingOfExceptions (29.08.2012 um 10:42 Uhr)
KingOfExceptions ist offline  
Bei Google nach dem markiertem Wort suchen Bei Wikipedia nach dem markiertem Wort suchen Im Forum nach dem markiertem Wort suchen
Mit Zitat antworten
Alt 29.08.2012, 10:39   #19 (permalink)
Stammbenutzer
Floppy Disc
 
Benutzerbild von bone2
 
Registriert seit: 08.11.2010
Fachbeiträge: 969
Abgegebene Danke: 14
Erhielt 136 Danke für 134 Beiträge
Zitat: KingOfExceptions
Beitrag anzeigen
gucks dir selbst an:

Java Code: Quelltext in neuem Fenster öffnen
1
2
3
4
5
while(true)
        {
            System.out.println((float)new Random().nextDouble());
            System.out.println(new Random().nextDouble());
        }
ähm nu ist es ohne (long) und mit (float) ?

Java Code: Quelltext in neuem Fenster öffnen
1
2
3
4
        for(int i = 1; i < 100; i++) {
            System.out.print((long) new Random().nextDouble());
            System.out.print(" ");
        }

Code:
0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0
Zitat: KingOfExceptions
Beitrag anzeigen
willst du nochmal ein anfänger tut machen tut
les dir lieber nochmal durch, was du oben geschrieben hast
__________________
Gib mir 3 Sekunden, edit ist mein Freund.
bone2 ist offline  
Bei Google nach dem markiertem Wort suchen Bei Wikipedia nach dem markiertem Wort suchen Im Forum nach dem markiertem Wort suchen
Mit Zitat antworten
Alt 29.08.2012, 10:40   #20 (permalink)
Stammbenutzer
Kilobyte
 
Registriert seit: 26.11.2011
Fachbeiträge: 110
Abgegebene Danke: 12
Erhielt 22 Danke für 21 Beiträge
Zitat: KingOfExceptions
Beitrag anzeigen
gucks dir selbst an:

Java Code: Quelltext in neuem Fenster öffnen
1
2
3
4
5
while(true)
        {
            System.out.println((float)new Random().nextDouble());
            System.out.println(new Random().nextDouble());
        }
Bei mir sieht das irgendwie wie ein Cast nach float aus.
Bile Demon ist offline  
Bei Google nach dem markiertem Wort suchen Bei Wikipedia nach dem markiertem Wort suchen Im Forum nach dem markiertem Wort suchen
Mit Zitat antworten
Antwort    

Themen-Optionen Thema durchsuchen
Thema durchsuchen:

Erweiterte Suche
Ansicht

Ähnliche Themen
Thema Autor Forum Antworten Letzter Beitrag
(3D-Grafik) Erstellen vieler gleicher Würfel Dragor AWT, Swing, JavaFX & SWT 5 27.08.2011 00:37
Würfelspiel "Fifty!" (Wahrscheinlichkeitsrechnung) Blindxantos Mathematik 29 24.07.2011 20:09
Java3D - Problem mit rotierendem Würfel marcel_se_best Spiele- und Multimedia-Programmierung 2 10.12.2008 09:50
Würfel spiel Melly Java Basics - Anfänger-Themen 4 01.04.2007 19:16
zwei rotierende Würfel andy0566 Spiele- und Multimedia-Programmierung 1 14.10.2004 16:52


Lesezeichen

Forumregeln
Es ist Ihnen erlaubt, neue Themen zu verfassen.
Es ist Ihnen erlaubt, auf Beiträge zu antworten.
Es ist Ihnen nicht erlaubt, Anhänge hochzuladen.
Es ist Ihnen nicht erlaubt, Ihre Beiträge zu bearbeiten.

BB-Code ist an.
Smileys sind an.
[IMG] Code ist an.
HTML-Code ist aus.
Trackbacks are aus
Pingbacks are aus
Refbacks are aus


Alle Zeitangaben in WEZ +1. Es ist jetzt 02:10 Uhr.


Powered by vBulletin® Version 3.8.6 (Deutsch)
Copyright ©2000 - 2013, Jelsoft Enterprises Ltd.
Search Engine Friendly URLs by vBSEO 3.3.2
Thanks for Smilies by smilies.4-user.de