간단한 암호화 프로그램알고리즘/기초2023. 8. 8. 00:48
Table of Contents
아래의 각각 영문자 소문자를 암호화해주는 배열, 숫자를 암호화해주는 배열을 이용하여 입력값을 암호화하여 출력해보자.
char[] abcCode =
{ '`','~','!','@','#','$','%','^','&','*',
'(',')','-','_','+','=','|','[',']','{',
'}',';',':',',','.','/'};
//순서대로 a,b,c,d,e,f......z
char[] numCode = {'q', 'w', 'e', 'r', 't', 'y', 'u', 'i', 'o', 'p'};
//0 1 2 3 4 5 6 7 8 9
암호화할 값을 src로 입력받고, 암호화된 값을 저장할 result를 선언한다.
String src = sc.nextLine(); //input
String result = "";
char타입의 변수 ch에 src에 값을 하나씩 차례대로 암호화하는 과정이다.
if문을 통해 입력받은 값이 숫자인지 영소문자인지 판별하고,
소문자일경우에는 ch - 'a'를 하여 암호화에 해당하는 값으로 변환한다.
숫자역시 ch - '0'을 하여 암호화에 해당하는 값으로 변환한다.
for(int i=0; i<src.length(); i++) {
char ch = src.charAt(i);
if('a'<=ch && ch <= 'z') {
result+= abcCode[ch - 'a'];
}else if('0' <= ch && ch <='9') {
result+= numCode[ch - '0'];
}
}
전체코드
import java.util.Scanner;
public class Main {
public static void main(String[] args) {
Scanner sc = new Scanner(System.in);
char[] abcCode =
{ '`','~','!','@','#','$','%','^','&','*',
'(',')','-','_','+','=','|','[',']','{',
'}',';',':',',','.','/'};
//0 1 2 3 4 5 6 7 8 9
char[] numCode = {'q', 'w', 'e', 'r', 't', 'y', 'u', 'i', 'o', 'p'};
String src = sc.nextLine(); //input
String result = "";
for(int i=0; i<src.length(); i++) {
char ch = src.charAt(i);
if('a'<=ch && ch <= 'z') {
result+= abcCode[ch - 'a'];
}else if('0' <= ch && ch <='9') {
result+= numCode[ch - '0'];
}
}
System.out.println("src:" + src);
System.out.println("result:" + result);
}
}
출력
abc123
src:abc123
result:`~!wer
728x90
'알고리즘 > 기초' 카테고리의 다른 글
주어진 2차원 배열의 복사를 이용하여 확장하기 (0) | 2023.08.08 |
---|---|
주어진 배열을 시계방향으로 회전시키는 프로그램 (0) | 2023.08.07 |
입력된 데이터를 읽고 각 숫자의 개수를 출력하는 프로그램 (0) | 2023.08.07 |
거스름 돈 계산하기 (0) | 2023.08.07 |
회문수(palindrome) 구하기 (0) | 2023.08.06 |
@leegeonwoo :: geonwoo
포스팅이 좋았다면 "좋아요❤️" 또는 "구독👍🏻" 해주세요!