7 personer krangler hva dagens ukedag kan være. Hver sier hva han mener å vite:
- I overmorgen er det onsdag.
- Nei, onsdag er i dag.
- Dere tar begge feil, Onsdag er i morgen.
- I dag er det ikke mandag, heller ikke tirsdag eller onsdag.
- Jeg tror gårsdagen var torsdag.
- Nei, i går var tirsdag.
- Uansett. Alt jeg vet er at gårsdagen ikke var lørdag.
Alle, bortsett fra en, har feil. Hvilken dag er det?
Svar
Omformulering av uttalelsene:
- I dag er det mandag .
- I dag er det onsdag.
- I dag er det tirsdag.
- I dag er det ikke mandag, heller ikke tirsdag eller onsdag.
- I dag er det fredag .
- I dag er det onsdag.
- I dag er det ikke søndag.
Vi vet at akkurat en av disse er riktig. Det kan ikke være onsdag (siden da ville 2 og 6 begge være riktig), og det kan heller ikke være torsdag, fredag eller lørdag (siden da ville 4 og 7 begge være riktig), og det kan heller ikke være mandag eller tirsdag (siden da 7 ville være riktig og det ville også 1 eller 3). Så i dag er
Søndag
og
4.
høyttaleren er den eneste riktige en.
Svar
7 sier at det ikke er søndag, som stemmer overens med 1,2,3,5,6. derfor bevis ikke bare at alle, bortsett fra 4, er gale, men også at siden den 7. uttalelsen er feil, betyr det at i dag ER søndag. Alt kan bevises med bare den ene utsagnet.
Kommentarer
- Elsker retningen du kom fra.
Svar
Svaret er
Søndag
Den beste måten å visualisere det på er å lage en tabell med verdier:
$ \ begin {array} {c | c | c | c | c | c | c | c} \ undersett {(Statement ~ \ #)} {\ text {Speaker}} & \ text {Man} & \ text {Tue} & \ text {ons} & \ text {Thu} & \ text {Fri} & \, \ text { Lør} \, & \ text {Sun} \\\ hline1 & \ text {X} \\\ hline2 & & & \ text {X} \\\ hline3 & & \ text {X} \\\ hline4 & & & & \ text {X} & \ text {X} & \ text {X} & \ color {red} {\ text {X}} \\\ hline5 & & & & & \ text {X} \\\ hline6 & & & \ text {X} \\\ hline7 & \ text {X} & \ text {X} & \ text {X} & \ text {X} & \ text {X} & \ text {X} \ end {array} $
Fyll ut radene i tabellen:
Uttalelse 1 er bare sant hvis i dag er mandag.
Uttalelse 2 er sant bare hvis i dag er onsdag.
Uttalelse 3 er sant bare hvis i dag er tirsdag.
Uttalelse 4 gjelder bare hvis i dag er i området fra torsdag til S unday.
Uttalelse 5 er bare sant hvis i dag er fredag.
Uttalelse 6 er sant bare hvis i dag er onsdag.
Uttalelse 7 sier at gårsdagen ikke var lørdag. Da kunne i går være mandag, tirsdag, onsdag, torsdag, fredag eller søndag. Så i dag er det tirsdag, onsdag, torsdag, fredag, lørdag eller mandag – hvilken som helst dag unntatt søndag.Les til slutt ned kolonnene i tabellen:
På mandag er utsagn 1 og 7 sanne.
Tirsdag er utsagn 3 og 7 sanne.
Onsdag er utsagn 2, 6 og 7 sanne. sant.
På torsdag er utsagn 4 og 7 sanne.
På fredag er utsagn 4, 5 og 7 sanne.
På lørdag er utsagn 4 og 7 sanne.
På søndag, eneste utsagn 4 er sant.
Den eneste dagen da bare én påstand er sant, er den riktige dagen. Det er søndag.
Kommentarer
- Kan du forklare denne tabellen og resonnementet ditt litt bedre? Det ser ut som en fin billedløsning, men jeg ‘ er tilbakeholden med å stemme når det ‘ er så liten forklaring.Språket på dette nettstedet er også engelsk, så den øverste raden bør sannsynligvis være MTWTFSS i stedet for LMMJVSD 🙂
- vare 1 = mandag, vare 2 = onsdag, vare 3 = tirsdag, vare 4 = gjeldende Dagen er i rekkevidde fra torsdag og søndag, punkt 5 = fredag, punkt 6 = onsdag, punkt 7 = I går var ikke lørdag. Så i går kan det være mandag, tirsdag, onsdag, torsdag, fredag, søndag. Så i dag er det tirsdag eller onsdag, torsdag eller fredag eller lørdag eller mandag. Den eneste dagen som ikke er inkludert er søndag. Til slutt mandag (vare 1,7), tirsdag (vare 3,7), onsdag (vare 2,6,7), torsdag (vare 4,7), fredag (vare 4,5), lørdag (4,7) , Søndag (4) Dagen som bare nevnes en gang er den riktige dagen. Søndag.
- Ah, dette må være de spanske ukedagene! Et annet puslespill akkurat der XD
Svar
Et dataprogram kan brukes til å løse det (følgende er i racket språk):
; SUN M T W TH F SAT ; 0 1 2 3 4 5 6 (define (f) ; assume today is x; (for ((x 7)) ; check x for 0 to 6 (printf "x=~a; count=~a ~n" x (count (lambda(x) x) (list (= 3 (+ x 2)) ; statements are listed here (= x 3) (= x 2) (and (not(= x 1)) (not(= x 2)) (not(= x 3))) (= x 5) (= x 3) (not (= 0 x)) ))))) (f)
Det tar verdiene 0 til 6 for søndag til lørdag og sjekker hvor mange utsagn som er riktige for hver av dem. Resultatet er:
x=0; count=1 x=1; count=2 x=2; count=2 x=3; count=3 x=4; count=2 x=5; count=3 x=6; count=2
Derfor er bare 1 utsagn riktig bare for søndag (x = 0), derfor er det svaret.
Svar
Bruk SymPy :
>>> from sympy import * >>> sunday, monday, tuesday, wednesday, thursday, friday, saturday = symbols("sunday monday tuesday wednesday thursday friday saturday")
Siden bare en av de $ 7 $ Boolske variablene kan være sanne:
>>> Sun = sunday & Not(monday) & Not(tuesday) & Not(wednesday) & Not(thursday) & Not(friday) & Not(saturday) >>> Mon = Not(sunday) & monday & Not(tuesday) & Not(wednesday) & Not(thursday) & Not(friday) & Not(saturday) >>> Tue = Not(sunday) & Not(monday) & tuesday & Not(wednesday) & Not(thursday) & Not(friday) & Not(saturday) >>> Wed = Not(sunday) & Not(monday) & Not(tuesday) & wednesday & Not(thursday) & Not(friday) & Not(saturday) >>> Thu = Not(sunday) & Not(monday) & Not(tuesday) & Not(wednesday) & thursday & Not(friday) & Not(saturday) >>> Fri = Not(sunday) & Not(monday) & Not(tuesday) & Not(wednesday) & Not(thursday) & friday & Not(saturday) >>> Sat = Not(sunday) & Not(monday) & Not(tuesday) & Not(wednesday) & Not(thursday) & Not(friday) & saturday >>> Today = Sun | Mon | Tue | Wed | Thu | Fri | Sat
Oversettelse av $ 7 $ utsagnene:
>>> Phi1 = monday >>> Phi2 = wednesday >>> Phi3 = tuesday >>> Phi4 = Not(monday) & Not(tuesday) & Not(wednesday) >>> Phi5 = friday >>> Phi6 = wednesday >>> Phi7 = Not(sunday)
Siden $ 6 $ av $ 7 $ er falske:
>>> Psi1 = (Phi1 & Not(Phi2) & Not(Phi3) & Not(Phi4) & Not(Phi5) & Not(Phi6) & Not(Phi7)) >>> Psi2 = (Not(Phi1) & Phi2 & Not(Phi3) & Not(Phi4) & Not(Phi5) & Not(Phi6) & Not(Phi7)) >>> Psi3 = (Not(Phi1) & Not(Phi2) & Phi3 & Not(Phi4) & Not(Phi5) & Not(Phi6) & Not(Phi7)) >>> Psi4 = (Not(Phi1) & Not(Phi2) & Not(Phi3) & Phi4 & Not(Phi5) & Not(Phi6) & Not(Phi7)) >>> Psi5 = (Not(Phi1) & Not(Phi2) & Not(Phi3) & Not(Phi4) & Phi5 & Not(Phi6) & Not(Phi7)) >>> Psi6 = (Not(Phi1) & Not(Phi2) & Not(Phi3) & Not(Phi4) & Not(Phi5) & Phi6 & Not(Phi7)) >>> Psi7 = (Not(Phi1) & Not(Phi2) & Not(Phi3) & Not(Phi4) & Not(Phi5) & Not(Phi6) & Phi7) >>> Psi = Psi1 | Psi2 | Psi3 | Psi4 | Psi5 | Psi6 | Psi7
Forenkling:
>>> simplify(Today & Psi) And(Not(friday), Not(monday), Not(saturday), Not(thursday), Not(tuesday), Not(wednesday), sunday)
Derfor er i dag Søndag .