示例#1
0
def main():
    # Her ber jeg brukeren om å oppgi antall rader og kolonner.
    rader = int(input("Vennligst oppgi antall rader: "))
    kolonner = int(input("Vennligst oppgi antall kolonner: "))

    spill = Spillebrett(rader, kolonner)
    print("\n")
    spill.tegnBrett()
    print("\n")
    print("Antall levende celler: ", spill.finnAntallLevende(), ".", sep="")
    print("\n")

    inp = str(
        input(
            "Vil du fortsette? Trykk enter for å fortsette eller tast inn q for å avslutte: "
        ))
    # Her bruker jeg en while-løkke for å få programmet til å kjøre så lenge
    # brukeren vil.
    while inp != "q":
        spill.oppdatering()
        print("\n")
        spill.tegnBrett()
        print("\n")
        print("Antall levende celler: ",
              spill.finnAntallLevende(),
              ".",
              sep="")
        print("Generasjonsnummer: ", spill.generasjonsnummer(), ".", sep="")
        print("\n")
        inp = str(
            input(
                "Vil du fortsette? Trykk enter for å fortsette eller tast inn q for å avslutte: "
            ))
示例#2
0
def main():
    """Brukes for aa kjoere Conways game of life"""

    print("Skriv inn dimensjoner")
    rader = int(input("\nRad:"))
    kolonner = int(input("\nKolonner:"))

    brett = Spillebrett(rader, kolonner)

    brett.tegnBrett()
    print("Generasjon:", brett.generasjon(), " - Antall Levende:",
          brett.finnAntallLevende())

    UserInput = str(
        input(
            "Press enter for aa fortsette. Skriv inn q og trykk enter for aa avslutte:"
        ))

    while UserInput != "q":
        brett.oppdatering()
        brett.tegnBrett()
        print("Generasjon:", brett.generasjon(), " - Antall Levende:",
              brett.finnAntallLevende())
        UserInput = str(
            input(
                "Press enter for aa fortsette. Skriv inn q og trykk enter for aa avslutte:"
            ))
示例#3
0
def main():
    # Oppretter spillebrett objekt. Spør om antall rader og kolonner fra brukeren.
    brett = Spillebrett(int(input("Oppgi rader: ")),
                        int(input("Oppgi kolonner: ")))
    # Tegner brettet
    brett.tegnBrett()
    # Printer ut generasjonsnummeret og antall levende.
    print("Generasjon:", brett._gen)
    print("Antall levende", brett.finnAntallLevende())

    # Henter input fra brukeren og går i en while løkke som går så lenge brukeren ikke taster "q" eller om brukeren tastet "a"
    tast = input("Enter = neste Generasjon, q = avslutt, automatisk = a\n")
    while tast != "q" or tast == "a":
        if tast == "a":
            # Dersom brukeren skriver "a" så spør vi om hvor mange generasjoner den skal gå gjennom
            antallGens = int(input("Antall generasjoner: "))
            # While løkke som går dersom tallet brukeren har oppgitt er større enn brettets generasjoner
            while antallGens > brett._gen:
                brett.oppdatering()
                print("Generasjon:", brett._gen)
                print("Antall levende", brett.finnAntallLevende())
            # Når løkken er ferdig så spør vi om input igjen.
            tast = input(
                "Enter = neste Generasjon, q = avslutt, automatisk = a\n")
        else:
            # Dersom man skal bare trykke enter for å oppdatere så gjør vi dette.
            brett.oppdatering()
            print("Generasjon:", brett._gen)
            print("Antall levende", brett.finnAntallLevende())
            tast = input(
                "Enter = neste Generasjon, q = avslutt, automatisk = a\n")
