QR英数字[文字_]:=
Which[DigitQ[文字],ToCharacterCode[文字][[1]]-48,
LetterQ[文字],ToCharacterCode[ToUpperCase[文字]][[1]]-55,
True,Switch[文字," ",36,"$",37,"%",38,"*",39,
"+",40,"-",41,".",42,"/",43,":",44,_,"エラー：英数字モードでは扱えません"]]

情報語[学籍番号_]:=
Module[{英数字={0,0,1,0},文字数,番号本体,終端={0,0,0,0}},
文字数=IntegerDigits[StringLength[学籍番号],2,9];
番号本体=Map[If[Length[#]==2,
IntegerDigits[#.{45,1},2,11],
IntegerDigits[#[[1]],2,6]]&,
Partition[Map[QR英数字,Characters[学籍番号]],2,2,1,{}]];
Part[Partition[
Partition[Flatten[{英数字,文字数,番号本体,終端}],8,8,1,0],
13,13,1,{{1,1,1,0,1,1,0,0},{0,0,0,1,0,0,0,1}}],1]//TableForm]

学籍番号を自分のものに変え，自分で作ったデータと一致するかを確認せよ．

情報語["23B2127006C"]