Som besökare på Hamsterpaj samtycker du till användandet av s.k. cookies för att förbättra din upplevelse hos oss. Jag förstår, ta bort denna ruta!
Annons

Tärnings generator vb6

Skapad av Borttagen, 2010-07-05 20:06 i Webbutveckling & Programmering

1 636
5 inlägg
0 poäng
drago87
Visningsbild
P 37 Skellefteå Hjälte 8 inlägg
0
Jag håller på att göra en tärnings genarator som ska slå en T6 och om det blir en 6 så ska den slå om tärningen samt lägga till en ny tärning.

Om ni har kört EoN så är det tex Ob6T1

Här är koden som jag slängt ihopa.

Alla förutom i och q är Integer
[code]
Private Sub CMD1_Click()
i = 1 '' så att den alltid börgar på första tärningen
q = antal ''antal tärningar
Do While P <= 11
Text2(P).Text = "" ''har 12 Text2 rutor (0-11) för att se alla utslag
P = P + 1
Loop
Do While i <= q
R = Int(6 * Rnd + 1)
S = R
Text2(i - 1).Text = S
If R = 6 Then
q = q + 1
If i = 1 Then

ElseIf i <> 1 Then
i = i - 1
End If
ElseIf R < 6 Then
R = R + R
i = i + 1
End If

Loop
RESULTAT.Text = R ''summan av alla slagen
Text1.Text = q ''för att se hur mänga tärningar jag har slagt
End Sub
[/code]

Problemet jag har är att om första tärnings slaget blir 5 så blir resultatet 10 samma om det blir 3 så är resultatet 6 men om första tärningen blir 6 och så slår den 2 nya med 5 och 3 men då är resultatet 3. Det som värkar hända är att den dubblar resultatet av den sista tärningen.

Någon som hittar något fel?

Är reklamen ivägen? Logga in eller registrera dig så försvinner den!

morphman86
Visningsbild
P 38 Göteborg Hjälte 6 450 inlägg
0

Svar till drago87 [Gå till post]:

Jag hade samma problem första gångerna. Det har att göra med att rnd baseras på datorns klocka och eftersom uträkningen görs flera gånger per sekund, så får alla tärningarna samma resultat.
Du kan lösa detta antingen genom att lägga till ett vänta-kommando på en sekund i loopen, vilket får generatorn att bli väldigt seg, speciellt när du slår många sexor, eller ändra rnd's seed. Hur du gör det senare har jag glömt, men det var så jag löste det.

One pill makes you larger, one pill makes you small, but the pills that mother gave you don't do nothing at all

drago87
Visningsbild
P 37 Skellefteå Hjälte 8 inlägg
Trådskapare
0


Glömde säga att jag har Randomize i Form_Load.

och det är inte att dom får samma resultat det är att det förväntade resultatet inte stämmer med tärnings utfallet.
om jag slår en 5'a så ska resultatet vara 5 inte 10
om jag slår en6'a sen slår om tärningen + en till och utfallet är 5 och 3 så ska resultatet bli 8 inte 6
morphman86
Visningsbild
P 38 Göteborg Hjälte 6 450 inlägg
0
Svar till drago87 [Gå till post]:

tror felet ligger här:

ElseIf R < 6 Then
R = R + R

One pill makes you larger, one pill makes you small, but the pills that mother gave you don't do nothing at all

drago87
Visningsbild
P 37 Skellefteå Hjälte 8 inlägg
Trådskapare
0
Det var det som var ett av felen det andra felet kvarstår.
nu är det om jag slår 6 och får 2 tärningar och slår med dom så får jag enbart resultatet från det sista slaget.


ändrade
[code:]ElseIf R < 6 Then
R = R + R[/code]
till
[code:]ElseIf R < 6 Then
T = T + R[/code]
och
[code]
RESULTAT.Text = R
[/code]
till
[code]
RESULTAT.Text = T
[/code]

Tillägg av drago87 2010-07-05 21:15

Never mind hittade felet hadde av någon dum anledning lagt till T=R efter loopen



Tillägg av drago87 2010-07-05 21:23

Har hittat ytligare fel när jag ställer den på att börga med flera tärningar 4 eller fler så blir inte alltid svaret rätt. när jag räknar summan så blir svaret tex jag slår 6 tärningar resultatet blir 2 st 6 or som slås om dom andra blir 4 + 5 + 4 +1 + 2 + 5 + 1 + 4 = 26 men programet säger att svaret ska bli 31



Tillägg av drago87 2010-07-05 21:31

Äfter lite pillande så tror jag att jag har fått det att fungera tog bort

i = i - i

här

ElseIf i <> 1 Then
i = i - 1
End If


Forum » Datorer & IT » Webbutveckling & Programmering » Tärnings generator vb6

Ansvariga ordningsvakter:

Användare som läser i den här tråden just nu

2 utloggade

Skriv ett nytt inlägg

Hej! Innan du skriver om ett potentiellt problem så vill vi påminna dig om att du faktiskt inte är ensam. Du är inte onormal och världen kommer inte att gå under, vi lovar! Så slappna av och gilla livet i några minuter - känns det fortfarande hemskt? Skriv gärna ner dina tankar och frågor, vi älskar att hjälpa just dig!

Den här tråden är äldre än Rojks drömtjej!

Det senaste inlägget i den här tråden skrevs för över tre månader sedan. Är du säker på att du vill återuppliva diskussionen? Har du något vettigt att tillföra eller passar din fråga i en ny tråd? Onödiga återupplivningar kommer att låsas så tänk efter en extra gång!

Hjälp

Det här är en hjälpruta

Här får du korta tips och förklaringar om forumet. Välj kapitel i rullningslisten här ovanför.

Rutan uppdateras automagiskt

När du använder funktioner i forumet så visas bra tips här.


Annons
Annons
Annons
Annons