全国组织机构代码校验码生成程序(java版)

来源:互联网 发布:经济与社会数据库 编辑:程序博客网 时间:2024/04/27 05:30

/*全国组织机构代码校验码生成程序
 *00251805 7 中共温州市委办公室
  00251807 3 中共温州市委组织部
  00251808 1 中共温州市委老干部局 沈伟 2002-04-09 2008-05-05 0.0000 详细
  00251809 X

 **/
import java.io.*;
public class G_Code{
 public static char [] a=new char[8];
 public void jy(){
     int [] ww={3,7,9,10,5,8,4,2};
  
  int [] cc=new int[8];
  int DD=0;
  int C9=0;
  
  for(int i=0;i<8;i++){
   cc[i]=G_Code.a[i];
   if(47<cc[i] && cc[i]<58) cc[i]=cc[i]-48;
   else
   cc[i]=cc[i]-65;
   }
        for(int i=0;i<8;i++){
   DD+=cc[i]*ww[i];
   }
  C9=11-DD%11;
  if(C9==10){
   for(int i=0;i<8;i++)
   System.out.print(G_Code.a[i]);
      System.out.println("-X");
      }
  else if(C9==11){
   for(int i=0;i<8;i++)
   System.out.print(G_Code.a[i]);
      System.out.println("-" + (char)(48));
      }                           
  else{
      for(int i=0;i<8;i++)
   System.out.print(G_Code.a[i]);
   System.out.println("-" + (char)(C9+48));
   
   }
  
 }
 public static void main(String[] args){
   try{
    
            System.out.println("请输入长8位的本体代码!");
      for(int i=0;i<8;i++){
       
       
       G_Code.a[i] =(char)System.in.read();
      }
   }catch (IOException e) { }
   G_Code G=new G_Code();
   G.jy();
 
 }
}

原创粉丝点击