示例#4
0
def Main():
    bredde = int(input(
        "hvor bred skal rutenettet være?"))  # lar bruker velge bredde på brett
    lengde = int(input(
        "hvor lang skal rutenettet være?"))  # lar bruker velge lengde på brett
    spillebrett1 = Spillebrett(
        bredde,
        lengde)  # oppretter objektet spillebrett med de to angitte parametere
    spillebrett1.tegnBrett()  # tegner gen 0
    print("Generasjon:" + " " + str(spillebrett1.gennummer) + " - " +
          "Antall levende celler:" + str(spillebrett1.finnAntallLevende())
          )  # printer antall levende celler og gen nummer
    kommando = ""  # oppretter kommandovariabel for den kontinuerlig kjørende løkka ( programmet)

    while kommando != "q":  # man skriver 1 i kommando for å avslutte
        kommando = input(
            "trykk enter for aa generere og skriv q for aa avslutte"
        )  # tar input som kommando
        if kommando != "q":  # om kommando ikke er q utføres opdateringen ellers avsluttes program for man looper til topp
            spillebrett1.oppdatering()  # oppdaterer spillebrett objekt
            spillebrett1.tegnBrett()  # tegner opp det nye brettet
            print("Generasjon:" + " " + str(spillebrett1.gennummer) + " - " +
                  "Antall levende celler:" +
                  str(spillebrett1.finnAntallLevende())
                  )  # printer antall levende celler og gen nummer
示例#5
0
def main():
    rader = int(input("Skriv inn antall rader:"))
    kolonner = int(input("Skriv inn antall kolonner:"))
    nyttSpillebrett = Spillebrett(rader, kolonner)
    nyttSpillebrett.tegnBrett()
    print()
    print()

    fortsette = True
    while fortsette:
        nyttSpillebrett.oppdatering()
        nyttSpillebrett.generasjonsnummer()
        nyttSpillebrett.finnAntallLevende()
        fortsette = input("Press enter for aa fortsette. Skriv inn q og trykk enter for aa avslutte:")
示例#6
0
def hovedprogram():
    '''celle1 = Celle()
    print(celle1.hentStatusTegn())
    celle1.settLevende()
    print(celle1.hentStatusTegn())'''

    celle1 = Celle()

    etBrett = Spillebrett(20, 20)

    etBrett.tegnBrett()
    etBrett.finnAntallLevende()
    etBrett.oppdatering()
    etBrett.finnAntallLevende()
示例#7
0
def hovedProgram():
#brukeren oppgir maaler paa spillebrettet og bestemmer om hun vil opprette neste generasjon eller avslutte spillet

    rader = int(input("Oppgi antall rader: "))
    kolonner = int(input("Oppgi antall kolonner: "))

    #oppretter spillebrett-objekt som generer rutenettet automatisk. Deretter skriver ut brettet til terminalen
    spilleBrett1 = Spillebrett(rader, kolonner)
    spilleBrett1.tegnBrett()

    #info om foerste generasjon
    print("Generasjon 0. Antall levende celler: " + str(len(spilleBrett1.finnAntallLevende())))
    fortsette = input("Trykk ENTER for aa fortsette. Skriv inn 'q' og trykk ENTER for aa avslutte: ")

    #denne listen brukes for aa sammenligne naboer fra den forrige og naavaarende generasjonen dersom antall levende celler er samme
    #hvis de to listene er samme, betyr det at ingenting har endret seg paa brettet - livet har vunnet
    sammenlignLevende = []

    while fortsette == "" and len(spilleBrett1.finnAntallLevende()) != 0 and len(sammenlignLevende) == 0:
    #loekke fortsetter saa lenge brukeren taster 'enter', antall levende celler er ikke 0 og listen med identiske levende celler er tom
        
        lenvendeCeller0 = spilleBrett1.finnAntallLevende()                      #levende celler foer oppdateringen
        generasjon = spilleBrett1.oppdatering()                                 #spillebrettet oppdateres            
        antallLevende = len(spilleBrett1.finnAntallLevende())                   #antall levende celler etter oppdateringen      
        spilleBrett1.tegnBrett()                                                #spillebrettet tegnes
        lenvendeCeller1 = spilleBrett1.finnAntallLevende()                      #levende celler etter oppdateringen
        if antallLevende != 0 and lenvendeCeller0 == lenvendeCeller1:
        #hvis levende celler er samme som i den forrige generasjonen:
            sammenlignLevende.append(lenvendeCeller0)                           #legger levende celler til lista
            sammenlignLevende.append(lenvendeCeller1)
        elif antallLevende != 0 and lenvendeCeller0 != lenvendeCeller1:
        #Det er noen levende celler som skiller seg fra de fra forrige generasjonen, spillet fortsetter
            print("Generasjon: " + str(generasjon) + ". Antall levende celler: " + str(antallLevende) + ".")
            fortsette = input("Trykk ENTER for aa fortsette. Skriv inn 'q' og trykk ENTER for aa avslutte: ")      
    
    #to mulige avslutninger naar spillet er over:

    if len(sammenlignLevende) != 0:
    #naar noen celler overlevde og ingenting har endret seg paa brettet:
        print("VI OVERLEVDE! LIVET HAR VUNNET!")
    else:
    #naar alle cellene har doed:
        print("GAME OVER!")
        print()
        print("Takk for spillet!")

    #skriver ut statistikk:
    print("Totalt antall generasjoner: " + str(generasjon) + ".")
