3 svar
55 visningar
Dcbest01 är nöjd med hjälpen!
Dcbest01 49
Postad: 12 sep 2019 Redigerad: 12 sep 2019

if satser

Uppgift: "Skriv ett villkor som är sant om antingen det ena eller det andra av två vilkorsuttryck är sant, men INTE om båda är sanna."

Har försökt men kan verkligen inte

mitt försök är detta:

a = 2
b = 3
c = 4
if a < b or b < c and not a < b and b < c:
   print("antingen är a mindre än b eller b mindre än c")

Laguna 6037
Postad: 12 sep 2019

Din idé fungerar nog, men det blir fel för att du inte använder parenteser. and går före or, precis som * går före +. Och not före de andra. 

Det du skriver är samma sak som

a < b or (b < c and (not a < b) and b < c)

medan du kanske menar

(a < b or b < c) and not (a < b and b < c). 

Dcbest01 49
Postad: 12 sep 2019

Tack så jättemycket det funkar nu :D

Affe Jkpg 5032
Postad: 12 sep 2019

Överkurs:

Om man beskriver uppgiften i t.ex. en sanningstabell, så kan kan man se att uppgiften beskriver "exklusiv OR": 

https://sv.wikipedia.org/wiki/Exklusiv_disjunktion

Phyton erbjuder då alternativa (elegantare?) lösningar.

Svara Avbryt
Close