1. 程式人生 > >JAVA柵欄密碼解密程式

JAVA柵欄密碼解密程式

package net.mindview;
import static net.mindview.util.Print.*;
import java.util.*;
//str.replaceAll(" ", ""); 去掉所有空格,包括首尾、中間

public class H
{   
    public static void main(String[] args)
    {
        //String s="TEESCPEHRIAIHR";
        //String s="TAHCEIRPEHIESR";
        //String s="HLOOLELWRD";
        String s="HLODYEORMZLWLYW"
; String s1=s.replaceAll(" ",""); print("密文:"+s1);//測試 int len=s1.length(); print("密文共有"+len+"位");//測試 int []N=new int[len+1]; print("可分為:"); for(int i=2;i<=len-1;i++) { if(len%i==0) { N[i]=1; printnb(i+" "
); } } print("欄"); for(int j=2;j<=len-1;j++) { if(N[j]==1)//j=2 則共7組數,每組兩個值 { int c=len/j; //c=7 int n=0; for(int k=1;k<=c;k++) { n++; int
sum=n; for(int p=1;p<=j;p++) { //print(sum); printnb(s1.charAt(sum-1)); sum=sum+c; } } print(); } } } }

輸出:
密文:HLODYEORMZLWLYW
密文共有15位
可分為:
3 5 欄
HELLOWORLDMYYZW
HDOZLLYRLYOEMWW