Cellulaire automaten en een implementatie van Conway's Game of Life (8 / 11 stap)

Stap 8: Controleer

Deze stap zorgt u ervoor dat de twee lagen van de buffer blijven rond de centrale automaat. De check-functie moet uitvoeren na elke update. Het werkt door het controleren van de buitenste twee lagen voor levende cellen. Indien zij ten minste één vaststelt, draait het een subroutine uit te breiden van de automaat met een laag van dode cellen. De code voor deze functie met een adellijke titel checkVec() zou ongeveer als volgt uit.

vector < vector > checkVec (vector < vector > Raster)

{

int size=grid.size();

int sumElementsOuter = 0;

for(vector::iterator j=Grid[0].begin();j!=Grid[0].End();j++)

sumElementsOuter += * j;

for(vector::iterator k=Grid[size-1].begin();k!=Grid[size-1].End();k++)

sumElementsOuter += * k;

voor (int m = 1; m

sumElementsOuter = raster [m] [0] raster [m] [grootte-1] + sumElementsOuter;

de som van de Staten in de laag vlak voor de buitenste optellen

int sumElementsIn = 0;

for(vector::iterator x=Grid[1].begin();x!=Grid[1].End();++x)

sumElementsIn += * x;

for(vector::iterator y=Grid[size-2].begin();y!=Grid[size-2].End();++y)

sumElementsIn += * y;

voor (int m = 2; m

sumElementsIn = raster [m] [1] raster [m] [grootte-2] + sumElementsIn;

if(sumElementsOuter>0)

{

omgorden moet worden bijgewerkt om twee nieuwe buitenste lagen

grid.Insert(grid.begin(), vector (grootte, 0));

grid.Insert(grid.begin(), vector (grootte, 0));

grid.push_back (vector (grootte, 0));

grid.push_back (vector (grootte, 0));

int rows2 = 0;

int col2 = 0;

terwijl (rows2

{

Grid[rows2].Insert(Grid[rows2].begin(), 0);

Grid[rows2].Insert(Grid[rows2].begin(), 0);

Grid[rows2].push_back(0);

Grid[rows2].push_back(0);

rows2 ++;

}

}

anders if(sumElementsIn>0)

{

omgorden moet worden bijgewerkt om een nieuwe buitenste lagen

grid.Insert(grid.begin(), vector (grootte, 0));

grid.push_back (vector (grootte, 0));

int rows2 = 0;

terwijl (rows2

{

Grid[rows2].Insert(Grid[rows2].begin(), 0);

Grid[rows2].push_back(0);

rows2 ++;

}

}

retourneren van raster;

}

Sorry als de opmaak uitgeschakeld is. Al deze functies kunnen worden gevonden hier waar moet de code beter leesbaar. Merk ook op dat sommige functies op iterators vertrouwen. Dus, zorg ervoor dat de iterator-bibliotheek in de richtlijn opnemen aan het begin van het programma opnemen.

Gerelateerde Artikelen

OTCA Metapixel - Conway's Game of Life

OTCA Metapixel - Conway's Game of Life

Conway's Game of Life is een soort 2D cellulaire automaat die gebruikmaakt van een eenvoudige set van regels voor het beschrijven van het gedrag van de cellen over discrete tijdstappen. Verrassend, kunt u zeer complexe gedrag genereren van cellulaire
Cellulaire automaten (link naar inbegrepen code)

Cellulaire automaten (link naar inbegrepen code)

ik heb gemaakt deze Java-code om te produceren van 2D cellulaire automaten patronen. Het duurt in een regel nummer (0-255) en het nummer van de iteratie.Bijvoorbeeld werd het patroon in de hoofdafbeelding geproduceerd door het invoeren van (126 50).H
Hoe maak je een zeephouder uit een zak van uien

Hoe maak je een zeephouder uit een zak van uien

erachter te komen hoe om te zetten van een zak uien in een milieuvriendelijke zeephouder netto.Groeten alle. Dit is mijn eerste i'ble, dus neem aub met mij door mijn eerste poging. Ook zou suggesties voor verbetering worden gewaardeerd.Dit is niet ee
30 item Ultimate Altoids Tin Urban Survival Kit (inclusief zonnebril, een dek van kaarten en ketchup)

30 item Ultimate Altoids Tin Urban Survival Kit (inclusief zonnebril, een dek van kaarten en ketchup)

er zijn vele van deze survival kits rondzweven Instructables en de rest van het Internet en hoewel ik hou van kits die omvatten vissen haken en naaien sets te maken, mijn kansen om in een survival situatie waar ik eigenlijk die dingen moet zijn slank
Geautomatiseerde configuratie van verbinding met het netwerk na implementatie van images

Geautomatiseerde configuratie van verbinding met het netwerk na implementatie van images

O.K. zien we in films of sommige awesome IT-jongens (die mensen zijn ingenieurs, meestal van hen) doen rustgevende cool, zij hetzelfde beeld op alle werkstation (natuurlijk alle van hen zijn identieke hardware) en na een herstart, gemaakt door afstan
De Pitbook: Een overzicht van de eerste Team 3181 Pittsford Panthers

De Pitbook: Een overzicht van de eerste Team 3181 Pittsford Panthers

wij zijn FRC (eerste Robotics concurrentie) Team 3181, de Pittsford Panthers, gebaseerd in Pittsford, New York. Ons team bestaat uit ongeveer vijftig leerlingen, mentoren en docenten van Pittsford Mendon en Pittsford Sutherland middelbare scholen. De
Hoe maak je een boot van de stoom met een kaars

Hoe maak je een boot van de stoom met een kaars

https://www.YouTube.com/watch?v=sWJqCubW1ic&feature=Youtu.beStap 1: Om te doen een boot van de stoom met een kaars u nodig!In deze instructables ik zal je laten zien een geweldig idee van hoe maak je een boot van de stoom met de kaars.Stap 2: Kindere
Bouwen van een vaatwasser van kras

Bouwen van een vaatwasser van kras

Toegegeven, dit was waarschijnlijk niet het beste eerst project. Op het moment dat ik begon het, kon ik niet vinden iemand anders die het had geprobeerd. Dus het was een beetje een gek idee. En mijn familie laat me proberen gekke dingen, p̶r̶o̶b̶a̶b̶
Bouwen van een schaalmodel van de 1:160 (N) van een spoorwegbrug Truss

Bouwen van een schaalmodel van de 1:160 (N) van een spoorwegbrug Truss

Dit is een instructable voor het bouwen van een Truss spoorwegbrug (van mijn eigen ontwerp) in N-schaal of (1:160). De bestanden van het 3D-model kunnen worden gevonden op Thingiverse. Opgemerkt moet worden dat deze brug werd ontworpen om aan te tone
Hoe maak je een masker van Halloween met Apoxie beeldhouwen

Hoe maak je een masker van Halloween met Apoxie beeldhouwen

Heb je ooit wilde om je eigen griezelig Halloween masker maar wist niet waar te beginnen.In dit Instructable ik zal je laten zien een eenvoudige methode voor het maken van je eigen homemade Halloween masker zonder alle ingewikkelde stappen betrokken
AUBERGINE gevuld met GRUYERE kaas, champignons, PAPRIKA en uien & gebakken IN een saus van rode wijn CLAM

AUBERGINE gevuld met GRUYERE kaas, champignons, PAPRIKA en uien & gebakken IN een saus van rode wijn CLAM

U zal hoef niet voor een bijgerecht te gaan met een gezonde portie van deze proteïnen & vitamine rijke gebakken aubergine gevuld met Gruyere kaas, baby portobello champignons, rode paprika, uien en tomaten gekookt in een saus van rode wijn clam!Stap
Hoe maak je een koffietafel van hout, met behulp van de groef en Tenon schrijnwerkerij

Hoe maak je een koffietafel van hout, met behulp van de groef en Tenon schrijnwerkerij

Deze build kan worden gemaakt van eenvoudige, volwitte lenig op te slaan. In mijn geval gebruikte ik pine die is relatief goedkoop en gemakkelijk om mee te werken.Het belangrijkste instrument in dit project is een router.Stap 1: Hout voorraad op leng
Hoe maak je een tegenhanger van de bloem met een koffie Pod

Hoe maak je een tegenhanger van de bloem met een koffie Pod

Hallo iedereen,We wilden delen met uw onze eerste tutorial op YouTube. Hoe maak je een tegenhanger van de bloem met een koffie pod. De Nespresso koffie peulen zijn ronde, maar we willen spelen met hen en andere vormen te verkrijgen. En omdat we beide
Betrekking op een frame van de fiets met strips (of andere papier)

Betrekking op een frame van de fiets met strips (of andere papier)

Soms samenkomen dingen gewoon als stukjes van een puzzel die je niet wist dat u aan het doen waren:Er was deze fiets had ik opknoping voor bijna een jaar op de muur van mijn kelder. Ik trok het uit een hoop vuilnis op de weg eens en bracht het thuis