cybertears Postad 9 april, 2013 Share Postad 9 april, 2013 hej jag har en Pseudokod och jag skulle vilja få det att fungera, jag vet inte hur jag ska börja som... är det någon snäll själ som kan hjälpa mig? Pseudokod : Slumpa två kort Addera ( plussa) ihop dem Visa resultatet för användaren Fråga om användaren vill ha fler kort start loop Slumpa kort så länge användaren vill ha fler kort Addera ihop dem Visa resultatet för användaren och fråga igen om fler kort slut loop slumpa datorns kort 17-24 Vem vann? Skriv ut resultatet! Mvh Jessar Länk till kommentar Dela på andra webbplatser More sharing options...
Monshi Postad 9 april, 2013 Share Postad 9 april, 2013 Visual Basic? Visual Basic for Applications? VBScript? Samt låter som du går en programmeringskurs och vill ha lite hjälp. Mitt råd utan att ge dig kod, dela upp det hela i atomära delar. Dvs en rutin som enbart slumpar fram kort. En som frågar om användaren vill ha kort En som loopar. Typ. Steg för steg. Något kan du väl? Länk till kommentar Dela på andra webbplatser More sharing options...
cybertears Postad 9 april, 2013 Trådskapare Share Postad 9 april, 2013 Ja, jag behöver lite hjälp Jag försökte lite själv. såhär långt har jag kommit Randomize 'Frågar om man vill spela. fraga = MsgBox("Vill du spela?",vbYesNo,"Kortspel") If fraga = 6 Then Spelare1 = InputBox("Skriv namn för spelare1","Spelare1") Spelare2 = InputBox("Skriv namn för spelare2","Spelare2") End If blanda1 = 1+Int(13*Rnd) blanda2 = 1+Int(13*Rnd) If blanda1 > blanda2 Then MsgBox Spelare1 & " Vann! " & spelare1 & " hade " & blanda1 & " poäng och " & Spelare2 & " hade " & blanda2 & " poäng",,"Resultat" ElseIf blanda2 > blanda1 Then MsgBox spelare2 & " Vann " & spelare2 & " hade " & blanda2 & " poäng och " & Spelare1 & " hade " & blanda1 & " poäng",,"Resultat" Else MsgBox "Det blev lika! " & spelare1 & " hade " & blanda1 & " poäng och " & blanda2 & " hade " & blanda2 & " poäng",,"Resultat" End If Länk till kommentar Dela på andra webbplatser More sharing options...
Monshi Postad 9 april, 2013 Share Postad 9 april, 2013 Det du saknar, vad jag kan se, är En fråga till spelaren om fler kort. Använd en MSGBOX med Yes-No val, kolla svaret och agera. Loopen som ska köras. Typ While svar-ja-från-användare ge fler kort presentera kolla om fler kort Wend Och en liknande loop för datorn, dvs loopa tills summan är över 17. men antar VB, inte VBA, flyttar tråden till VB Länk till kommentar Dela på andra webbplatser More sharing options...
cybertears Postad 11 april, 2013 Trådskapare Share Postad 11 april, 2013 Såhär? 'inledning - dagens datum och vad spelet går ut på 'Frågar om man vill spela. MsgBox "Välkommen till Jesses lilla spel!" & vbNewLine & "Detta kortspel går ut på att användaren spelar mot datorn. " & vbNewLine & "användaren får först två kort (1-13), men kan sedan välja om den vill ha fler kort." & vbNewLine & "Det går ut på att komma så nära 21 som möjligt!" & vbNewLine & "den som får högst tal vinner! " & vbNewLine & "Detta spel är bara baserat på tur, bli inte besviken om du förlorar!",,"Välkommen" Spelare1 = InputBox("Skriv namn för spelare1","Spelare1") 'Slumpa två kort Randomize spelare1Poang=0 DatornsPoang=0 lika=0 blanda1 = 1+Int(13*Rnd) blanda2 = 1+Int(13*Rnd) 'Addera ( plussa) ihop dem summa=blanda1+blanda2 'Visa resultatet för användaren MsgBox spelare1 & " fick " & summa,,"Ditt resultat" 'Fråga om användaren vill ha fler kort PlayAgain= MsgBox(" vill du ha fler kort? " ,vbYesNo,"Kortspel") 'start loop while playAgain=vbYes 'Slumpa kort så länge användaren vill ha fler kort blanda2 = 1+Int(13*Rnd) '<-- slumpar ett kort till 'Addera ihop gammalt kort+det nya kortet summa=blanda2+summa 'Visa resultatet för användaren och fråga igen om fler kort Msgbox Spelare1 & " har " & summa PlayAgain= MsgBox(" vill du ha fler kort? " ,vbYesNo,"Kortspel") 'slut loop Wend 'slumpa datorns kort 17-24 Datornskort1=17+Int(7*Rnd) If summa > Datornskort1 Then MsgBox Spelare1 & " Vann! " & vbNewLine & spelare1 & " hade " & summa & " poäng och datorn hade " & Datornskort1 & " poäng",,"Resultat" spelare1Poang=spelare1Poang+1 'Om spelare2 har större tal än spelare 1 så vinner spelare 2 ElseIf Datornskort1 > summa Then MsgBox "Datorn Vann!" & vbNewLine & "Datorn hade " & Datornskort1 & " poäng " & spelare1 & " hade " & summa & " poäng",,"Resultat" DatornsPoang=DatornsPoang+1 Else MsgBox "Det blev lika! " & vbNewLine & spelare1 & " hade " & summa & " poäng och datorn" & " hade " & Datornskort1 & " poäng",,"Resultat" lika=lika+1 End If '<-- slut på If sats MsgBox Spelare1 & " vann totalt " &spelare1Poang&" gånger"& vbNewLine & "Datorn" & " vann totalt " &DatornsPoang&" gånger"& vbNewLine & " Det blev oavgjort " &lika&" gånger",,"Resultat" Länk till kommentar Dela på andra webbplatser More sharing options...
Monshi Postad 11 april, 2013 Share Postad 11 april, 2013 Tycks fungera när jag provkör koden i Excel... Fast du, det är god sed att deklarerar variablerna. Gör koden mycket mer robust. Länk till kommentar Dela på andra webbplatser More sharing options...
Rekommendera Poster
Arkiverat
Det här ämnet är nu arkiverat och är stängt för ytterligare svar.