Python - Caeser Cipher Not Giving Right Output
Dave Angel
davea at davea.name
Thu Mar 20 23:16:50 EDT 2014
dtran.ru at gmail.com Wrote in message:
> Hello good people I am working on a caeser cipher program for class. However, I ran into a problem with my outputs. Up to a certain point for example:
>
> 1. two('y', 'z')
>
> Would give a '\x92' output instead of a 'x' output.
>
> Currently this is my code so far:
>
> def chartonum(ch):
> return ord(ch) - 97
>
> def numtochar(n):
> return chr(n + 97)
>
> def two(c1 , c2):
> c1 = chartonum(c1)
> c2 = chartonum(c2)
> return numtochar(c1 + c2 %26)
You're missing some parentheses in that line. To test your
understanding, try picking some numbers for c1 and c2. Display
c1 + c2 % 26, and see if the result is always between 0 and
25.
Or look up the term precedence in your textbook.
>
> I am thinking I have messed up on my mod 26, however, I am at a lost where I might have went wrong in that. Any help would be appreciated.
>
--
DaveA
More information about the Python-list
mailing list