-
Notifications
You must be signed in to change notification settings - Fork 0
Expand file tree
/
Copy pathmain.java
More file actions
60 lines (49 loc) · 1.74 KB
/
Copy pathmain.java
File metadata and controls
60 lines (49 loc) · 1.74 KB
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
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
/*
Copyright 2026 Edi (Hadi Gholipour _ AxGooD)
Licensed under the Apache License, Version 2.0 (the "License");
you may not use this file except in compliance with the License.
You may obtain a copy of the License at
http://www.apache.org/licenses/LICENSE-2.0
*/
import java.util.Scanner;
public class main {
private String String;
private int k;
private Scanner Input;
public main(){
this.Input = new Scanner(System.in);
}
public String encrypt(String S, int Shift){
String result = "";
for (int i = 0; i < S.length(); i++) {
char ch = S.charAt(i);
if (Character.isUpperCase(ch)) {
char encryptedCh = (char) (((int) ch - 'A' + Shift) % 26 + 'A');
result += encryptedCh;
}
else if (Character.isLowerCase(ch)) {
char encryptedCh = (char) (((int) ch - 'a' + Shift) % 26 + 'a');
result += encryptedCh;
} else {
result += ch;
}
}
return result;
}
// ===========
// EDI
// ===========
public String decrypt(String S, int Shift){
return encrypt(S, 26 - (Shift % 26));
}
public static void main(String[] args){
main Start = new main();
System.out.println("======= Encypt Decode System (Edi)========");
System.out.println("Enter String:"); Start.String = Start.Input.next();
System.out.println("Enter K(Count Movement)"); Start.k= Start.Input.nextInt();
String Encrypted = Start.encrypt(Start.String, Start.k);
System.out.printf("Encrypt Message:%s\n", Encrypted);
String Decrypted = Start.decrypt(Encrypted, Start.k);
System.out.printf("Decrypt Message:%s", Decrypted);
}
}