コード例 #1
0
ファイル: spillebrett.py プロジェクト: SM2507/IN1000
    def oppdatering(self):
        ded2lev = []  # Tomme lister
        lev2ded = []
        self.generasjon += 1  # Øker gen.#

        for i in range(len(self.rutenett)):
            for j in range(len(self.rutenett[i])):  # Går inn på hvert objekt
                naboer = self.finnNabo(i,j)  # Kaller på finnNabo som gir en liste
                teller = 0  # Setter teller lik 0
                for cell in naboer:
                    if cell.erLevende():
                        teller += 1  # Øker teller proporsjonalt med antall levende naboer

                if self.rutenett[i][j].erLevende():
                    if teller < 2 or teller > 3:  # Dersom det er færre enn 2 eller flere enn 3 naboer
                        lev2ded.append(self.rutenett[i][j])  # Legg til disse i lista der cellene skal dø
                else:
                    if teller == 3:  # Dersom en død celle har akkurat 3 celler
                        ded2lev.append(self.rutenett[i][j])  # Gjenoppliv den cella

        # Oppdaterer hvilke celler som er døde og levenende for neste gen.
        for cell in ded2lev:
            Celle.settLevende(cell)
        for cell in lev2ded:
            Celle.settDoed(cell)
コード例 #2
0
ファイル: spillebrett.py プロジェクト: SM2507/IN1000
 def generer(self,ruter):  # Metode generer
     for i in range(len(ruter)):
         for j in range(len(ruter[i])):
             x = Celle()  # Lager et objekt av klassen Celle
             if randint(0,2) == 1:  # En viss sannsynlighet for at cellen er levende
                 x.settLevende()
                 ruter[i][j] = x  # Objektet blir lagt til på sin plass
             else:
                 ruter[i][j] = x
コード例 #3
0
ファイル: spillebrett.py プロジェクト: alexbrul/in1000
 def _generer(self):
     self.rutenett = []
     for i in range(self._rader):
         self.rutenett.append([])
     for i in self.rutenett:
         for k in range(self._kolonner):
             tmp = Celle()
             if random.randint(0, 3) == 0:
                 tmp.settLevende()
             i.append(tmp)
コード例 #4
0
def main():
    liv1 = Celle()
    liv1.settLevende()
    print(liv1.erLevende())

    liv2 = Celle()
    print(liv2.erLevende())

    print(liv1.hentStatusTegn())
    print(liv2.hentStatusTegn())
コード例 #5
0
 def _generer(self):
     for y in range(
             self._rader
     ):  # fyller rutenettet med lister som skal representere rader, y-retning
         self._rutenett.append([])
         for _ in range(
                 self._kolonner
         ):  # skal fylle hver rad med celler i x-retning. _ brukes isteden for x for vi har ikke nytte av variabelen her
             seed = randint(0, 2)  # tilfeldig taLL 0-2
             if seed == 0:  # 1/3 sjangse for at cellen spawner levende
                 self._rutenett[y].append(Celle(True))
             else:  # 2/3 sjangse for at cellen spawner død
                 self._rutenett[y].append(Celle(False))
コード例 #6
0
ファイル: spillebrett.py プロジェクト: krisgrav/IN1000
 def _generer(self):
     rutenett = []
     for j in range(self._rader):
         rutenett.append([])
         for i in range(self._kolonner):
             #rutenett[j].append(Celle())
             giStatus = randint(0, 2)
             nycelle = Celle()
             if giStatus == 0:
                 #objekt = Celle().settLevende()
                 #rutenett[j].append(Celle().settLevende())
                 nycelle.settLevende()
             rutenett[j].append(nycelle)
     return rutenett
コード例 #7
0
ファイル: spillebrettV2.py プロジェクト: soelves/portfolio
 def preGenerer(self):
     for i in range(self._rader):
         liste = []
         self._rutenett.append(liste)
         for j in range(self._kolonner):
             enCelle = Celle()
             liste.append(enCelle)
コード例 #8
0
def tegnBrett(self):
    for radene in self._rader:
        rader = []
        for kolonnene in self._rader:
            kolonnene = Celle()
            rader.append(kolonnene)
        self._rutenett.append(rader)
コード例 #9
0
    def __init__(self, rader, kolonner):
        self._rader = rader
        self._kolonner = kolonner

        self._rutenett = [[Celle() for i in range(self._kolonner)]
                          for i in range(self._rader)]

        self.gen = 0
