5.7.3 Useita vaihtoehtoja samalla muuttujalla
Ottakaamme toinen vastaava tehtävä:
Tehtävä 4.3: Pekka valehtelee maanantaisin, tiistaisin ja
keskiviikkoisin; muina viikonpäivinä hän puhuu totta. Paavo
valehtelee torstaisin, perjantaisin ja lauantaisin; muina
viikonpäivinä hän puhuu totta. Eräänä
päivänä Pekka sanoi: "Eilen valehtelin!" Paavo vastasi: "Niin
minäkin!" Mikä viikonpäivä oli?
Minä päivinä kaverukset saattaisivat sanoa ko. lausuman?
Näitä päiviä on tietysti ne, jolloin joko eilen
valehdeltiin ja tänään puhutaan totta TAI eilen puhuttiin totta
ja tänään valehdellaan. (XOR)
päivä
|
Pekka
|
valehteli eilen
|
Paavo
|
valehteli eilen
|
|
sunnuntai
|
|
|
|
k sanoo
|
|
maanantai
|
V
|
sanoo
|
|
|
|
tiistai
|
V
|
k
|
|
|
|
keskiviikko
|
V
|
k
|
|
|
|
torstai
|
|
k sanoo
|
V
|
sanoo
|
<==
|
perjantai
|
|
|
V
|
k
|
|
lauantai
|
|
|
V
|
k
|
|
sunnuntai
|
|
|
|
k sanoo
|
|
Totuustaulun
tavoitteena on siis kerätä kaikki mahdolliset vaihtoehdot ohjelmoijan
silmien eteen, ja näin kaikki mahdollisuudet voidaan analysoida ja
käsitellä.
- Eräällä saarella asuu luonnonkansa. Puolet kansan
asukkaista aina valehtelevat ja toinen puoli puhuu aina totta. Lisäksi
heidän kielensä on tuntematon. On saatu selville, että "BAL" ja
"DA" tarkoittavat "kyllä" ja "ei", muttei sitä kumpiko tarkoittaa
kumpaa. He ymmärtävät suomea mutta vastaavat aina omalla
kielellään. Vastaasi tulee yksi saaren asukas.
- a) Mitä saat selville kysymyksellä "Tarkoittaako BAL KYLLÄ"?
- b) Millä kysymyksellä saat selville mikä sana on kyllä?
- Jälleen maahan jossa asukkaat joko valehtelevat tai puhuvat aina
totta. Tapaat kolme asukasta A:n, B:n ja C:n. He sanovat sinulla
-
- A: Me kaikki kolme valehtelemme! B: Tasan yksi meistä
puhuu totta!
- Mitä ovat A, B ja C?
-
- Entä jos asukkaat sanovat:
-
- A: Me kaikki kolme valehtelemme! B: Tasan yksi meistä
valehtelee!
-
- Entä jos:
-
- A: Minä valehtelen mutta B ei!
-
- Entä jos:
-
- A: B valehtelee! B: A ja C ovat samaa tyyppiä!
-
- Vielä yksi:
-
- A sanoo: B ja C ovat samaa tyyppiä. C:ltä
kysytään: Ovatko A ja B samaa tyyppiä?
- Mitä C vastaa?