Je ziet meteen dat deze gelijkheden correct zijn:

SEVEN PLUS TWO = EIGHTEEN MINUS NINE = EIGHTEEN OVER TWO

Maar Susan Thorpe ontdekte dat deze gelijkheden evengoed blijven gelden als elke letter de waarde krijgt van zijn positie in het alfabet (A=1, B=2, C=3, …), en de waarde van elke zin gelijk is aan de som van de waarden van de letters uit die zin. Elk van de drie zinnen heeft zo een waarde die gelijk is aan 191.

Opgave

Geen enkele van deze functies mag onderscheid maken tussen hoofdletters en kleine letters.

Voorbeeld

>>> karakterwaarde('A')
1
>>> karakterwaarde('z')
26
>>> karakterwaarde('!')
0

>>> stringwaarde('SEVEN PLUS TWO')
191
>>> stringwaarde('eighteen minus nine')
191
>>> stringwaarde('Eighteen Over Two')
191
>>> stringwaarde('Tea For Two')
123

>>> isevenwaardig('SEVEN PLUS TWO', 'eighteen minus nine')
True
>>> isevenwaardig('eighteen minus nine', 'Eighteen Over Two')
True
>>> isevenwaardig('SEVEN PLUS TWO', 'Tea For Two')
False

>>> isgelijkheid('SEVEN PLUS TWO = eighteen minus nine')
True
>>> isgelijkheid('eighteen minus nine=Eighteen Over Two')
True
>>> isgelijkheid('SEVEN PLUS TWO = eighteen minus nine = EIGHTEEN OVER TWO')
False
>>> isgelijkheid('SEVEN PLUS TWO ~ eighteen minus nine')
False
>>> isgelijkheid('SEVEN PLUS TWO = Tea For Two')
False

Bronnen