Přibližný nárys algoritmu (v pseudo-programovacím zápisu, ty už to jen přepíšeš do vhodného programovacího jazyka, programátoři neděste se, ale chci ho dohnat k tomu, aby pochopil rozdíl mezi zápisem algoritmu a programem):
funkce otoc_kartu(x,y)
{
objekt[x,y].visibility = !objekt[x,y].visibility;
}
funkce otoc(x,y)
{
otoc_kartu(x,y);
karta = [x,y];
}
funkce porovnej(x1,y1,x2,y2)
{
if(objekt[x1,y1].hodnota != objekt[x2,y2].hodnota)
{
otoc_kartu(x1,y1);
otoc_kartu(x2,y2);
message('FALSE');
return false;
}
else
{
skore = skore + 1;
vymaz_kartu(x1,y1);
vymaz_kartu(x2,y2);
message('TRUE, congratulations');
return true;
}
}
Nakopnul jsem tě, zbytek funkcí + grafiku si už snad dokážeš napsat sám v nějakém programovacím jazyku.