RosettaCodeData/Task/ADFGVX-cipher/APL/adfgvx-cipher.apl

40 lines
1 KiB
APL
Raw Permalink Normal View History

2026-04-30 12:34:36 -04:00
adfgvx{
n⎕NS''
n.split{: (),}
n.enc{
t(.,'ADFGVX')[(=)¨]
w(()split t)[;]
1' ',¨w~¨' '
}
n.dec{
t2 split ((' ')[;])~' '
['ADFGVX'¨t]
}
n
}
adfgvx_test{
square6 6(⎕A,⎕D)[?36]
'Polybius square:'
' ─ADFGVX','│┼││││││','A D F G V X' '─'(111 0)\square
''
key{
file'e:\unixdict.txt'
dict(~data⎕TC)data⎕NGET file
dict({=}¨dict)/dict
dict({}¨dict)/dict
1⎕C dict[?dict]
}9
'Key: ',key
asquare adfgvx key
'Plaintext: ',plaintext'ATTACKAT1200AM'
'Encrypted: ',encrypteda.enc plaintext
'Decrypted: ',a.dec encrypted
}