2013年7月9日火曜日

C#でモジュラス10/ウェイト3の計算

だいぶ前に書いたバーコード作成ソフトのコードを見直してます。
ソースもさらしていきます

JANコードなどで使うチェックディジットです

Modulus10W3コード
  1. /// <summary>  
  2. /// モジュラス10/ウェイト3 計算  
  3. /// JAN8 JAN13 ISBN13 ITF NW-7  
  4. /// </summary>  
  5. public static string GetModulus10Weight3(string Value)  
  6. {  
  7.     if (!Regex.IsMatch(Value, @"^[0-9]+$"))  
  8.     {  
  9.         throw new FormatException();  
  10.     }  
  11.   
  12.     int x = 0;  
  13.     for (int i = 0; i < Value.Length; i++)  
  14.     {  
  15.         x += int.Parse(Value[Value.Length - 1 - i].ToString()) * ((i % 2 == 0) ? 3 : 1);  
  16.     }  
  17.   
  18.     x = (10 - (x % 10)) % 10;  
  19.   
  20.     return x.ToString();  
  21. }  


XMLコメントが入るとおかしくなるなあ
タグが消えたりしてしまう なんでだろう

0 件のコメント:

コメントを投稿