コード例 #10
0
 def lagBrett(self):
     for r in range(self._rader):
         #Oppretter en liste for hver rad.
         liste = []
         for k in range(self._kolonner):
             #Legger til celler i hver rute i rutenettet.
             celler = Celle()
             liste.append(celler)
         self._rutenett.append(liste)
コード例 #11
0
 def makeBoard(self):
     for i in range(self._row):
         for j in range(self._column):
             self._cellsList.append(Celle())
             rand = randint(0,4)
             if rand == 2:
                 self._cellsList[j].settLevende()
         self._cellsGrid.append(self._cellsList)
         self._cellsList = []
コード例 #12
0
 def lagListe(self):
     self._rutenett = []
     for i in range(self._rader):
         b = []
         for j in range(self._kolonner):
             nyCelle = Celle()
             b.append(nyCelle)
         self._rutenett.append(b)
     return self._rutenett
コード例 #13
0
 def __init__(self, rad, kol):
     self._rader = rad
     self._kolonner = kol
     self._rutenett = []
     for j in range(rad):
         self._rutenett.append([])
         for i in range(kol):
             self._rutenett[j].append(Celle())
     self._generer()
     self.tegnBrett()
コード例 #14
0
ファイル: spillebrett.py プロジェクト: donwikborg/gameoflife
 def __init__(self, rader, kolonner): #oppretter konstruktoeren
     self._rader = rader
     self._kolonner = kolonner
     self._rutenett = [] #oppretter rutenett
     for i in range(self._rader):
         self._rutenett.append([]) #oppretter en tom liste per rad
         for j in range(self._kolonner):
             self._rutenett[i].append(Celle()) #legger en celle inn i hver rute som opprettes basert paa antall kolonner
     self._generasjonsnummer = 0
     self._generer() #kaller paa generer for aa tilordne hver celle ny status
コード例 #15
0
 def _konstruerRutenett(self, rader, kolonner):
     rutenett = []
     # Legg til hver rad som en egen liste:
     for rad_idx in range(rader):
         rutenett.append([])
         # Legg til celler likt antall kolonner, for hver rad:
         for elem in range(kolonner):
             nyCelle = Celle()
             rutenett[rad_idx].append(nyCelle)
     return rutenett
コード例 #16
0
 def __init__(self, rader, kolonner):  # konstruktur med tre parameter
     self._rader = rader
     self._kolonner = kolonner
     self._rutenett = [
     ]  # oppretter et rutenett som tar antall rader gange antall kolooner.
     for i in range(self._rader):
         self._rutenett.append([])
         for j in range(self._kolonner):
             self._rutenett[i].append(Celle())
     self._generasjonsnummer = 0  # opprette en generasjonsteller.
     self.generer()  # kaller på metoden generer
コード例 #17
0
    def __init__(self, rader, kolonner):
        self._rader = rader
        self._kolonner = kolonner
        self._rutenett = []
        for x in range(self._rader):
            self._rutenett.append([])
            for i in range(self._kolonner):
                self._rutenett[x].append(Celle())
#setter _generasjonsnummer til 0 og kaller paa generer, som randomizes rutenettet
        self._generasjonsnummer = 0
        self._generer()
コード例 #18
0
 def __init__(self, rader, kolonner):
     self._rader = rader
     self._kolonner = kolonner
     self._rutenett = []
     for e in range(rader):
         rad = []
         self._rutenett.append(rad)
         for i in range(kolonner):
             rad.append(Celle())
     self._generasjon = 0
     self.generer()
コード例 #19
0
ファイル: spillebrett.py プロジェクト: kevinjchi/scikit_learn
    def __init__(self, rader, kolonner):
        """Init metoden"""
        self._rader = rader
        self._kolonner = kolonner
        self._rutenett = [
        ]  #ikke nodvendig, men den er der i eksempelfilen, derfor lar den vare der

        #genererer et objekter i en nøstet 2d liste med dimensjoner radar x kolonner
        self._rutenett = [[Celle() for j in range(self._kolonner)]
                          for i in range(self._rader)]
        self.generer()
        self._generasjon = 0
