Tren programmeringslogikk med et sjansespill

Innholdsfortegnelse

Dette er ikke en opplæring som andre, det eneste jeg tar med her er en mini tekstgrensesnitt gamblingFor å gi deg et innblikk i hvordan det fungerer, her er et skjermbilde av et spill der jeg "vinner".

De spillet handler om å satse og velge mellom 3 alternativer som er gitt, vil et av de dårlige alternativene umiddelbart bli avslørt (der du ikke vinner) og vil be deg om å avgjøre om du vil øke innsatsen eller endre alternativet (det er bare 2 igjen, og ett er ditt , så endringen vil være automatisk), for endelig å vise resultatet, hvis du vinner vil du ha summen av den innledende saldoen på kreditter og innsatsen din, hvis du taper vil du ha subtraksjonen.

MerkDet er ingen algoritme for å lage tilfeldige tall, så vi stoler på å lage pseudo-tilfeldige tall for å avgjøre hvilket som er det vinnende alternativet, det gjøres med følgende instruksjoner:

 random.seed () ess = random.randrange (3)

Her er koden:

 import io import random from encodings.idna import ace_prefix # coding = class set: def show (ele, pos, ace, ch = 0): aux2 = 0 if (ele == 0): print (".-… -… - . ") print (" 1 2 3 ") elif (ele == 1): print (" .-… -… -. ") aux = 0 ya = False while aux <= 2: if (aux == ess eller aux == pos eller ya): print ("X", end = "") else: print ("Q", end = "") ya = True aux2 = aux aux + = 1 print () else: aux = 0 while (aux 0): aux = "" + aux posi- = 1 print (aux + "Chosen") return aux2 # End show def choice (): op = 9 while (op = 3): print ("Hvilket alternativ velger du (1,2,3)? ") op = int (input ()) # genererer unntak hvis et tall ikke er angitt op - = 1 hvis (op = 3): print (" Du kan bare velge mellom 1 til 3 hvordan alternativ ") returner op def readBet (credits): error = True while error: print (" Du har " + str (credits) +" credits, hvor mye satser du? ") bet = int (input () ) # genererer unntak hvis ikke et tall er angitt hvis (innsats> studiepoeng): print ("Du har ikke så mange studiepoeng …") elif (innsats 0: random.seed () ess = random.randrange (3 ) bet2 = 0 feil = True bet = game.readBet (credits) play = game () game.show (0,0,0,1) option = game.choice () game.show (0, option, ess) print ("Bekrefter du dette valget?… SN ") safe = input () if (safe.lower () == 's'): print (" ok ") else: option = game.choice () auxiliary = game.show (1, alternativ , ess) repeat = True while repeat: print ("[A] øk innsats, eller [C] endre alternativ") conf = input () if (conf.upper () == 'A'): if ((credits- bet) == 0): print ("Du kan ikke satse mer, se på kredittkortene dine!") print ("Vil du endre alternativet ditt? (Y / N) ") wish = input () if (wish.lower () == 's'): option = game.changeOption (ekstra, option) else: bet2 = game.readBet (bet-credits) repeat = Falsk elif (conf.upper () == 'C'): option = game.changeOption (tilleggsutstyr) repeat = False else: print ("Feil alternativ> <") print ("Er du klar? … hva en spenning, trykk enter, la oss se hva som skjer ") input () game.show (2, option, ess) if (ace == option): print (" Yes, you win ") credits + = (bet + bet2) else: print ("Beklager, du vant ikke") credits - = (bet + bet2) if (credits == 0): print ("Beklager, du gikk tom for studiepoeng, bye, bye") else: print ( "Du har for øyeblikket" + str (credits) + "credits") print ("Vil du fortsette å spille (SN)") follow = input ()
I koden er variabelen ess det alternativet som vil vinne, det vil bli malt på slutten som bokstav A, hvis det er et alternativ som ikke vinner, vil det bli malt som Q, du kan se alternativet du har valgt med -symbolet som vises under alternativet.

MerkMålet med spillet er ikke å lære å lage god kode eller lage "videospill", men heller å lære å håndtere logikk godt i programmering, å arbeide med betingelser, sløyfer og interaksjon med brukeren. De mulige unntakene som kan hoppe dekkes ikke for å unngå å legge til "kompleksitet", selv om de i Python er veldig enkle å bruke, har linjene som kan generere problemer blitt kommentert i koden.

Likte og hjalp du denne opplæringen?Du kan belønne forfatteren ved å trykke på denne knappen for å gi ham et positivt poeng

Du vil bidra til utvikling av området, dele siden med vennene dine

wave wave wave wave wave