¥H¤U¬O Crystal Reports ¦r¦ê³B²z¥\¯à§ó¸Ô²Óªº½d¨Ò¡CCaesar Cipher ¬O¤@Ó²³æªº½s½Xì«h¡A¶Ç²Î¤W»{¬°¬O Julius Caesar ©Òµo©úªº¡C¦b³oÓ½s½X¤¤¡A³æ¦r¤¤ªº¨CÓ¦r¥À³£·|¥H¦r¥Àªí¤¤¨ä«áªº²Ä¤Ó¦r¤¸¨Ó¨ú¥N¡C¨Ò¦p¡AJaws ·|Åܦ¨ Ofbx¡C½Ðª`·N¡Aw ¬O¥Ñ b ¨ú¥N¡A¦ý¬O¦b¦r¥Àªí¤¤ w «á±¨Ã¨S¦³ 5 Ó¦r¤¸¡A©Ò¥H·|¦A±qÀY¶}©lºâ°_¡C
³o¸Ìªº¤½¦¡´N¬O±N Caesar Cipher À³¥Î¨ì Xtreme ¸ê®Æ®wªº {«È¤á.¤½¥q¦WºÙ} Äæ¦ì¤¤¡G
//The Caesar cipher
//The input string to encrypt
Local StringVar inString := {«È¤á.¤½¥q¦WºÙ};
Local NumberVar shift := 5;
Local StringVar outString := "";
Local NumberVar i;
For i := 1 To Length(inString) Do
(
Local StringVar inC := inString [i];
Local StringVar outC;
Local BooleanVar isChar :=
LowerCase(inC) In "a" To "z";
Local BooleanVar isUCaseChar :=
isChar And (UpperCase (inC) = inC);
inC := LCase(inC) ;
If isChar Then
(
Local NumberVar offset :=
(Asc(inC) + shift - Asc("a")) Mod
(Asc("z") - Asc("a") + 1) ;
outC := Chr(offset + Asc("a")) ;
If isUCaseChar Then outC := UpperCase(outC)
)
Else
outC := inC;
outString := outString + outC
);
outString
¦b¥H¤W½d¨Ò¤¤¡A¦b For °j°é¤¤ªº¹Bºâ¦¡°Ï¶ô¤¤¦³¤@Ó±_ª¬ªº If ¹Bºâ¦¡¡C³oÓ If ¹Bºâ¦¡t³d²¾°Ê³æ¤@¦r¤¸®Éªººë½T²Ó¸`¡A¨Ò¦p¡A±N¦r¥Àµø¬°»P¼ÐÂI²Å¸¹©MªÅ¥Õ¤£¦P¡C¯S§O¬O¡A¼ÐÂI²Å¸¹©MªÅ¥Õ¨Ã¤£·|¶i¦æ½s½X¡C¦¹³Bªº«ÂI¬O¡A¦b±±¨îµ²ºc¤¤¥i¥H¨Ï¥Î¨ä¥L±_ª¬ªº±±¨îµ²ºc¡A¦Ó¥B¦b¨ä¥L±±¨îµ²ºcªº (¥H¬A¸¹¬A°_¨Óªº) ¹Bºâ¦¡°Ï¶ô¤¤¤]¥i¥H¥]§t¦h«¹Bºâ¦¡¡C