zoukankan      html  css  js  c++  java
  • 组织机构代码生成算法(c#实现)

    1.全国组织机构代码由八位数字(或大写拉丁字母)本体代码和一位数字(或大写拉丁字母)校验码组成。

      本体代码采用系列(即分区段)顺序编码方法。

      校验码按照以下公式计算:

      C9=11-MOD(∑Ci(i=1→8)×Wi,11)

      式中: MOD——代表求余函数;

      i——代表代码字符从左至右位置序号;

      Ci——代表第i位上的代码字符的值(具体代码字符见附表);

      C9——代表校验码;

      Wi——代表第i位上的加权因子,其数值见下表:

      当C9的值为10时,校验码应用大写的拉丁字母X表示;当C9的值为11时校验码用0表示。

    其中生成第九位的

        string C9 = "";
                //  C9=11-MOD(∑Ci(i=1→8)×Wi,11) 

                
    // Dim w(8) As Integer 'W权位   w(1) = 3   w(2) = 7   w(3) = 9   w(4) = 10   w(5) = 5   w(6) = 8   w(7) = 4   w(8) = 2 


                int[] right = { 379105842 };

                string num = nbe1.ToUpper();

                int total = 0;

                int A = AscUtility.Asc("A");
                int Z = AscUtility.Asc("Z");
                for (int i = 0; i < 8; i++)
                {
                    string c = num.Substring(i, 1);//(Mid(str_in, i, 1))  
                    int z = 0;


                    int tempC = AscUtility.Asc(c);
                    if (tempC >= A & tempC <= Z)
                    {
                        z = (tempC - 55) * right[i];
                    }
                    else if (tempC >= 48 & tempC <= 57)
                    {
                        int value = tempC - 48;

                        z = Convert.ToInt32(value) * right[i];
                    }
                    else
                    {

                    }
                    total = total + z;

                }
                int jav = 11 - (total % 11);

                if (jav == 10)
                {
                    C9 = "X";
                }
                else if (jav == 11)
                {
                    C9 = "0";
                }
                else
                {
                    C9 = jav.ToString();
                    //Mid(Str(jav), 2, 1);
                }// '删除文
  • 相关阅读:
    CoreText实现图文混排
    iOS中的数据的存储方式
    获得自定义的所有相簿
    swift基础语法(31- swift可选类型)
    swift内存管理(30- Swift内存管理)
    swift基础语法(29- 析构方法)
    swift基础语法(27- 构造方法,带参数的构造方法,常量存储属性与构造方法,结构体构造方法)
    iOS --旋转动画
    iOS--UILabel上画横线
    iOS--(转)集成银联3.3.0
  • 原文地址:https://www.cnblogs.com/chenli0513/p/2444315.html
Copyright © 2011-2022 走看看