일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
1 | 2 | 3 | 4 | |||
5 | 6 | 7 | 8 | 9 | 10 | 11 |
12 | 13 | 14 | 15 | 16 | 17 | 18 |
19 | 20 | 21 | 22 | 23 | 24 | 25 |
26 | 27 | 28 | 29 | 30 | 31 |
- ftz level13
- SWiFT
- 큐
- 백준
- HTML
- LoB
- windosw 문자열
- 암호수학
- c언어
- Stack
- PHP
- 시간복잡도
- pwnable.kr
- 미로 탐색 알고리즘
- ftz
- 자료구조
- OSI
- 스택
- 정렬 알고리즘
- 재귀
- level13
- System
- Java
- 두근두근 자료구조
- 파이썬
- C
- web
- War Game
- windosws wbcs
- 파일 시스템
- Today
- Total
나의 기록, 현진록
[Python] 암호수학 카이사르 암호(시저 암호) 방식의 복호화 본문
[Python] 암호수학 카이사르 암호(시저 암호) 방식의 복호화
guswlsdk 2017. 6. 5. 01:19# 복호화 함수 구현
def decoding (encode_str, n): # 암호화문, 암호키
decode_str=""
for i in encode_str: # D_str의 글자 수만큼 반복 (D_str의 문자열에서 한글자씩 참조할 수 있음)
if (ord(i)>=65 and ord(i)<=90): # 대문자일 경우
if(ord(i)-n < 65): # 대문자 아스키코드 범위를 벗어날 때(65미만)
x=chr(ord(i)+(26-n))
else:
x=chr(ord(i)-n)
decode_str+=x
elif (ord(i)>= 97 and ord(i) <= 122): # 소문자일 경우
if(ord(i)-n < 97): #소문자 아스키코드 범위를 벗어날 때(97미만)
x=chr(ord(i)+(26-n))
else:
x=chr(ord(i)-n)
decode_str+=x
else: #소문자 또는 대문자가 아닐 경우
decode_str+=i
return decode_str
'Programming > Algorithm & Data Structure' 카테고리의 다른 글
[C] <BAEKJOON> 백준 1009번: 분산처리 (0) | 2017.07.02 |
---|---|
[C] <BAEKJOON> 백준 1002번: 터렛 (0) | 2017.06.30 |
[Python] 암호수학 카이사르(시져)암호 복호화하기 (1) | 2017.06.27 |
[C] <BAEKJOON> 백준 1065번: 한수 (0) | 2017.06.27 |
[C] <BAEKJOON > 백준 4673번: 셀프 넘버 (0) | 2017.06.27 |