示例#8
0
def main():
    print("Hei!")
    rader = int(input("Hvor mange rader ønsker du?: "))
    kolonner = int(input("Hvor mange kolonner ønsker du?: "))
    spillebrett = Spillebrett(rader, kolonner)
    spillebrett._generer()
    spillebrett.tegnBrett()
    print("Generasjon: ", spillebrett._generasjonsnummer,
    " - Antall levende celler: ", spillebrett.finnAntallLevende())
    fortsett = ""
    while fortsett != "q":
        fortsett = input("Press enter for aa fortsette, eller q så enter for å avslutte: ")
        spillebrett.oppdatering()
        spillebrett.tegnBrett()
        print("Generasjon: ", spillebrett._generasjonsnummer,
        " - Antall levende celler: ", spillebrett.finnAntallLevende())
示例#9
0
def main():  #prosedyren main
    print("VELKOMMEN TIL GAME OF LIFE:")
    print()

    rad = int(
        input("Vennligst skriv inn rader: "))  #brukeren skriver inn rader
    kolonne = int(input(
        "Vennligst skriv inn kolonner: "))  #brukeren skriver inn kolonner

    spillebrett1 = Spillebrett(
        rad,
        kolonne)  #lager objektet spillebrett1 med brukerens rader og kolonner

    print()
    spillebrett1.tegnBrett(
    )  #lager tegnebrettet som generer tilfeldige antall levende celler

    sporsmal = input(
        "Press ENTER for aa fortsette. q + ENTER for aa avslutte: "
    )  #spørsmål som spør brukeren om å fortsette
    while sporsmal != "q":  #så lenge svaret på spørsmålet ikke er q:
        spillebrett1.oppdatering()  #oppdateres spillebrett
        spillebrett1.tegnBrett()  #det oppdaterte spillbrettet tegnes
        if spillebrett1.finnAntallLevende() == 0:  #hvis alle cellene er døde
            print("GAME OVER")  #printes game over
            exit()  #og programmet stoppes
        sporsmal = input(
            "Press enter for aa fortsette. Skriv inn q og trykk enter for aa avslutte: "
        )  #looper hvis det fortsatt er levende celler
示例#10
0
def main():

    rader = int(input("Antall rader: "))
    kolonner = int(input("Antall kolonner: "))

    arg = Spillebrett(rader, kolonner)
    arg.tegnBrett()

    todo = True
    while todo:

        print("Generasjon: " + str(arg.generasjon))
        print("Antall levende celler: " + str(arg.finnAntallLevende()))

        action = input(
            "Press enter for aa fortsette. Skriv inn q og trykk enter for aa avslutte: "
        )

        if action == "q":
            break
        elif action == "":
            arg.oppdatering()
            arg.tegnBrett()
        else:
            print("hei")
示例#11
0
def main():

    print("")
    #2 inputs som spør bruker hvor stør de ønsker rutenettet
    inp1 = int(input("Hvor mange rader? (bortover): "))
    inp2 = int(input("Hvor mange kolonner? (nedover): "))
    #kaller opp klassen Spillebrett med de 2 inputtene som argument
    spill1 = Spillebrett(inp2, inp1)

    #tom input, for å ikke spørre brukeren om noe før while-løkken har kjørt
    inp = ""

    #mens inp ^ (og inne i løkken) ikke er Q, kjøres koden
    while inp != "q":
        #stor linjeskift
        print("\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n")

        #lager en border rundt rutenettet på lengden til radene
        border = ""
        for x in range(inp1):
            border += "---"
        print(border)

        #kaller opp objektet med 2 metoder som tegner rutenettet, og deretter oppdateren den
        spill1.tegnBrett()
        spill1.oppdatering()

        #Antall levende celler blir printet ut vha metoden "finnAntallLevende()"
        print("Antall levende celler: ", spill1.finnAntallLevende())
        print(border)

        #input som spør brukeren om de vil avslutte eller fortsette - henger sammen med while-løkken
        inp = input("Press enter for å fortsette. Skriv in q og trykk enter for å avslutte: ")
