encrypt.cs 的程式原始碼如下
using System; using System.Text; namespace Encryptor { class Encrypt { private string cArray; public string Code { get { return cArray; } set { if (value is string && value.Length == 26) { cArray = value; } else { Console.WriteLine("something worng!!"); } } } public Encrypt() { Random r = new Random(); int a = 0; int b = 0; while (a % 2 == 0) { a = r.Next(1, 10); b = r.Next(1, 10); } int x, y, m; char c = 'a'; int i; StringBuilder s = new StringBuilder(); for (i = 0; i < 26; i++) { x = c; y = x * a + b; m = y % 26; s.Append((char) (m + 97)); c++; } this.cArray = s.ToString(); } public string toEncode(string s) { StringBuilder r = new StringBuilder(); // 進行編碼轉換 char c; int i, m; for (i = 0; i < s.Length; i++) { if (s[i] >= 97 && s[i] <= 122) { c = s[i]; m = c - 97; r.Append(this.Code[m]); } else { r.Append(s[i]); } } // 回傳字串 return r.ToString(); } public string toDecode(string s) { StringBuilder r = new StringBuilder(); // 進行解碼的工作 int i, j; for (i = 0; i < s.Length; i++) { if (s[i] >= 97 && s[i] <= 122) { // 找出表格中對應的索引值 for (j = 0; j < 26; j++) { if (s[i] == this.Code[j]) { r.Append((char) (j + 97)); break; } } } else { r.Append(s[i]); } } return r.ToString(); } } } /* 《程式語言教學誌》的範例程式 http://pydoing.blogspot.com/ 檔名:encrypt.cs 功能:示範 C# 程式 作者:張凱慶 時間:西元 2012 年 10 月 */
您可以繼續參考
範例程式碼
相關目錄
回 C# 入門指南
回 C# 教材
回首頁
參考資料
C# 程式設計手冊
C# Programming
Start - mono
Mono Documentation
沒有留言:
張貼留言