text encryption


Submit solution

Points: 20
Time limit: 1.0s
Memory limit: 64M

Author:
Problem type

題目說明

<1113檢定考題>
寫一程式實踐一個簡單的文字加密功能。
加密方法如下:

  • 將字元的ASCII碼值加上固定的偏移量作為加密值。
  • 偏移量為2,即將字元的ASCII碼值加2。(例如,A的ASCII碼為65,加上偏移量2後,加密後的結果為67,即C)
  • 如果加上偏移量後的字母超出了字母範圍,則將其循環回到字母範圍的開頭(即Y加密後為A、z加密後為b)
  • 請注意:不對非字母字元進行加密。

輸入

從鍵盤輸入一個純文字字串

輸出

將該字串中的每一個字元進行加密,由螢幕輸出加密後的結果

sample input & output

輸入 輸出
樣本1 I am good!! 加密後的結果:
K co iqqf!!
樣本2 See you at 17:00. 加密後的結果:
Ugg aqw cv 17:00.
樣本3 AV8D: "good morning". 加密後的結果:
CX8F: "iqqf oqtpkpi".

Comments


  • 0
    scu10156153  commented on Jan. 11, 2024, 9:45 p.m. edit 2

    import java.util.Scanner;

    public class A2 {

    public static void main(String[] args) {
        // TODO Auto-generated method stub
    
        Scanner sc = new Scanner(System.in) ;
    
        String str= sc.nextLine();
        System.out.println("加密後的結果:");
        for(int i=0;i<str.length();i++) {
            char ch = str.charAt(i);
    
            if(Character.isUpperCase(ch)) {
                ch = (char) ((ch - 'A' + 2) % 26 + 'A');
                System.out.print(ch);
            }else if(Character.isLowerCase(ch)) {
                ch = (char) ((ch - 'a' + 2) % 26 + 'a');
                System.out.print(ch);
            }else {
                System.out.print(ch);
            }
        }
    }

    }