示例#12
0
def main():

    #Oppretter brett1, som jeg gir klassen Spillebrett med brukerens input som parameterverdier.
    brett1 = Spillebrett(int(input("Bredde: ")), int(input("Høyde: ")))
    brett1.oppdatering()

    print("Dette er den ", brett1._generasjon, "generasjonen.")
    print(brett1.finnAntallLevende(), "levende celler.")
    brukerinput = int(input("Enter for nesten generasjon, q for å avslutte: "))

    #Oppdaterer til neste generasjon frem til brukeren klikker "q".
    while brukerinput != 10000:
        brett1.oppdatering()
        print("Dette er den ", brett1._generasjon, "generasjonen.")
        print(brett1.finnAntallLevende(), "levende celler.")

        brukerinput += 1
示例#13
0
def main():
    rad = int(input("Antall rader: "))
    kol = int(input("Antall kolonner: "))
    brett = Spillebrett(rad, kol)
    brett.generer()
    brett.tegnBrett()
    print("Generasjon: {} --- Antall levende celler: {}".format(
        brett.gen, brett.finnAntallLevende()))

    msg = ''
    while msg != 'q':
        brett.oppdatering()
        brett.tegnBrett()
        print("Generasjon: {} --- Antall levende celler: {}".format(
            brett.gen, brett.finnAntallLevende()))
        msg = input(
            "Press enter to countinue to next generation, og 'q' to quit.")
示例#14
0
def main():
    print("Hei, og velkommen til Game of Life!")
    rader = int(input("Hvor mange rader vil du aa starte med?\n"))
    kolonner = int(input("Og hvor mange kolonner vil du ha?\n"))
    skrrt = Spillebrett(rader, kolonner)
    skrrt.tegnBrett()
    print("Generasjon: " + str(skrrt.skrivGen()) +
          " - Antall levende celler: " + str(skrrt.finnAntallLevende()))
    svar = input(
        "For aa see neste generasjon, trykk enter. For aa avslutte, trykk q: ")
    while svar != "q":
        skrrt.oppdatering()
        skrrt.tegnBrett()
        print("Generasjon: " + str(skrrt.skrivGen()) +
              " - Antall levende celler: " + str(skrrt.finnAntallLevende()))
        svar = input(
            "For aa see neste generasjon, trykk enter. For aa avslutte, trykk q:\n"
        )
示例#15
0
def main():
    print("Game of life")
    rader    = int(input("Antall rader:    "))
    kolonner = int(input("Antall kolonner: "))

    # Generate the board and plot generation 'zero'
    Game = Spillebrett(rader, kolonner)
    Game.tegnBrett()
    print("\n\nGenereasjon: %g. Antall levende celler: %g" %(Game._gen, Game.finnAntallLevende()))

    print("--"*41)
    Next = input("Press enter to continue to the next generation, or 'q' and enter to quit the game. ")

    # Keep opdting the game board until the user ends the game
    while Next != "q":
        Game.oppdatering()
        Game.tegnBrett()
        print("\n\nGenereasjon: %g. Antall levende celler: %g" %(Game._gen, Game.finnAntallLevende()))

        print("--"*41)
        Next = input("\nPress enter to continue to the next generation, or 'q' and enter to quit the game. ")
