Aktív témák
-
Joooe
tag
válasz
andorpapa #16 üzenetére
nem éppen optimális megoldás, de most ennyire fussa
#include <stdio.h>
int screen[80][25];
int EloSzomszedok(int x, int y)
{
int dy,dx;
int szum=0;
for (dy=-1; dy<=1; dy++)
for (dx=-1; dx<=1; dx++)
{
if ( (dx==0 && dy==0) || (x+dx<0) || (x+dx>=80) || (y+dy<0) || (y+dy>=25)) continue;
szum+=screen[x+dx][y+dy];
}
return szum;
}
int main()
{
int screen2[80][25];
int esz;
int x,y,szsz;
for (y=0; y<=24; ++y)
for (x=0; x<=79; ++x)
screen[x][y]=0;
for (y=10; y<=12; ++y)
for (x=39; x<=41; ++x)
screen [x][y]=1;
while (true)
{
for (y=0;y<=24;++y)
{
for (x=0;x<=79;++x)
if (screen[x][y]) printf(''x'');
else printf(''-'');
}
for (y=0;y<=24;++y)
for (x=0;x<=79;++x)
{
esz=EloSzomszedok(x,y);
if (screen[x][y])
{
if (!(esz==2 || esz==3)) screen2[x][y]=0;
else screen2[x][y]=1;
}
else
{
if (esz==3) screen2[x][y]=1;
else screen2[x][y]=0;
}
}
for (y=0;y<=24;++y)
for (x=0;x<=79;++x)
screen[x][y]=screen2[x][y];
// ide kéne valami várakoztatás
}
} -
Joooe
tag
válasz
andorpapa #10 üzenetére
Szeritem két hibája van a dolognak, bár lehet nem hibák, nem ismerem pontosan mi a játék lényege.
1: A szomszédok meghatározásánál már modosított adatokat is használ, vagyis a következő időpillanat meghatározásához nem a jelenlegi állapotot, hanem félig a jelenlegit félig a következőt veszi figyelembe.
2: a feltétel vizsgálat sem jó, egyszerűen azt vizsgálja hogy 3-e az élő szomszédok száma, te ennél ''bonyolultabb'' feltételt írtál le. -
Joooe
tag
Szia!
szsz=screen[x-1][y-1]+screen[x][y-1]+screen[x+1][y-1]+screen[x-1][y]+
screen[x+1][y]+screen[x-1][y+1]+screen[x][y+1]+screen[x+1][y+1];
Ezzel az a probléma, hogy a tábla széleinél nem fog működni.
A kiszámítására valami hasonló függvény lenne a legegyszerűbb szerintem:
int EloSzomszedok(int x, int y)
{
int dy,dx;
int szum=0;
for (dy=-1; dy<=1; dy++)
for (dx=-1; dx<=1; dx++)
{
if ( (dx==0 && dy==0) || (x+dx<0) || (x+dx>=80) || (y+dy<0) || (y+dy>=25)) continue;
szum+=screen[x+dx][y+dy];
}
return szum
}
Aktív témák
Hirdetés
- Formula-1
- Óvodások homokozója
- A Micron újszerű módszerrel javítja QLC-s SSD-jének sebességét
- HiFi műszaki szemmel - sztereó hangrendszerek
- Hammer 6 LTE - ne butáskodj!
- Építő/felújító topik
- Xiaomi 11 Lite 5G NE (lisa)
- sziku69: Fűzzük össze a szavakat :)
- Windows 11
- Audi, Cupra, Seat, Skoda, Volkswagen topik
- További aktív témák...
- Bomba ár! Lenovo X1 Yoga 2nd - i7-7G I 8GB I 256SSD I 14" WQHD I HDMI I W11 I CAM I Garancia!
- BESZÁMÍTÁS! 4TB Samsung 870 EVO SATA SSD meghajtó garanciával hibátlan működéssel
- Telefon felvásárlás!! Samsung Galaxy A14/Samsung Galaxy A34/Samsung Galaxy A54
- ViewSonic VG700b monitor 17" 1280 1024 DSUB, DVI, beépített hangszórókkal
- ÁRGARANCIA!Épített KomPhone Ryzen 7 5700X3D 32/64GB RAM RX 7800 XT 16GB GAMER PC termékbeszámítással
Állásajánlatok
Cég: CAMERA-PRO Hungary Kft
Város: Budapest
Cég: PC Trade Systems Kft.
Város: Szeged