Matti Lehtiniemi
unread,Nov 22, 2013, 8:46:50 PM11/22/13You do not have permission to delete messages in this group
Either email addresses are anonymous for this group or you need the view member email addresses permission to view the original message
to
> Ananas oikea vastaus 207
Mit� v-ttua ,se oli muka 195 oikea vastaus.Ja kaksi sai oikein sen ???
Oliko tuo jotain huijausta ?
Mahtuuko tuohon edes bugia minnek��n ?
Siis pelin j�rjest�j�t on itse p��tt�neet ett� vastaus on jotain muuta kuin
oikea ja sitten laittaneet vaimonsa soittamaan "oikean" vastauksen ?
---koodi alkaa---
#include <iostream>
#include <string.h>
using namespace std;
enum {EI = 0,POHJ = 1,ITA = 2,ET = 3,LANSI = 4};
char sana[] = "ananas";
int koko;
const int KOKOX = 7;
const int KOKOY = 6;
char taulu[6][7] =
{
{'b','b','a','b','a','b','b'},
{'b','a','n','a','n','a','s'},
{'a','n','a','n','a','s','b'},
{'b','a','n','a','n','a','s'},
{'a','n','a','n','a','s','b'},
{'b','b','s','b','s','b','b'}
};
int tarkistaXY(int x,int y,int ind,int tulosuunta)
{
if (sana[ind] != taulu[y][x])
return 0;
if ( ind == (koko-1))
return 1;
int tulos = 0;
if ((tulosuunta != POHJ) && (y > 0))
tulos = tulos + tarkistaXY(x,y-1,ind+1,ET);
if ((tulosuunta != ET) && (y < (KOKOY-1)))
tulos = tulos + tarkistaXY(x,y+1,ind+1,POHJ);
if ((tulosuunta != ITA) && (x > 0))
tulos = tulos + tarkistaXY(x-1,y,ind+1,LANSI);
if ((tulosuunta != LANSI) && (x < (KOKOX-1)))
tulos = tulos + tarkistaXY(x+1,y,ind+1,ITA);
return tulos;
}
void main()
{
koko = strlen(sana);
cout << "koko on:" << koko << endl;
int yhteen = 0;
for (int i=0;i < KOKOX;i++)
for (int j=0;j < KOKOY;j++)
{
yhteen = yhteen + tarkistaXY(i,j,0,EI);
}
cout << "vastaus on:" << yhteen << endl;
char c;
cin >>c;
}
Matti