示例#16
0
def main():
    # Bruker oppgir dimensjonene til spillebrettet
    rader = int(input("Oppgi antall rader: "))
    kolonner = int(input("Oppgi antall kolonner: "))
    # Oppretter den nullte versjonen av spillebrettet med dimensjonene
    # som bruker oppga
    spill = Spillebrett(rader, kolonner)
    spill.tegnBrett()
    print("Generasjon:", spill._generasjon, " - Antall levende celler:",
          spill.finnAntallLevende())
    # Oppretter en menylokke for brukeren
    while True:
        valg = input("Trykk enter for aa fortsette. Trykk q for aa avslutte: ")
        if valg == "":
            spill.oppdatering()
            spill.tegnBrett()
            # Printer ut generasjon og antall levende celler
            print("Generasjon:", spill._generasjon, "- Antall levende celler:",
                  spill.finnAntallLevende())
        else:
            break
示例#17
0
def main():
    x = int(input("Oppgi x dimensjonen? "))
    y = int(input("Oppgi y dimensjonen? "))
    c = Spillebrett(y, x)
    #c.tegnBrett()

    svar = input("Trykk q for avslutte programmet: ")
    while svar != "q":
        c.tegnBrett()
        print()
        print("Generasjon: ", c.oppdatering())
        print("Antall levende celler: ", c.finnAntallLevende())
        #time.sleep(0.5)
        svar = input("Trykk q for avslutte programmet: ")
示例#18
0
def main():
    storrelse = input("Skriv inn dimensjoner du ønsker(eks.30x40):\n>")
    a, b = storrelse.split("x")
    brett = Spillebrett(int(a), int(b))
    brett.generer()
    inp = ""
    while inp != "q":
        for e in range(100):
            print()
        brett.tegnBrett()
        antallLevende = brett.finnAntallLevende()
        genNr = brett.oppdatering()
        #print("Dette er generasjon:", genNr)
        #print("Antall levende celler:", antallLevende)
        #print("""Trykk enter for neste generasjon.
        #Trykk q for å avslutte.""")
        #inp = input(">")
        time.sleep(0.1)
示例#19
0
def Main():
    a = input("Skriv inn antall rader og kolonner med et mellomrom i mellom. typ 10 10 \n").split()
    r = Spillebrett(int(a[0]), int(a[1]))

    r.tegnBrett()
    inp = input("Trykk enter for å rulle, eller q for å avslutte, eller tall n for å rulle n ganger\n")

    while(inp!="q"):
        if inp == "":
            r._oppdatering()
        else:
            for i in range(int(inp)):
                r._oppdatering()
        print("Generasjon: ", r.generasjon)
        print("AntLevende: " + str(r.finnAntallLevende()))

        r.tegnBrett()
        inp = input("Trykk enter for å rulle, eller q for å avslutte, eller tall n for å rulle n ganger\n")
示例#20
0
def main():
    dimensjon1 = input("oppgi dimensjoner på spillebrettet.\n rader : ")
    dimensjon2 = input(
        "kolonner : ")  # per brukeren om å teste antall rader og kolonner
    klasse = Spillebrett(int(dimensjon1),
                         int(dimensjon2))  #definere en objke (kasse)
    klasse._tegnBrett()  # kaller på _tegnBrett
    a = input(
        '\nprss enter for å gå videre til neste steg og q for å avslutte programmet '
    )
    while a != "q":  # lager en while løkke og skrive ut programet.
        klasse.oppdatering()
        klasse._tegnBrett()
        print('\ngenerasjonsnummer er : ', klasse.hentGnerasjonsnummer())
        print('\nantal levende er : ', klasse.finnAntallLevende())
        a = input(
            '\nprss enter for å gå videre til neste steg og q for å avslutte programmet '
        )
示例#21
0
def main():
    rader = int(input("Hvor mange rader vil du at spillebrettet skal ha? \n"))
    kolonner = int(
        input("Hvor mange kolonner vil du at spillebrettet skal ha? \n"))

    #Sjekker at bruker har valgt verdier storre enn 0.
    if (rader > 0) and (kolonner > 0):
        brett1 = Spillebrett(rader, kolonner)
        while True:
            brett1.tegnBrett()
            brett1.oppdatering()
            print("Generasjon: {} - Antall levende celler: {}".format(
                brett1.generasjon(), brett1.finnAntallLevende()))
            svar = input(
                "Press enter for aa fortsette eller q og enter for aa avslutte: "
            )
            if svar == "q":
                break
    else:
        print(
            "Programmet kjoerer bare med positive verdier over 0. \nProev programmet igjen med positive verdier fra 1 og oppover."
        )