只用於循環。不管你學習什麼語言,你需要學習如何使用循環(或while循環或foreach循環或任何良好的控制結構)。
你要走00,然後是10,01,然後是20,11,02,然後是30,21,12,03等......你可以看到第一個數字減少1,第二個數字增加了直到你擊中n0 ... 0n。覆蓋平方上半年...
// Assume $n is the width/height of the square
for($m=0; $m<=$n; $m++)
{
for($a=$n; $a>=0; $a--)
{
for($b=0; $b<=$n; $b++)
{
//Do whatever you want with $array[$a][$n]...
}
}
}
現在,廣場上下半年的第一條打41,32,23,14。它擊中第二條紋上的第42,33,24。它擊中43,34,最後44.你可以看到他們倆一步,直到他們打的$ n
for($m=1; $m<=$n; $m++)
{
for($b=$m; $b<=$n; $b++) // Put B on the outside because it is the limitation
{
for($a=4; $b<=$n; $a--)
{
//Do what you want with $a and $b
}
}
}
現在......可以這樣輕易破譯?是。你只是在拼湊信件。不管你怎麼爭搶它,它都容易破譯。您需要用替換集替換這些字母。最理想的情況是,您需要爲每個要替換的字母設置一個全新的替換套件 - 這很難使用。所以,大多數密碼使用一組替換組,比如32組替換字母或符號,它們儘可能隨機地循環。
有太多可能的答案,或者對於這種格式太好的答案太長。請添加詳細信息以縮小答案集或隔離可以在幾個段落中回答的問題。我建議您找到一個開發論壇(可能是[Quora](http://www.quora.com/Computer-Programming) ?)來計算一般性。然後,當/如果您有特定的編碼問題,請回到StackOverflow,我們很樂意提供幫助。 –
你需要兩個循環(嵌套)。 –