コード例 #20
0
 def __init__(self, rader, kolonner):
     self._rader = rader
     self._kolonner = kolonner
     self._generasjon = 0
     # Oppretter et rutenett som en tom liste
     self._rutenett = []
     for i in range(self._rader):
         self._rutenett.append([])
         for j in range(self._kolonner):
             self._rutenett[i].append(Celle())
     # Genererer nullte versjon av spillebrettet
     self._generer()
コード例 #21
0
    def __init__(self , rader, kolonner):
        self._rader = rader
        self._kolonner = kolonner
        self._gnNr = 0
        self._rutenett = []
        nyCelle = Celle()
        for i in range(self._rader):
            liste = []
            for e in range(self._kolonner):
                liste.append(nyCelle)
            self._rutenett.append(liste)

        self.generer()
コード例 #22
0
    def __init__(self, rad, kolonne):   #to parametre: antall rader og kolonner
        self._rader = rad
        self._kolonner = kolonne

        self._rutenett = []             #opprettelsen av rutenettet
        for x in range(self._rader):
            self._rutenett.append([])   #radene opprettes
            for y in range(self._kolonner): 
            #antall celler i hver rad = kolonner
                self._rutenett[x].append(Celle())   #celler blir fylt inn

        self._generasjon = 0            #generasjonsvariabel
        self._generer()                 #cellene endres til levende, 1/3 sjanse
コード例 #23
0
ファイル: spillbrett.py プロジェクト: ladysilverberg/IN1000
 def __init__(self, bredde, hoyde):
     self._rader = bredde
     self._kolonner = hoyde
     self._rutenett = []
     
     # Fyll ting - maaagic
     for x in range(self._rader): # 10
         self._rutenett.append([])
         for y in range(self._kolonner): # 20
             self._rutenett[x].append(Celle())
     
     self._generasjonsnummer = 0
     self.generer()
コード例 #24
0
ファイル: spillebrett.py プロジェクト: sorttomat/Oblig_7
    def __init__(self, rader, kolonner):
        self.rader = rader
        self.kolonner = kolonner
        self.generasjonsnummer = 0
        self.brett = []

        for i in range(self.rader):
            rad = []
            for j in range(self.kolonner):
                rad.append(Celle())
            self.brett.append(rad)

        self.generer()
コード例 #25
0
 def generer(self):
     tall = randint(0, 2)
     celle = Celle()
     if tall == 0:
         celle.settLevende()
     else:
         celle.settDoed()
     return celle
コード例 #26
0
    def __init__(self, rader, kolonner):
        self._rader = rader
        self._kolonner = kolonner
        self.versjonsnummer = 0
        self.antallCeller = self._rader*self._kolonner
        self.nabo = []
        celleHolder = []

        for t in range(0, self.antallCeller):
            celleHolder.append(Celle())

        n = self._kolonner
        self.brett = [celleHolder[i:i+n] for i in range(0, len(celleHolder), n)]
        self._generer()
コード例 #27
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()
コード例 #28
0
ファイル: spillebrett.py プロジェクト: jzengler/IN1000
    def __init__(self, rader, kolonner):
        self._rader = rader
        self._kolonner = kolonner
        self._generasjon = 0
        self._rutenett = []

        # opprett spillebrett
        for y in range(rader):
            self._rutenett.append([])

            for x in range(kolonner):
                self._rutenett[y].append( Celle() )

        # generer spillebrett
        self._generer()
コード例 #29
0
ファイル: spillebrett.py プロジェクト: MehCheniti/Python
    def __init__(self, rader, kolonner):
        self._rader = rader
        self._kolonner = kolonner
        self._rutenett = []

        # Her lager jeg en nøstet for-løkke for å fylle self._rutenett med
        # Celle-objekter.
        for i in range(self._rader):
            rad = []
            for j in range(self._kolonner):
                rad.append(Celle())
            self._rutenett.append(rad)

        self._generasjonsnummer = 0
        self.generer()
コード例 #30
0
    def __init__(self, rader, kolonner):
        self._rader = rader
        self._kolonner = kolonner

        #Noestede lister som inneholder elementer generert fra klassen Celle().
        self._rutenett = [[Celle() for x in range(self._kolonner)]
                          for y in range(self._rader)]

        #variabel som holder styr paa generasjonsnummer.
        #Starter generasjon paa -1 for at foerste generasjon skal bli nr. 0.
        self._generasjon = -1

        #Kaller paa metoden generer() som setter et tilfeldig antall av cellene
        #til levende.
        self.generer()