Comments
Description
Transcript
EXSTAT財 務データの知識ベース構築環境への移行 宮 川 裕
EXSTAT財 務 デ ー タの知 識 ベ ー ス構 築 環境 へ の移 行 宮 Conversion from 川 裕 EXSTAT knowledge base Hiroyuki 之 financial data into environment Miyagawa There are some financial data we could obtain , EXSTAT , COMPUSTAT II , NEEDS. To store these financial data into knowlege base is necessary for building a knowledge base system based on the finacial data. Knowledge user interface base systems and support are built on a work station computer , whose knowledge base are more substantial than tools for building or a personal those of host computer system. The purpose of this paper is to convert financial data stored personal computer . on the host computer the section B and the section C in EXSTAT system into knowlege base environment on は じめ に 財 務 デ ー タ と して現 在 入 手 で きる もの の 中 に,英 国 お よび ヨー ロ ッパ につ い て はエ クス テ ル社 の エ クス タ ッ ト(EXSTAT),米 国 お よ び カ ナ ダ につ い て はス タ ン ダー ド ・ア ン ド ・プ ア ー ズ社 の コ ン ピ ュス タ ッ ト(COMPUSTATII),我 が 国 にお い て は 日本 経 済 新 聞 社 の ニ ー ズ(NEEDS) が あ る。 これ らの財 務 デ ー タ を知 識 ベ ー ス に格 納 で きれ ば,国 際 財 務 デ ー タ を基 と した エ キ ス パ ー トシ ス テ ム な どの知 識 ベ ース シス テ ム の構 築 に利 用 す る こ とが で きる 。知 識 ベ ース シス テ ム はユ ー ザ イ ン タフ ェ ー スや構 築 支援 ツー ル が充 実 して い る こ とが 求 め られ る の で ワ ー クス テ ー シ ョンや パ ソ コ ン上 に構 築 され る こ とが多 い 。従 来 は上 記 財 務 デ ー タの よ うな大 容 量 のデ ー タ は も っぱ ら大 型 汎 用機 上 で処 理 され,ワ 難 で あ っ た が,近 年,パ ー クス テ ー シ ョ ンや パ ソ コ ンで は記 憶容 量 の点 か ら扱 い が 困 ソ コ ン等 にお い て も光 磁 気 デ ィス ク(約600メ ガバ イ ト)の よ うに 大容 量 の 外 部 記 憶 装 置 を接 続 す る こ とが で き る よ うに な り,メ イ ン メモ リー もパ ソコ ン レベ ル で16メ ガバ イ ト程 度 まで拡 張 で きる な ど,大 容量 の デ ー タをパ ソ コ ン等 で 扱 う こ とが可 能 に な って きて い る。 そ こで,本 稿 で は国 際財 務 知 識 ベ ース シス テ ム を構 築 す る ため の 第 一 歩 と して,上 記 財 務 デ ー タの 中 か らEXSTAT財 務 デ ー タの セ ク シ ョ ンBお よび セ ク シ ョンCを 大 型 汎 用機 か らパ ソ コ ン 上 の 知 識 ベ ース 構 築環 境 に移 行 す る こ と を 目的 と して い る。 な お,本 稿 で は 知識 ベ ー ス構 築 ツ ー 一29一 ル と し てART-IM1.51)を 用 い た。 1.EXSTAT財 1.1EXSTAT財 務 デ ー タ の 概 要2) 務 デ ー タの収 録 内容 EXSTAT財 務 デ ー タ に は 英 国 お よ び ヨ ー ロ ッパ の 企 業 に つ い て の 最 長 過 去18年 財 務 デ ー タ が 収 録 さ れ て い る(1988/7/21現 在)。 表1-1は 間,4315社 の 登 録 国 別 収 録 件 数 を,表1-2は 収 録 期 間 別 収 録 件 数 を 示 した も の で あ る3)。 表1-1登 登録 国名 収録件数 録 国別 収 録 件 数 比 率(沿 登録国名 収録件数 比 率(%) I ENGLAND AUSTRALIA SCQTLAND FRANCE GERMANY NETHERLANDS 3212 258 184 138 133 60 57 54 41 40 32 JAPAN SWEDEN EIRE BELGIUM IT肌Y 74.43 5.98 4.26 3.20 3.08 1.39 1.32 1.25 0.95 0.93 0.74 表1-2収 収 録 期 間(年) 収録 件数 27 21 15 15 8 6 3 3 8 SWITZERLAND DENMARK NORWAY FINLAND AUSTRLA SPAIN NEWGEALAND ISLEOFMAN OTHERS 4315 TOTAL 0.63 0.49 0.35 0.35 0.19 0.14 0.07 o.07 0.18 100.00 録期間別収録 件数 収 録 期 間(年) 比 率(%) 収録件数 比 率(%) 1 1 2 3 4 51 201 217 192 217 247 206 172 5 s 7 8 9 10 EXSTAT財 211 263 4 45 14 5 03 5 72 15 16 4 3 4 s 17 18 務 デ ー タ は セ ク シ ョ ンB,セ ク シ ョ ンDに 77 99 89 10 409 338 128 126 176 ssi 468 2 TOTAL 4315 よ び セ ク シ ョ ンDの3つ は 会 社 属 性 デ ー タ が,セ ク シ ョ ンCに 内 販 売:ニ よ びNEEDSと よ び 表1-2は classification)に 05 100.00 の セ ク シ ョン は財 務 諸 表 デ ー よ び セ ク シ ョ ンCで あ る が, チ メ ンデ ー タ シス テ ム㈱ の 比 較 は,宮 科 学 紀 要 第17巻,第2号,pp.94-96(1989)を 3)表1-1お 01 85 つ い て も同様 の 処 理 手順 で移 行 が 可 能 で あ る。 1)製 造:InferenceCorporation,国 2)COMPUSTATIIお 83 97 92 os は証 券 デ ー タが そ れぞ れ収 録 され て い る。 本 稿 で 知 識 ベ ー ス 構 築 環 境 へ の 移 行 対 象 と し た の は セ ク シ ョ ンBお セ ク シ ョ ンDに ,. 7 2 2 4 16 10 0 ■ ク シ ョ ンCお に 分 け て 収 録 さ れ て い る 。 セ ク シ ョ ンBに タ が,セ 11 12 13 1.18 4 66 5 03 セ ク シ ョ ンBの 川 裕 之:"日 英 米 の 主 要 財 務 デ ー タ の 構 造 比 較",青 山社 会 参 照 され た い 。 項 目B9(Countryofregistration)お 基 づ い て 集 計 し た もの で あ る 。 一30一 よ びB30(Industrial 1.2ソ ース デ ー タ の構 造 EXSTAT財 ド長,可 務 デ ー タ は 磁 気 テ ー プ で 供 給 さ れ て お り,ソ 変 ブ ロ ッ ク 長(最 大 ブ ロ ッ ク サ イ ズ は32000バ ー ス デ ー タの 記 録 形 式 は可 変 レ コ ー イ ト)で あ る 。 図1-1は ソ ース デ ー タ の 構 造 を 示 し た も の で あ る4)。 BYTE 4 BLOCKLENGTH 80 HEADERLABEL 159 SECTION B SECTION 158Q C 1会 社 分 の 重589 収録期圃分 SECTION 財務 デ ー タ のセ クショ C ン数 1589 SECTION C 39+103n n:証 SECTION 券 数 D セ ク シ ョン の 大 き さは 証券数 によ る \ 80 TAILERLABEL 図1-1EXSTAT財 図1-1に 示 し た と お り,セ 1会 社 に つ き必 ず1つ コ ー ド長)は さ れ,セ ク シ ョ ンB(159バ 収 録 さ れ て い る が,セ イ ト,た だ し先 頭4バ ク シ ョ ンC(1589バ イ トは レ コ ー ド長)は イ ト,た だ し先 頭4バ 収 録 期 間 の 数 だ け 収 録 さ れ て い る 。 セ ク シ ョ ンDは 証 券 の 数 が1以 イ トは レ 上 の場 合 に収 録 ク シ ョ ン の 大 き さyは, y=39十103n(n:証 で あ る(た 務 デ ー タの ソ ース デ ー タ の構 造 だ し先 頭4バ 券 の 数) イ トは レ コ ー ド長)。 証 券 の 数 が0の ない。 4)ExtelFinancialL童mited:「EXSTATTAPEFORMAT」(FEBRUARY1989) 一31一 場 合 に は セ ク シ ョ ンDは 収録 され 2.知 2.1知 識 ベ ー ス構 築 環 境 へ の移 行 識 ベ ー ス構 築 環 境 知 識 ベ ー ス は エ キ ス パ ー トシ ス テ ム な どの 知 識 シ ス テ ム が 利 用 しや す い よ う に体 系 化 さ れ た 知 識 の 集 合 体 で あ る 。 し た が っ て,一 定 の 知 識 表 現 形 式 と 知 識 管 理 シ ス テ ム の も と で 構 築 す る必 要 が あ る 。 本 稿 で は,NECのPC-9800で (以 下ART-IMと い う)を 用 い た 。ART-IMは に 移 植 し た も の で,ARTが ス コ ン パ イ ラ,ソ 動 作 す る エ キ ス パ ー トシ ス テ ム 構 築 ル ー ルART-IM1.55) ワ ー ク ス テ ー シ ョ ン版 のARTを 有 す る 主 要 な 機 能 で あ る 知 識 表 現 用 言 語,推 パ ソコ ンに 向 け 論 エ ン ジ ン,知 識 ベー フ トウ ェ ア 開 発 環 境 等 の 機 能 を 含 む ハ イ ブ リ ッ ド型 の エ キ ス パ ー ト シ ス テ ム 構 築 環境 で あ る。 な お,ART-IMはC言 語 に よ っ て 記 述 さ れ て い る 。ART-IMに あ らか じめ用 意 され て い る知識 表 現 や 推 論 機 構 で は 知 識 ベ ー ス シ ス テ ム 構 築 に 不 十 分 の 場 合 に は,後 述 の よ う にC言 語 を用 い て 知 識 表 現 や推 論機 構 を修 正 す る こ とが可 能 で あ る。 図2-1は,本 稿 に お け る 知 識 ベ ー ス 構 築 環 境 の シ ス テ ム 構 成 を 示 し た も の で あ る 。 図2-1 に 示 す よ う に 本 稿 に お け る 知 識 ベ ー ス 構 築 環 境 の ハ ー ド ウ ェ ア 構 成 は パ ソ コ ン(NEC PC-9801ES)シ ス テ ム に 増 設 メ モ リ,ハ も の で あ る6)。 な お,C言 2.2大 ー ドデ ィ ス ク お よ び 光 磁 気 デ ィ ス ク(MO)を 語 の 処 理 系 はMS-C(マ イ ク ロ ソ フ ト社)を 接 続 した 用 い た。 型 汎 用 機 上 で の デ ー タ 変 換7) EXSTAT財 務 デ ー タ は 本 稿 で 使 用 し た 大 型 汎 用 機 か らパ ソ コ ン の 光 磁 気 デ ィ ス ク ヘ フ ァ イ ル 転 送 コ マ ン ド(FILTRANCE)で 転 送 さ れ る 。 こ のFILTRANCEコ デ ー タ は キ ャ ラ ク タ コ ー ド に 限 られ る が,EXSTAT財 の デ ー タ が 含 ま れ て い る の で,そ マ ン ドに よ っ て転 送 で き る 務 デ ー タ の セ ク シ ョ ンCに の ま ま の 内 容 で はFILTRANCEコ で き な い,ま た,FILTRANCEコ 送 で あ り,通 常 の コ ピ ー コ マ ン ドに 比 較 し て 転 送 に 時 間 が か か る た め,EXSTAT財 体 を 一 度 に 転 送 す る と,30時 は パ ッ ク形 式 マ ン ドに よ る デ ー タ転 送 が マ ン ドに よ る デ ー タ 転 送 は 基 本 的 に はTSS端 末 へ の デ ー タ転 務 デ ー タ全 間 以 上 の 転 送 時 間 が 見 込 ま れ る 。 さ ら にFILTRANCEコ 転 送 レ コ ー ド長 は999バ イ ト ま で と な っ て い る8)。 そ こ で,大 マ ン ドの 型 汎 用 機 上 に お い てEXSTAT財 務 デ ー タ を 以 下 の よ う に 変 換 す る こ と に し た9)。 (1)セ ク シ ョ ンB,セ (2)セ ク シ ョ ンCの ク シ ョ ンCお よ び セ ク シ ョ ンDを 別 々 の フ ァイル に分 割 す る。 パ ック形 式 の デ ー タ を キ ャ ラ ク ター に変 換 す る。 (3)セ ク シ ョ ンCの1件 の レ コ ー ドを12の レ コ ー ド に分 割 す る こ と に よ っ て セ ク シ ョ ンCの フ ァイ ル の レ コ ー ド長 を256バ イ トに す る 。 (4)1回 の フ ァ イ ル 転 送 時 間 が1時 5)ART-IMは80286ま た は80386のCPU 間 程 度 に な る よ う に セ ク シ ョ ンCの ,2メ フ ァイ ル を分 割 す る 。 ガ バ イ ト以 上 の プ ロ テ ク トメ モ リ,MS-DOSVsr.3.0以 環 境 で 作動 す る 。 6)ART-IMの 動 作 環 境 を 定 義 す る た め のMS-DOSのCONFIG .SYSお よ びAUTOEXEC.BATに 上,の つ い て は付 録 1を 参 照 さ れ た い 。 7)こ の 変 換 に はNEC製 ス ー パ ー コ ン ピ ュ ー タSX-1EAを 使 用 した。 8)日 本 電 気 株 式 会 社 ,「ATSS-AFコ マ ン ド説 明 書 非 メ ニ ュ ー 編 」,p.220(1989) 9)セ ク シ ョ ン 分 割,ア ン パ ッ ク 変 換,レ コ ー ド分 割,フ ァ イ ル 分 割 の プ ロ グ ラ ム リ ス ト を付 録2に 一32一 示 す。 SOfTWARE HARD冊ARE SCSIID:O icu社 匝]⇔ SCSIID:1 /1「 \丶 _ノ OSUS-DOSVER.3.36 製 IF-2750 HARDDISK SCSI1/F 130VBYTE 〃 /τ 1NTO 一 丶 曳_ノ 【 璽 コ⇔ ノ icu社 製 置30鵠BYTE KNOWLEDGE SRC-13韮 300x2 〃 (BASE) 置C凹 丶 ノ uo HARDDISK WORK H SCSI_ID:7 SCSIID:2 〆1一 戛 () 丶 BBYTE SOURCEDATA 曳 社 製 ノ tcu社 SRC-13且 製 uo-7616 尹C-9801ES 図2-1知 ま た,以 識 ベ ー ス構 築環 境 の シス テ ム 構成 後 の デ ー タ 操 作 の し や す さ を 考 慮 し て,可 変 レ コ ー ド長,可 形 式 を 固 定 長 に 変 更 す る こ と と し た 。 分 割 さ れ た セ ク シ ョ ンCの へ の デ ー タ 転 送 後 に 再 び 結 合 す る こ と と し た 。 表2=1は Bお よ び セ ク シ ョ ンCの 表2に 変 ブ ロ ック長 の レコ ー ド 各 フ ァイ ル はパ ソ コ ンシ ス テ ム 上 記 手 続 に 従 っ て 変 換 した セ ク シ ョ ン フ ァイ ル形 式 を示 した もので あ る。 示 し た フ ァ イ ル の う ち,EXBお よ びEXCMODDIV1か らEXCMODDIV23ま の フ ァイ ル をパ ソ コ ン シス テ ムへ 転 送 す る こ と と な る。 表2一 圏1デ ー タ変 換 後 の フ ァ イル形 式 フ ァイ ル名 EX -B レ コ ー ド長 セ ク シ ョ ン セ ク シ ョ ンB ブ ロ ック長 フ ァイ ル 容 量 180BYTE 9000BYTE 4315RECORDS 1600BYTE 14400BYTE 45457RECORDS 2900BYTE 14500BYTE 45457RECORDS 256BYTE 12800BYTE 545484RECORDS 256BYTE 12800BYTE (セ ク シ ョ ン 分 割 後) EX _C セ ク シ ョ ンC (セ ク シaン 分 割 後) セ ク シ3ンC EXCMOD 甲 (ア ン パ ッ ク 変 換 後) EX_CMOD _DIV セ ク シ ョ ンC (レ コ ー ド 分 割 後) EX_CMOD:DIV _nn nn:1^-23 セ ク シ ョ ンC (フ ァ イ ル 分 割 後) 一33一 24000RECORDS (23FILES) で 2.3パ ソ コ ンシ ス テ ムへ の デ ー タ転送 パ ソ コ ン シ ス テ ム へ の デ ー タ 転 送 お よ び 転 送 後 の デ ー タ処 理 は 以 下 の と お りで あ る 。 (1)SX-1EAか ら パ ソ コ ン(NECPC-9801UX)に 接 続 さ れ て い る光 磁 気 デ ィ ス ク10)へ の 前 述 の セ ク シ ョ ンBお よ び 分 割 し た セ ク シ ョ ンCの フ ァ イ ル(EX_Bお よ びEXCMODDIVn)を フ ァ イ ル転 送 す る。 (2)そ の 光 磁 気 デ ィ ス ク を 図2-1に 示 した 知 識 ベ ー ス 構 築 環 境 に接 続 し て か ら,分 シ ョ ンCの23個 の セ ク シ ョ ンCに の 各 フ ァ イ ル を1つ (3)光磁 気 デ ィ ス ク 上 の セ ク シ ョ ンCの な お,パ 割 され た セ ク フ ァ イ ル と して 結 合 す る 。 フ ァイル を国 別 の フ ァイ ル に分 割 す る。 ソ コ ン 側 の 端 末 エ ミ ュ レ ー タ に はETOS52GB(NEC製)を 用 い た 。 図2-2は フ ァ イ ル転 送 に使 用 した シ ス テ ムの 概 略 図 で あ る。 フ ァ イ ル 転 送:フ FILTRANCE11)で ァ イ ル 転 送 はSXOS(SX-1EAの オ ペ レ ー テ ィ ン グ シ ス テ ム)の 行 っ た 。 フ ァ イ ル 転 送 に 要 し た 時 間 は,EX_Bが (n:1∼23)の 各 フ ァ イ ル に つ い て は 約1時 間(合 約10分,EXCMODDIVn 計 約23時 間)で あ った 。 光 磁 気 デ ィ ス ク に 転 送 さ れ た 各 フ ァ イ ル の 構 造 は レ コ ー ドの デ リ ミ ッ タ(区 てCRLF(コ ー ド:ODh,OAh)の2バ コ マ ン ド, 切 りコ ー ド)と イ トが 付 加 さ れ る こ と を 除 き,SX-1EA上 し の フ ァイ ル と同 様 で あ る。 セ ク シ ョ ンCの 再 構 成:フ ァ イ ル 転 送 後,光 磁 気 デ ィ ス ク を 図2-1に 示 した知 識 ベ ース 構 築 環 ossxos OSMS-DOSVER.3.3B E T O S 5 2 c B CPU(80286) CPIl SX-lEA pc-ssoiux 図2-2フ ァ イル 転 送 の シ ステ ム構 成 10)端 末 と し て 使 用 し た パ ソ コ ン はNECのLANシ SCSII/Fの 11)SX-1EA上 割 込 はINT1,2ま の フ ァ イ ルEXBを EXB/FYO3TOTERMOUTPUTMSDOSと お,パ た は5を ス テ ム(B4670H)(割 込:INTO)に 接 続 さ れ て い る た め, 用 い る。 パ ソ コ ン 上 の フ ァ イ ルEX _Bに 転 送 す る 場 合 の コ マ ン ド は,FILTEX_B な る 。 こ こ でFYO3は,MS-bOSに ソ コ ン 側 に は あ ら か じ め フ ァ イ ル 名EX_Bで お け るDド ラ イブ を指 す 。 な フ ァ イ ル を 作 成 して お か な け れ ば な ら な い 。 一34一 境 に戻 し て 接 続 し,分 割 し て 転 送 さ れ たEXCMODDIV1か ァ イ ル を 光 磁 気 デ ィ ス ク 上 に 結 合 し た12)。 そ の 際,結 し,1レ コ ー ドを2825バ よ び129734278バ よ び 結 合 し た セ ク シ ョ ンCの のEXSTATの ソ ー ス デ ー タ に は含 まれ て い な フ ァ イ ル ボ リ ュ ー ム は そ れ ぞ れ677455バ イ トお イ トで あ る 。 国 別 フ ァ イ ル へ の 分 割:光 の 都 合 上,国 での フ イ トと し た 。 こ の48バ イ トは 大 型 汎 用 機 上 で の ア ンパ ッ ク 変 換 の 際 に レ コ ー ド長 の 調 整 の た め に 付 加 し た ス ペ ー ス で ,元 い 。 セ ク シ ョ ンBお らEXCMODDIV23ま 合 後 の 各 レ コ ー ドの 最 後 の48バ イ トを 削 除 磁 気 デ ィ ス ク 上 の セ ク シ ョ ンCの 別 の フ ァ イ ル(25力 国)に 分 割 し13),光 フ ァ イ ル は ハ ー ドデ ィ ス クへ の 格 納 磁 気 デ ィ ス ク よ り も ア ク セ ス ス ピ ー ドの 速 い ハ ー ドデ ィ ス ク に 移 し た 。 2.4ART-IMへ の機 能追 加 知 識 ベ ー ス は 基 本 的 に は メ イ ン メ モ リ 上 に 展 開 さ れ る 。 し か しEXSTAT等 の デ ー タ 量 が 大 き い た め(セ ク シ ョ ンCだ け で も130メ ガ バ イ ト) ,そ (deffactssection-c-item (item‐adC1(1.7)char) (item-adC2(88)char) (item-adC3(161)-char) (ite湿 一adC4(171)char) (item-adC5(181)char) ● ● ● ● ○ ● ● ● ● (item-adCE8(283011)val) (itee-adCE9(284111)val)) (deffactsseciton-c-record (rec-nunAAAADEX19721) (rec-numAAAADEX1973.2) (rec-nunAAAADEX19743) (rec-nunAAAADEX19754) ・ ・ ・ ・ ・ … (rec-nunCHAEADGEV19841) (rec-numCHAEADGEV19852) (rec-nunCHAEADGEV1986.3) (rec-numPRAFB_EEV19854) Crec-nunPRAFB_EEV19865) (rec-nunPRAFB_EEY19876)) 図2-3ア ドレス 情 報 を記述 した フ ァ ク ト 12)セク シ ョ ンCの 結 合 用 の プ ログ ラ ム リス トを付 録3に 示 す 。 13)国別 フ ァイ ル分 割 の ため の プ ログ ラ ム リス トを付 録4に 示 す 一35一 。 の財 務 デ ー タ はそ の すべ て を メ イ ンメ・ モ リ上 に 置 く こ と は 不 可 能 で あ る 。 そ こ で,推 論 の 過 程 で 必 要 と な る 財 務 デ ー タ を部 分 的 に ハ ー ドデ ィ ス ク か ら メ イ ン メ モ リ上 の 知 識 ベ ー ス に 読 み 込 む と い う使 用 形 態 が 考 え ら れ る 。 こ の 場 合,ハ ドデ ィ ス ク 上 の 財 務 デ ー タ を 読 み 込 む 入 力 機 能 をART-IMの も 可 能 で あ る が,国 90446114バ ド,レ 命 令 で は フ ァイ ル ア ク 務 デ ー タ を ラ ン ダ ム ア ク セ ス で き る 入 力 関 数(関 語 で 記 述 し14),ART-IMに コ ー ド番 号,先 フ ァイルボ リューム は ー ケ ン シ ャ ル な 入 出 力 を 基 本 と す るART-IMの セ ス に 時 間 が か か りす ぎ る 。 そ こ で,財 refer)をC言 入 出 力 命 令 を用 い て 実 現 す る こ と 別 フ ァ イ ル に 分 割 し て も 英 国 の セ ク シ ョ ンCの イ トあ り,シ 組 み 込 む こ と と す る 。 こ の 関 数 の 仕 様 は,登 頭 位 置 お よ び 項 目 の 大 き さ を 引 数 と して 渡 す と,該 も の で あ る 。 プ ロ グ ラ ム リ ス トは 付 録5に 示 す 。ART-IMへ ー 当す る会 計 数 値 を返 す の 関 数 の組 み 込 み手 順 は intheDOSEnvironment」(Inferencecorp.),Capter7,Capter8を 数 名: 録 国 コー 「ART-IM 参 照 さ れ た い 。 な お,入 力 しよ う と す る 年 度 の デ ー タ の レ コ ー ド位 置 と入 力 財 務 項 目 の 先 頭 位 置 お よ び そ の 大 き さ に 関 す る ア ド レ ス 情 報 はART-IMの 登録 コー ド 性)で 年度 フ ァ ク ト を 使 っ て 記 述 し た 。 フ ァ ク ト の 内 容 は(rec-num会 レ コ ー ド番 号)お あ る 。 こ こ で,項 よ び(item-ad項 目 名(先 頭位置 社 コー ド 項 目の 大 き さ)項 目 属 性 に は そ の 項 目が 数 値 で あ れ ばvalを,文 字 で あ れ ばcharを 目属 設定 す る こ と と した 。 図2-3は ア ド レ ス 情 報 を 記 述 した フ ァ ク トの 一 部 を 示 した も の で あ る 。 ま た,ア ドレ ス情 報 を知 識 ベ ー ス か ら得 て ハ ー ドデ ィ ス ク 上 の フ ァ イ ル か ら 会 計 数 値 を 読 み 込 む 手 順 はART-IMの ル ー ル で 記 述 す る こ と と し た 。 フ ァ イ ル の ア ド レ ス 情 報 をART-IMの に よ っ て,今 後 ハ ー ドデ ィ ス ク 上 の デ ー タ ベ ー ス の 種 類,フ 知 識 ベ ー ス上 に持 つ こ と ァイ ルボ リ ュー ム お よび フ ァイ ル格 納 場 所 の 変 更 に 柔 軟 に 対 応 す る こ とが で き る 。 図2-4は 会 社 コ ー ドがAAAADの1975年 読 み 込 み,知 の 売 上 高 を ハ ー ドデ ィ ス ク 上 の 財 務 フ ァ イ ル か ら 識 ベ ー ス 上 に ア サ ー トす るART-IMの ル ー ル の 例 を示 し た もの で あ る 。 (def-user-funrefer :epname"referl" :args((code:string) (rec:integer) (start:integer) (lens:integer)) :returns:float) (defruleget-financial-value (item-adC31(?start?length)val) _〉 (rec-numAAAAD?ctry-code1975?rec)) (bind?dt(refer?ctry-node?rec?start:?length.)) (assert(financial-valueAAAAD1975C31?dt))) 図2-4会 14)関 数referの プ ロ グ ラ ム リ ス ト を 付 録5に 計 数 値 入 力 ル ー ル例 示す。 一36一 お わ りに 本 稿 で は,大 型 汎 用 機 上 のEXSTAT財 務 デ ー タ をパ ソ コ ンの知 識 ベ ー ス構 築 環 境 に移 行 す る 際 の 手 続 につ い て述 べ た。 今 後,こ の財 務 デ ー タ を基 に知 識 ベ ース シス テ ム に お け る財 務 デ ー タ の表 現 形 式 に つ い て考 え てみ た い 。 そ の場 合,国 際 財 務 デ ー タ を扱 う際 の各 国 の会 計 制 度 の 違 い お よび財 務 デ ー タの収 録 フ ォーマ ッ トの違 い を どの よ うに知 識 ベ ー ス上 に表 現 す るか が1つ の 問 題 とな る で あ ろ う。 ま た,メ イ ンメ モ リ上 の知 識 ベ ー ス と外 部 記1意装 置 上 の デ ー タベ ース との リ ン クの仕 方 も今 後 の課 題 と して残 って い る。 な お,本 稿 に お け る研 究 を進 め る に あ た り,青 山学 院 大 学 経 営 学 部 STAT財 大 矢 知 司 教 授 に はEX- 務 デ ー タ を使 用 させ て い た だ き,ま た,大 型 汎 用機 か らの デ ー タ転 送 に は同大 学 情 報 科 学研 究 セ ンタ ー の計 算機 を使 用 させ て い た だい た 。 こ こ に記 して謝 意 を表 す る。 一37一 付 録1 (autoexec.bat] path a:VmscVrbin;a:Vmsabin;a:Ybin;a:Ybat;a:Vbinb;a:Ybinr;a:Yjart15Ybin; prompt $13$g set lib=a:Yjart15Y1ib;a:VmscVlib; set include=a:VmscYinclude;a:Yjart15Yinc set init=a:VsourceVmeYini;%INIT% set emacs=a:Yjart15Yemacs set art=a:Yjart15Yjart set tmp=a:Vtmp set dos16m=1 @ 1024 : 12288 (config.sys] buffers=10 files=15 shell=a:YbinYcommand.com device=a:YbinYprint.sys device=a:YbinYmouse.sys device=a:YmodrvYmodrv55.sys a:Ybin /P /d2 /E:512 /b4 .ノ 38 / 付 録2-1(セ 、 ク シ ョ ン 分 割) INTEGER NOR,HL,PTR.BLKLEN.CL.BL,DH CHARACTER REC*32000.BYTE.BLK*4 NOR=0 HL=80 BL=159 CL=1589 DH=39 5 READ(10.1000,END=7) BLK PTR=0 NN=ICHAR(BLK(1:1))/16 MM=ICHAR(BLK(1:1))-16*NN 00=ICHAR(BLK(2:2))/16 PP=ICHAR(BLK(2:2))-16*00 BLKLEN=NN*16*16*16+MM*16*16+00*16+PP-4 CALL REREAD READ(10,1005,END=7) BLK,(REC(I:I),I=1,BLKLEN) 6 IF (REC(PTR+21:PTR+21).EQ.'H') THEN PTR=PTR+HL IF (PTR.GE.BLKLEN) GO TO 5 ELSE IF (REC(PTR+21:PTR+21).EQ.'B') THEN WRITE(11.1010) REC(PTR+1:PTR+BL) PTR=PTR+BL ELSE IF (REC(PTR+21:PTR+21).EQ.'C') THEN. WRITE(12.1020) (REC(PTR+1+(I-1)*255:PTR+255*I).1=1.6). REC(PTR+CL-59+1:PTR+CL) PTR=PTR+CL IF (PTR.GE.BLKLEN) GO TO 5 ELSE IF (REC(PTR+21:PTR+21).EQ.'D') THEN WRITE(13.1030) REC(PTR+1:PTR+DH) NOD=O BYTE=REC(PTR+38:PTR+38) NL=ICHAR(BYTE)/16 NR=ICHAR(BYTE)-16*NL NOD=NL*100 NOD=N0D+NR*10 BYTE=REC(PTR+39:PTR+39) NL=ICHAR(BYTE)/16 NOD=NOD+NL PTR=PTR+DH IF (PTR.GE.BLKLEN) GO TO 5 DO 10 I=1,NOD WRITE(13.1040) REC(PTR+1:PTR+103) 10 PTR=PTR+103 IF (PTR.GE.BLKLEN) GO TO 5 ELSE IF (REC(PTR+21:PTR+21).EQ.'T') THEN GO TO 7 ENDIF IF (PTR.GE.BLKLEN) THEN GO TO 5 ELSE GO TO 6 ENDIF 7 STOP 1000 FORMAT(A4) 1005 FORMAT(A4,128(255A1)) 1010 FORMAT(A159) 1020 FORMAT(6A255.A59) 1030 FORMAT(A39) 1040 FORMAT(A103) END 一39一 付 録2-2(ア ン パ ッ ク変 換) IDENTIFICATION DIVISION. PROGRAM-ID. RDCMOD. ENVIRONMENT DIVISION. CONFIGURATION SECTION. SOURCE-COMPUTER. ACOS. OBJECT-COMPUTER. ACOS. INPUT-OUTPUT SECTION. FILE -CONTROL. SELECT INPF ASSIGN TO IFILE. SELECT OUTF ASSIGN TO OFILE. DATA DIVISION. FILE SECTION. FD INPF LABEL RECORD STANDARD. 01 REC. 02 FILLER PIC X(4). 02 SECTION-C. 03 Cl PIC X(7). 03 C2 PIC X(8). 03 C3 PIC X(1). 03 C4 PIC X(1). 03 C5 PIC X(1). 03 C6 PIC X(1). 03 C7 PIC X(8). 03 C8 PIC X(3). 03 C9 PIC X(1). 03 C10 PIC X(3). 03 03 C12 C11 PIC 9(4)V9(5) 9(1) COMP-3. COMP 03 03 03 03 03 03 03 03 03 03 03 03 03 03 03 03 03 03 03 03 03 03 03 03 C13 C14 C15 C16 C17 C18 C19 C20 C21 C22 C23 C24 C25 C26 C27 C28 C29 C30 C31 C32 C33 C34 C35 C36 C37 PIC PIC PIC PIC PIC PIC PIC PIC PIC PIC PIC PIC PIC PIC PIC PIC PIC PIC PIC PIC PIC PIC PIC PIC X(1), S9(11) S9(11) S9(11) S9(11) S9(11) S9(11) S9(11) S9(11) S9(11) S9(11) S9(11) X(1). X(1). X(1). X(1). X(1). X(1), S9(13) S9(11) S9(11) S9(11) S9(11) S9(2)V9(3) S9(11) 03 03 03 03 03 03 C38 C39 C40 C41 C42 C43 C44 PIC PIC PIC PIC PIC PIC S9(11) S9(11) S9(11) S9(11) S9(11) S9(11) 03 03 03 03 03 03 03 03 03 03 03 03 03 03 03 03 03 03 03 03 03 03 03 03 C45 C46 C47 C48 C49 C501 C502 C503 C50 C51 C52 C53 C54 C55 C56 C57 C58 C59 C60 C61 C62 C63 C64 C65 C66 PIC PIC PIC PIC PIC PIC PIC PIC PIC PIC PIC PIC PIC PIC PIC PIC PIC PIC PIC PIC PIC PIC PIC PIC S9(11) S9(11) S9(11) S9(11) S9(11) S9(11) S9(11) S9(11) S9(11) S9(11) S9(11) S9(11) S9(11) S9(11) S9(11) S9(11) S9(11) S9(11) S9(11) S9(11) S9(11) S9(11) S9(11) S9(11) 03 C67 C68 PIC S9(11) 03 03 03 03 03 03 03 03 03 03 03 03 03 03 03 C69 C70 C71 C72 C73 C74 C75 C76 C77 C78 C79 C80 C81 C82 C83 PIC PIC PIC PIC PIC PIC PIC PIC PIC PIC PIC PIC PIC PIC PIC S9(11) S9(11) S9(11) S9(11) S9(11) S9(11) S9(11) S9(11) X(1). X(1). X(1). X(1). X(1). X(1), S9(11) -3 . COMP-3. COMP-3. COMP-3. COMP-3. COMP-3. COMP-3. COMP-3. COMP-3. COMP-3. COMP-3. COMP-3. COMP-3. COMP-3. COMP-3. COMP-3. COMP-3. COMP COMP-3. -3 . COMP-3. COMP-3. COMP-3. COMP-3. COMP-3. COMP-3. COMP -3 . COMP-3. COMP-3. COMP-3. COMP-3. COMP-3. COMP-3. COMP-3. COMP-3. COMP-3. COMP-3. COMP-3. COMP-3. COMP-3. COMP-3. COMP-3. COMP-3. COMP-3. COMP-3. COMP-3. COMP-3. COMP-3. COMP-3. COMP-3. COMP-3. COMP -3 . COMP-3.-3 COMP . COMP-3. COMP-3. COMP-3. COMP-3. COMP-3. COMP-3. COMP-3. COMP-3. 一40一 COMP-3. 03 03 03 03 C84 C85 C86 C87 PIC PIC PIC PIC S9(11) S9(11) S9(11) S9(11) 03 03 03 03 C89 C90 C91 C92 PIC PIC PIC PIC S9(11) S9(11) S9(11) S9(11) 03 03 03 03 03 03 03 03 03 03 03 03 03 03 03 03 03 03 03 03 03 03 C94 C95 C96 C97 C98 C99 C100 C101 C102 C103 C104 C105 C106 C107 C108 C109 C110 C111 C112 C113 C114 C115 PIC PIC PIC PIC PIC PIC PIC PIC PIC PIC PIC PIC PIC PIC PIC PIC PIC PIC PIC PIC PIC PIC S9(11) S9(11) S9(11) S9(11) S9(11) S9(11) S9(11) S9(11) S9(11) S9(11) S9(11) S9(11) S9(11) S9(11) S9(11) S9(11) S9(11) S9(11) S9(11) S9(11) S9(11) S9(13) 03 03 03 03 C117 C118 C119 C120 PIC PIC PIC PIC 03 03 03 03 03 03 03 C123 C124 C125 C126 C127 C128 C129 PIC PIC PIC PIC PIC PIC PIC 03 03 03 03 C131 C132 C133 C134 PIC PIC PIC PIC 03 03 03 03 03 03 03 C136 C137 C138 C139 C140 C141 C142 PIC PIC PIC PIC PIC PIC PIC 03 03 03 03 03 C144 C145 C146 C147 C148 PIC PIC PIC PIC PIC 03 03 03 03 03 03 03 03 03 03 03 03 03 03 03 03 03 03 03 03 03 03 03 03 03 03 03 03 03 03 03 03 03 03 03 03 03 03 C150 C151 C152 C153 C154 C155 C156 C157 C158 C159 C160 C161 C162 C163 C164 CA1 CA2 CA3 CA4 CB1 CB2 CB3 CB4 CB5 CB6 CB7 CB8 CB9 CC1 CC2 CC3 CC4 CC5 CC6 CC7 CC8 CC9 CC10 PIC PIC PIC PIC PIC PIC PIC PIC PIC PIC PIC PIC PIC PIC PIC PIC PIC PIC PIC PIC PIC PIC PIC PIC PIC PIC PIC PIC PIC PIC PIC PIC PIC PIC PIC PIC PIC PIC COMP-3. COMP-3. COMP-3. COMP-3. C88 -303PIC S9(11) COMP . COMP-3. COMP-3. COMP-3. COMP-3. C93 -303PIC S9(11) COMP . COMP-3. COMP-3. COMP-3. COMP-3. COMP-3. COMP-3. COMP-3. COMP-3. COMP-3. COMP-3. COMP-3. COMP-3. COMP-3. COMP-3. COMP-3. COMP-3. COMP-3. COMP-3. COMP-3. COMP-3. COMP-3. COMP-3. C116 03 PIC X(1) . X(1). X(1). X(1). X(1).C121 03 PIC X(1) , 03 C122 PIC S9(11) -3 COMP . S9(11) COMP-3. S9(11) COMP-3. S9(11) COMP-3. S9(11) COMP-3. S9(11) COMP-3. S9(11) COMP-3. S9(11) COMP-3. C130-3PIC 03 S9(11) COMP . S9(11) COMP-3. S9(11) COMP-3. S9(11) COMP-3. S9(11) COMP-3. C135-3PIC 03 S9(11) COMP . S9(11) COMP-3. S9(11) COMP-3. S9(11) COMP-3. S9(11) COMP-3. S9(11) COMP-3. S9(11) COMP-3. S9(11) COMP-3. C143-303 PIC S9(11) COMP . S9(11) COMP-3. S9(11) COMP-3. S9(11) COMP-3. S9(11) COMP-3. S9(11) COMP-3. C149-303 PIC S9(11) COMP . S9(11) COMP-3. S9(11) COMP-3. S9(11) COMP-3. S9(11) COMP-3. S9(11) COMP-3. S9(11) COMP-3. S9(11) COMP-3. S9(11) COMP-3. S9(13) COMP-3. X(1). X(1). X(1). X(1). X(1). X(1). X(1), S9(13) COMP-3. S9(13) COMP-3. S9(13) COMP-3. X(1), S9(11) COMP-3. S9(11) COMP-3. S9(11) COMP-3. S9(11) COMP-3. S9(11) COMP-3. S9(11) COMP-3. S9(11) COMP-3. S9(11) COMP-3. X(1), S9(11) COMP-3. S9(11) COMP-3. S9(11) COMP-3. S9(11) COMP-3. S9(11) COMP-3. S9(11) COMP-3. S9(11) COMP-3. S9(11) COMP-3. S9(11) COMP-3. 03 03 03 03 03 03 03 03 03 CC11 CC12 CC13 CC14 CC15 CC16 CC17 CC18 CC19 PIC PIC PIC PIC PIC .PIC PIC PIC PIC S9(11) S9(11) S9(11) S9(11) S9(11) S9(11) S9(11) S9(11) S9(11) 03 03 03 03 03 03 03 03 03 03 3 03 03 03 03 03 03 03 03 03 03 CC21 CC22 CC23 CC24 CC25 CC26 CC27 CC28 CC29 CC30 CC31 CC32 CC33 CC34 CC35 CC36 CD1 CD2 CD3 CD4 CD5 PIC PIC PIC PIC PIC PIC PIC PIC PIC PIC PIC PIC PIC PIC PIC PIC PIC PIC PIC PIC PIC S9(11) S9(11) S9(11) S9(11) S9(11) S9(11) S9(11) S9(11) S9(11) S9(11) S9(11) S9(11) S9(11) S9(11) S9(11) S9(11) X(1). S9(11) S9(11) S9(11) S9(11) 03 03 03 03 03 03 03 03 03 03 03 03 03 03 03 03 03 03 03 03 03 03 03 03 03 03 03 03 CD7 CD8 CD9 CD10 CD11 CD12 CD13 CD14 CD15 CD16 CD17 CD18 CD19 CD20 CD21 CD22 CD23 CD24 CD25 CD26 CD27 CD28 CD29 CD30 CD31 CD32 CD33 CD34 03 03 03 03 03 03 03 03 03 CD36 CD37 CD38 CD39 CD40 CD41 CD42 CD43 CD44 PIC PIC PIC PIC PIC PIC PIC PIC PIC PIC PIC PIC PIC PIC PIC PIC PIC PIC PIC PIC PIC PIC PIC PIC PIC PIC PIC PIC PIC PIC PIC PIC PIC PIC PIC PIC PIC PIC S9(11) S9(11) S9(11) S9(11) S9(11) S9(11) 59(11) S9(11) S9(11) S9(11) S9(11) S9(11) S9(11) S9(11) 59(11) S9(11) S9(11) S9(11) S9(11) S9(11) S9(11) S9(11) S9(11) S9(11) S9(11) S9(11) S9(11) S9(11) S9(11) S9(11) S9(11) S9(11) S9(11) S9(11) 59(11) S9(11) S9(11) S9(11) 03 03 03 03 03 03 03 03 03 03 03 03 CD46 CD47 CD48 CD49 CD50 CD51 CD52 CD53 CD54 CD55 CD56 CD57 PIC PIC PIC PIC PIC PIC PIC PIC PIC PIC PIC PIC 59(11) 59(11) 59(11) S9(11) 59(11) S9(11) S9(11) S9(11) S9(11) S9(11) S9(11) 59(11) 03 CD59 PIC S9(11) 03 03 03 03 03 CD61 CD62 CD63 CD64 CD65 PIC PIC PIC PIC PIC S9(11) S9(11) S9(11) 59(11) S9(11) 03 03 03 03 03 03 03 03 03 03 03 03 CD67 CD68 CD69 CE1 CE2 CE3 CE4 CE5 CE6 CE7 CE8 CE9 PIC PIC PIC PIC PIC PIC PIC PIC PIC PIC PIC PIC S9(11) S9(11) S9(11) X(1). 59(11) 59(11) S9(11) 59(11) 59(11) 59(11) 59(11) 59(11) . COMP-3. COMP-3. COMP-3. COMP-3. COMP-3. COMP-3. COMP-3. COMP-3. COMP-3. CC20 03S9(11) COMP -3PIC . COMP-3. COMP-3. COMP-3. COMP-3. COMP-3. COMP-3. COMP-3. COMP-3. COMP-3. COMP-3. 0 COMP-3. COMP-3. COMP-3. COMP-3. COMP-3. COMP-3. COMP-3. COMP-3. COMP-3. COMP-3. CD6-3 03 PICS9(11) COMP . COMP-3. COMP-3. COMP-3. COMP-3. COMP-3. COMP-3. COMP-3. COMP-3. COMP-3. COMP-3. COMP-3. COMP-3. COMP-3. COMP-3. COMP-3. COMP-3. COMP-3. COMP-3. COMP-3. COMP-3. COMP-3. COMP-3. COMP-3. COMP-3. COMP-3. COMP-3. COMP-3. COMP-3. CD35 03 COMP-3. COMP-3. COMP-3. COMP-3. COMP-3. COMP-3. COMP-3. COMP-3. COMP-3. COMP-3. CD45 03S9(11) COMP -3PIC . COMP-3. COMP-3. COMP-3. COMP-3. COMP-3. COMP-3. COMP-3. COMP-3. COMP-3. COMP-3. COMP-3. COMP-3. CD58 03S9(11) COMP -3PIC . COMP-3., CD60 PIC 03 S9(11) COMP -3 . COMP-3. COMP-3. COMP-3. COMP-3. COMP-3. CD66 03S9(11) COMP -3PIC . COMP-3. COMP-3. COMP-3. COMP-3. COMP-3. COMP-3. COMP-3. COMP-3. COMP-3. COMP-3. COMP-3. 一41一 03 DUMMY PIC X(11) . FD OUTF LABEL RECORD STANDARD. 01 L-C1. 02 Cl PIC X(7). 02 C2 PIC X(8). 02 C3 PIC X(1). 02 C4 PIC X(1). 02 C5 PIC X(1). 02 C6 PIC X(1). 02 C7 PIC X(8). 02 C8 PIC X(3). 02 C9 PIC X(1). 02 C11 C10 PIC 9(1) X(3). . 02 C12 PIC 9(9). 02 C13 PIC X(1). 02 C14 PIC 9(11). 02 C15 PIC 9(11). 02 C16 PIC 9(11). 02 C17 PIC 9(11). 02 C18 PIC 9(11). 02 C19 PIC 9(11). 02 C20 PIC 9(11). 02 C21 PIC 9(11). 02 C22 PIC 9(11). 02 C23 PIC 9(11). 02 C24 PIC 9(11). 02 C25 PIC X(1). 02 C26 PIC X(1). 02 C27 PIC X(1). 02 C28 PIC X(1). 02 C29 PIC X(1). 02 C30 PIC X(1). 02 C31 PIC 9(13). 02 C32 PIC 9(11). 02 C33 PIC 9(11). 02 C34 PIC 9(11). 02 C35 PIC 9(11). 02 C36 PIC 9(5). 02 C37 PIC 9(11). 02 C38 PIC 9(11). 02 C39 PIC 9(11). 02 C40 PIC 9(11). 02 C41 PIC 9(11). 02 C4,2 PIC 9(11). 02 C43 PIC 9(11). 02 C44 PIC 9(11). 02 C45 PIC 9(11). 02 C46 PIC 9(11). 02 C47 PIC 9(11). 02 C49 C48 PIC 9(11) 9(11). . 02 C502 C501 PIC 9(11) 9(11). . 02 C503 PIC 9(11). 02 C50 PIC 9(11). 02 C51 PIC 9(11). 02 C52 PIC 9(11). 02 C53 PIC 9(11). 02 C54 PIC 9(11). 02 C55 PIC 9(11). 02 C56 PIC 9(11). 02 C57 PIC 9(11). 02 C58, PIC 9(11). 02 C59 PIC 9(11). 02 C60 PIC 9(11). 02 C61 PIC 9(11). 02 C62 PIC 9(11). 02 C63 PIC 9(11). 02 C64 PIC 9(11). 02 C65 PIC 9(11). 02 C66 PIC 9(11). 02 C67 PIC 9(11). 02 C69 C68 PIC 9(11) 9(11). . 02 C70 PIC 9(11). 02 C71 PIC 9(11). 02 C72 PIC 9(11). 02 C73 PIC 9(11). 02 C75 C74 PIC 9(11) 9(11). . 02 C76 PIC 9(11). 02 C77 PIC X(1). 02 C78 PIC X(1). 02 C79 PIC X(1). 02 C80 PIC X(1). 02 C81 PIC X(1). 02 C82 PIC X(1). 02 C83 PIC 9(11). 02 C85 C84 PIC 9(11) 9(11). . 02 C86 PIC 9(11). 02 C87 PIC 9(11). 02 C88 PIC 9(11). 02 C89 PIC 9(11). 02 C90 PIC 9(11). 02 C91 PIC 9(11). 02 C92 PIC 9(11). 02 C94 C93 PIC 9(11) 9(11). . 02 C95 PIC 9(11). 02 C96 PIC 9(11). 02 C97 PIC 9(11). 02 C98 PIC 9(11). 02 02 02 02 02 02 C99 C100 C101 C102 C103 C104 PIC PIC PIC PIC PIC PIC 02 02 02 02 02 02 02 02 02 02 02 02 02 02 02 02 02 02 02 02 02 02 2 02 02 02 02 02 02 02 02 02 02 02 02 02 02 02 02 02 02 02 02 02 02 02 02 02 02 02 02 02 02 02 02 02 02 02 02 02 02 02 02 02 02 02 02 02 02 02 02 02 02 02 02 02 02 02 02 02 02 02 02 02 02 02 02 02 02 02 02 02 02 02 02 02 02 C106 C107 C108 C109 C110 C111 C112 C113 C114 C115 C116 C117 C118 C119 C120 C121 C122 C123 C124 C125 C126 C127 C128 C129 C130 C131 C132 C133 C134 C135 C136 C137 C138 C139 C140 C141 C142 C143 C144 C145 C146 C147 C148 C149 C150 C151 C152 C153 C154 C155 C156 C157 C158 C159 C160 C161 C162 C163 C164 CAl CA2 CA3 CA4 CB1 CB2 CB3 CB4 CB5 CB6 CB7 CB8 CB9 CC1 CC2 CC3 CC4 CC5 CC6 CC7 CC8 CC9 CC10 CC11 CC12 CC13 CC14 CC15 CC16 CC17 CC18 CC19 CC20 CC21 CC22 CC23 CC24 CC25 PIC PIC PIC PIC PIC PIC PIC PIC PIC PIC PIC PIC PIC PIC PIC PIC PIC PIC PIC PIC PIC PIC PIC PIC PIC PIC PIC PIC PIC PIC PIC PIC PIC PIC PIC PIC PIC PIC PIC PIC PIC PIC PIC PIC PIC PIC PIC PIC PIC PIC PIC PIC PIC PIC PIC PIC PIC PIC PIC PIC PIC PIC PIC PIC PIC PIC PIC PIC PIC PIC PIC PIC PIC PIC PIC PIC PIC PIC PIC PIC PIC PIC PIC PIC PIC PIC PIC PIC PIC PIC PIC PIC PIC PIC PIC PIC PIC 9(11). 9(11). 9(11). 9(11). 9(11). 9(11). C105 02 PIC 9(11) . 9(11). 9(11). 9(11). 9(11). 9(11). 9(11). 9(11). 9(11). 9(11). 9(13). X(1). X(1). X(1). X(1). X(1). X(1). 9(11). 9(11). 9(11). 9(11). 9(11). 9(11). 0 9(11). 9(11). 9(11). 9(11). 9(11). 9(11). 9(11). 9(11). 9(11). 9(11). 9(11). 9(11). 9(11). 9(11). 9(11). 9(11). 9(11). 9(11). 9(11). 9(11). 9(11). 9(11). 9(11). 9(11). 9(11). 9(11). 9(11). 9(11). 9(11). 9(11). 9(13). X(1). X(1). X(1). X(1). X(1). X(1). X(1). 9(13). 9(13). 9(13). X(1). 9(11). 9(11). 9(11). 9(11). 9(11). 9(11). 9(11). 9(11). X(1). 9(11). 9(11). 9(11). 9(11). 9(11). 9(11). 9(11). 9(11). 9(11). 9(11). 9(11). 9(11). 9(11). 9(11). 9(11). 9(11). 9(11). 9(11). 9(11). 9(11). 9(11). 9(11). 9(11). 9(11). 02 02 02 02 02 02 02 002 2 02 02 02 002 2 02 02 02 02 002 2 02 02 02 02 02 02 02 02 02 02 02 02 CC26 PIC 9(11). CC27 PIC 9(11). CC28 PIC 9(11). CC29 PIC 9(11). CC30 PIC 9(11). CC31 PIC 9(11). CC32 PIC 9(11). CC33 PIC 9(11). CC34 PIC 9(11). CC35 PIC 9(11). CC36 PIC 9(11). CD1 PIC X(1). CD2 PIC 9(11). CD3 PIC 9(11). CD4 PIC 9(11). CD5 PIC 9(11). CD6 PIC 9(11). CD7 PIC 9(11). CD8 PIC 9(11). CD9 PIC 9(11). CD10 PIC 9(11). CD11 PIC 9(11). CD12 PIC 9(11). CD13 PIC 9(11). CD14 PIC 9(11). CD15 PIC 9(11). CD16 PIC 9(11). CD17 PIC 9(11). CD18 PIC 9(11). CD19 PIC 9(11). CD20 PIC 9(11). CD21 PIC 9(11). CD22 PIC 9(11). 02 CD23 PIC 9(11). 02 CD24 PIC 9(11). 02 CD25 PIC 9(11). 02 CD26 PIC 9(11). 02 CD27 PIC 9(11). 02 CD28 PIC 9(11). 02 CD29 PIC 9(11). 02 CD30 PIC 9(11). 02 CD31 PIC 9(11). 02 CD32 PIC 9(11). 02 CD33 PIC 9(11). 02 CD34 PIC 9(11). 02 CD35 PIC 9(11). 02 CD36 PIC 9(11). 02 CD37 PIC 9(11). 02 CD38 PIC 9(11). 02 CD39 CD4 PIC 9(11). 0 PIC 9(11). 02 CD41 PIC 9(11). 02 CD42 PIC 9(11). 02 CD43 PIC 9(11). 02 CD44 PIC 9(11). 02 CD45 PIC 9(11). 02 CD46 PIC 9(11). 02 CD47 PIC 9(11). 02 CD48 PIC.9(11). 02 CD49 PIC 9(11). 02 CD50 PIC 9(11). 02 CD51 CD5 PIC 9(11). 2 PIC 9(11). 02 CD53 PIC 9(11). 02 CD54 PIC 9(11). 02 CD55 PIC 9(11). 02 CD56 PIC 9(11). 02 CD57 PIC 9(11). 02 CD58 PIC 9(11). 02 CD59 PIC 9(11). 02 CD60 PIC 9(11). 02 CD61 PIC 9(11). 02 CD62 PIC 9(11). 02 CD63 PIC 9(11). 02 CD64 PIC 9(11). 02 CD65 PIC 9(11). 02 CD66 PIC 9(11). 02 CD67 PIC 9(11). 02 CD68 PIC 9(11). 02 CD69 PIC 9(11). 02 CE1 PIC X(1). 02 CE2 PIC 9(11). 02 CE3 PIC 9(11). 002 CE4 PIC 9(11). 2 CE5 PIC 9(11). 02 CE6 PIC 9(11). 02 CE7 PIC 9(11). 02 CE8 PIC 9(11). 02 CE9 PIC 9(11), 02 FILLER PIC X(48). PROCEDURE DIVISION. KAISI, OPEN INPUT INPF. OPEN OUTPUT OUTF. P1. READ INPF AT END GO TO OW. MOVE SPACE TO L-C1. MOVE CORRESPONDING SECTION-C WRITE L-C1. GO TO Pl, OW. CLOSE INPF OUTF. STOP RUN. 一42一 TO L-C1. 付 録2-3(レ コ ー ド分 割) IDENTIFICATION DIVISION. PROGRAM-ID. CMODDIV. ENVIRONMENT DIVISION. CONFIGURATION SECTION. SOURCE-COMPUTER. ACOS. OBJECT-COMPUTER. ACOS. INPUT-OUTPUT SECTION. FILE-CONTROL. SELECT INPF ASSIGN TO IFILE. SELECT OUTF ASSIGN TO OFILE. DATA DIVISION. FILE SECTION. FD INPF LABEL RECORD STANDARD. 01 L-C1. (付 FD 01 録2-201L-C1.と OUTF LABEL OUTREC-1. 02 Cl 02 C2 02 C3 02 C4 02 C5 02 C6 02 C7 02 C8 02 C9 02 C10 02 C11 02 C12 02 C13 02 C14 02 C15 02 C16 02 C17 02 C18 02 C19 02 C20 02 C21 02 C22 02 C23 02 C24 02 C25 02 C26 02 C27 02 C28 02 C29 02 C30 02 C31 02 C32 02 C33 02 C34 02 C35 02 C36 02 C37 02 C38 01 OUTREC-2. 02 C39 02 C40 02 C41 02 C42 02 C43 02 C44 02 C45 02 C46 02 C47 02 C48 02 C49 02 C501 02 C502 02 C503 02 C50 02 C51 02 C52 02 C53 02 C54 02 C55 02 C56 02 C57 02 C58 02 FILL 01 OUTREC-3. 同 RECORD PIC PIC PIC PIC PIC PIC PIC PIC PIC PIC PIC PIC PIC PIC PIC PIC PIC PIC PIC PIC PIC PIC PIC PIC PIC PIC PIC PIC PIC PIC PIC PIC PIC PIC PIC PIC PIC PIC PIC PIC PIC PIC PIC PIC PIC PIC PIC PIC PIC PIC PIC PIC PIC PIC PIC PIC PIC PIC PIC PIC PIC PIC じ) STANDARD. X(7). X(8). X(1). X(1). X(1). X(1). X(8). X(3). X(1). X(3). 9(1). 9(9). X(1). 9(11). 9(11). 9(11). 9(11). 9(11). 9(11). 9(11). 9(11). 9(11). 9(11). 9(11). X(1). X(1). X(1). X(1). X(1). X(1). 9(13). 9(11). 9(11). 9(11). 9(11). 9(5). 9(11). 9(11). 9(11). 9(11). 9(11). 9(11). 9(11). 9(11). 9(11). 9(11). 9(11). 9(11). 9(11). 9(11). 9(11). 9(11). 9(11). 9(11). 9(11). 9(11). 9(11). 9(11). 9(11). 9(11). 9(11). X(3). 一43一 02 C59 02 C60 02 C61 02 C62 02 C63 02 C64 02 C65 02 C66 02 C67 02 C68 02 C69 02 C70 02 C71 02 C72 02 C73 02 C74 02 C75 02 C76 02 C77 02 C78 02 C79 02 C80 02 C81 02 C82 02 C83 02 C84 02 C85 02 C86 02 FILL 01 OUTREC-4. 02 C87 02 C88 02 C89 02 C90 02 C91 02 C92 02 C93 02 C94 02 C95 02 C96 02 C97 02 C98 02 C99 02 C100 02 C101 02 C102 02 C103 02 C104 02 C105 02 C106 02 C107 02 C108 02 C109 02 FILL 01 OUTREC-5. 02 C110 02 C111 02 C112 02 C113 02 C114 02 C115 02 C116 02 C117 02 C118L 02 C119 02 C120 02 C121 02 C122 02 C123 02 C124 02 C125 02 C126 02 C127 02 C128 02 C129 02 C130 02 0131 02 C132 02 C133 02 C134 02 C135 02 C136 02 C137 PIC PIC PIC PIC PIC PIC PIC PIC PIC PIC PIC PIC PIC PIC PIC PIC PIC PIC PIC PIC PIC PIC PIC PIC PIC PIC PIC PIC PIC 9(11). 9(11). 9(11). 9(11). 9(11). 9(11). 9(11). 9(11). 9(11). 9(11). 9(11). 9(11). 9(11). 9(11). 9(11). 9(11). 9(11). 9(11). X(1). X(1). X(1). X(1). X(1). X(1). 9(11). 9(11). 9(11). 9(11). X(8). PIC PIC PIC PIC PIC PIC PIC PIC PIC PIC PIC PIC PIC PIC PIC PIC PIC PIC PIC PIC PIC PIC PIC PIC 9(11). 9(11). 9(11). 9(11). 9(11). 9(11). 9(11). 9(11). 9(11). 9(11). 9(11). 9(11). 9(11). 9(11). 9(11). 9(11). 9(11). 9(11). 9(11). 9(11). 9(11). 9(11). 9(11). X(3). PIC PIC PIC PIC PIC PIC PIC PIC PIC PIC PIC PIC PIC PIC PIC PIC PIC PIC PIC PIC PIC PIC PIC PIC PIC PIC PIC PIC 9(11). 9(11). 9(11). 9(11). 9(11). 9(13). X(1). X(1). X(1). X(1). X(1). X(1). 9(11). 9(11). 9(11). 9(11). 9(11). 9(11). 9(11). -9(11). 9(11). 9(11). 9(11). 9(11). 9(11). 9(11). 9(11). 9(11). , 02 FILL 01 OUTREC-6. 02 C138 02 C139 02 C140 02 C141 02 C142 02 C143 02 C144 02 C145 02 C146 02 C147 02 C148 02 C149 02 C150 02 C151 02 C152 02 C153 02 C154 02 C155 02 C156 02 C157 02 C158 02 C159 02 C160 02 C161 02 cle?. 02 C163 02 C164 02 CA1 02 CA2 02 FILL 01 OUTREC-7. 02 CA3 02 CA4 02 CB1 02 CB2 02 CB3 02 CB4 02 CB5 02 CB6 02 CB7 02 CB8 02 CB9 02 CC1 02 CC2 02 CC3 02 CC4 02 CC5 02 CC6 02 CC7 02 CC8 02 CC9 02 CC10 02 CC11 02 CC12 02 CC13 02 FILL 01 OUTREC-8. 02 CC14 02 CC15 02 CC16 02 CC17 02 CC18 02 CC19 02 CC20 02 CC21 02 CC22 02 CC23 02 CC24 02 CC25 02 CC26 02 CC27 02 CC28 02 CC29 02 CC30 02 CC31 02 CC32 02 CC33 02 CC34 02 CC35 02 CC36 02 CD1 • PIC X(6). PIC PIC PIC PIC PIC PIC PIC PIC PIC PIC PIC PIC PIC PIC PIC PIC PIC PIC PIC PIC PIC PIC PIC PIC PIC PIC PIC PIC PIC PIC 9(11). 9(11). 9(11). 9(11). 9(11). 9(11). 9(11). 9(11). 9(11). 9(11). 9(11). 9(11). 9(11). 9(11). 9(11). 9(11). 9(11). 9(11). 9(11). 9(11). 9(13). X(1). X(1). X(1). X(1). X(1). X(1). X(1). 9(13). X(3). PIC PIC PIC PIC PIC PIC PIC PIC PIC PIC PIC PIC PIC PIC PIC PIC PIC PIC PIC PIC PIC PIC PIC PIC PIC 9(13). 9(13). X(1). 9(11). 9(11). 9(11). 9(11). 9(11). 9(11). 9(11). 9(11). X(1). 9(11). 9(11). 9(11). 9(11). 9(11). 9(11). 9(11). 9(11). 9(11). 9(11). 9(11). 9(11). X(8). PIC PIC PIC PIC PIC PIC PIC PIC PIC PIC PIC PIC PIC PIC PIC PIC PIC PIC PIC PIC PIC PIC PIC PIC 9(11). 9(11). 9(11). 9(11). 9(11). 9(11). 9(11). 9(11). 9(11). 9(11). 9(11). 9(11). 9(11). 9(11). 9(11). 9(11). 9(11). 9(11). 9(11). 9(11). 9(11). 9(11). 9(11). X(1). 02 FILL OUTREC-9. 02 CD2 02 CD3 02 CD4 02 CD5 02 CD6 02 CD7 02 CD8 02 CD9 02 CD10 02 CD11 02 CD12 02 CD13 02 CD14 02 CD15 02 CD16 02 CD17 02 CD18 02 CD19 02 CD20 02 CD21 02 CD22 02 CD23 02 CD24 02 FILL 01 OUTREC-10. 02 CD25 02 CD26 02 CD27 02 CD28 02 CD29 02 CD30 02 CD31 02 CD32 02 CD33 02 CD34 02 CD35 02 CD36 02 CD37 02 CD38 02 CD39 02 CD40 02 CD4I 02 CD42 02 CD43 02 CD44 02 CD45 02 CD46 02 CD47 02 FILL 01 OUTREC-11. 02 CD48 PIC X(2) . 01 01 一44一 02 CD49 02 CD50 02 C051 02 CD52 02 CD53 02 CD54 02 CD55 02 CD56 02 CD57 02 CD58 02 CD59 02 CD60 02 CD61 02 CD62 02 CD63 02 CD64 02 CD65 02 CD66 02 CD67 02 CD68 02 CD69 02 CE1 02 CE2 02 FILL OUTREC-12. 02 CE3 02 CE4 02 CE5 02 CE6 02 CE7 PIC 9(11). PIC 9(11). PIC 9(11) PIC 9(11) PIC 9(11) PIC 9(11). PIC 9(11). PIC 9(11). PIC 9(11) PIC 9(11) PIC 9(11) PIC 9(11) PIC 9(11) PIC 9(11) PIC 9(11) PIC 9(11). PIC 9(11). PIC 9(11). PIC 9(11). PIC 9(11). PIC 9(11). PIC 9(11). PIC 9(11). PIC X(3) . PIC PIC PIC PIC PIC PIC PIC PIC PIC PIC PIC PIC PIC PIC PIC PIC PIC PIC PIC PIC PIC PIC PIC PIC 9(11). 9(11) . 9(11). 9(11). 9(11). 9(11) . 9(11). 9(11). 9(11). 9(11). 9(11). 9(11). 9(11). 9(11). 9(11) . 9(11). 9(11). 9(11). 9(11). 9(11). 9(11). 9(11). 9(11). X(3). PIC 9(11). PIC PIC PIC PIC PIC PIC PIC PIC PIC PIC PIC PIC PIC PIC PIC PIC PIC PIC PIC PIC PIC PIC PIC PIC 9(11). 9(11). 9(11). 9(11). 9(11). 9(11). 9(11). 9(11). 9(11). 9(11). 9(11). 9(11). 9(11). 9(11) 9(11) 9(11) 9(11). 9(11) 9(11). 9(11). 9(11) X(1) . 9(11). X(2). PIC PIC PIC PIC PIC 9(11). 9(11). 9(11). 9(11). 9(11). . . . . . . . . . . . . . . . 02 CE8 PIC 9(11). 02 CE9 PIC 9(11). 02 FILLER PIC X(179). WORKING-STORAGE SECTION. PROCEDURE DIVISION. JUNBI. OPEN INPUT INPF. OPEN OUTPUT OUTF. KURIKAESI. READ INPF AT END GO TO OWARI. MOVE SPACE TO OUTREC-1. MOVE CORRESPONDING L-C1 TO OUTREC-1. WRITE OUTREC-1. MOVE SPACE TO OUTREC-2. MOVE CORRESPONDING L-C1 TO OUTREC-2. WRITE OUTREC-2. MOVE SPACE TO OUTREC-3. MOVE CORRESPONDING L-C1 TO OUTREC-3. WRITE OUTREC-3. MOVE SPACE TO OUTREC-4. MOVE CORRESPONDING L-C1 TO OUTREC-4. WRITE OUTREC-4. MOVE SPACE TO OUTREC-5. MOVE CORRESPONDING L-C1 TO OUTREC-5. WRITE OUTREC-5. MOVE SPACE TO OUTREC-6. MOVE CORRESPONDING L-C1 TO OUTREC-6. WRITE OUTREC-6. MOVE SPACE TO OUTREC-7. MOVE CORRESPONDING L-C1 TO OUTREC-7. WRITE OUTREC-7. MOVE SPACE TO OUTREC-8. MOVE CORRESPONDING L-C1 TO OUTREC-8. WRITE OUTREC-8. MOVE SPACE TO OUTREC-9. MOVE CORRESPONDING L-C1 TO OUTREC-9. WRITE OUTREC-9. MOVE SPACE TO OUTREC-10. MOVE CORRESPONDING L-C1 TO OUTREC-10. WRITE OUTREC-10. MOVE SPACE TO OUTREC-11. MOVE CORRESPONDING L-C1 TO OUTREC-11. WRITE OUTREC-11. MOVE SPACE TO OUTREC-12. MOVE CORRESPONDING L-C1 TO OUTREC-12. WRITE OUTREC-12. GO TO KURIKAESI. OWARI. CLOSE INPF OUTF. STOP RUN. 一45一 付 録2-4(フ ァ イ ル 分 割) IDENTIFICATION DIVISION. PROGRAM-ID. DIVCMOD. ENVIRONMENT DIVISION. CONFIGURATION SECTION. SOURCE-COMPUTER. ACOS. OBJECT-COMPUTER. ACOS. INPUT-OUTPUT SECTION. FILE-CONTROL. SELECT INPF ASSIGN TO IFILE. SELECT OUTF1 ASSIGN TO OFILE1. SELECT OUTF2 ASSIGN TO OFILE2. SELECT OUTF3 ASSIGN TO OFILE3. SELECT OUTF4 ASSIGN TO OFILE4. SELECT OUTF5 ASSIGN TO °FILES. SELECT OUTF6 ASSIGN TO OFILE6. DATA DIVISION. FILE SECTION. FD INPF LABEL RECORD STANDARD. 01 L-Cl. 02 CC PIC X(256). FD OUTF1 LABEL RECORD STANDARD. 01 OUTREC1 PIC X(256). FD OUTF2 LABEL RECORD STANDARD. 01 OUTREC2 PIC X(256). FD OUTF3 LABEL RECORD STANDARD. 01 OUTREC3 PIC X(256). FD OUTF4 LABEL RECORD STANDARD. 01 OUTREC4 PIC X(256). FD OUTF5 LABEL RECORD STANDARD. 01 OUTREC5 PIC X(256). FD OUTF6 LABEL RECORD STANDARD. 01 OUTREC6 PIC X(256). WORKING-STORAGE SECTION. 01 NOR PIC 9(7). 01 NOF PIC 9(7). PROCEDURE DIVISION. JUNBI. OPEN INPUT INPF. OPEN OUTPUT OUTF1 OUTF2 OUTF3 OUTF4 MOVE 0 TO NOR. MOVE 0 TO NOF. SKIP1. READ INPF AT END GO TO OWARI. ADD 1 TO NOR. IF NOR = 24000 THEN GO TO SKIP2. GO TO SKIP1. SKIP2. ADD 1 TO NOF. IF NOF = 12 THEN MOVE 0 TO NOR GO TO MOVE 0 TO NOR. GO TO SKIP1. P1. READ INPF AT END GO TO OWARI. MOVE CC TO OUTREC1. WRITE OUTREC1. ADD 1 TO NOR. IF NOR a 24000 THEN MOVE 0 TO NOR GO P2. READ INPF AT END GO TO OWARI. MOVE CC TO OUTREC2. WRITE OUTREC2. ADD 1 TO NOR. IF NOR = 24000 THEN MOVE 0 TO NOR GO P3. READ INPF AT END GO TO OWARI. MOVE CC TO OUTREC3. WRITE OUTREC3. ADD 1 TO NOR. IF NOR = 24000 THEN MOVE 0 TO NOR GO P4. READ INPF AT END GO TO OWARI. MOVE CC TO OUTREC4. WRITE OUTREC4. ADD 1 TO NOR. IF NOR = 24000 THEN MOVE 0 TO NOR GO P5. READ INPF AT END GO TO OWARI. MOVE CC TO OUTREC5. WRITE OUTREC5. ADD 1 TO NOR. IF NOR = 24000 THEN MOVE 0 TO NOR GO P6. READ INPF AT END GO TO OWARI. OUTF5 OUTF6. P1. TO P2 ELSE GO TO Pl . TO P3 ELSE GO TO P2. TO P4 ELSE GO TO P3 . TO P5 ELSE GO TO P4 . TO P6 ELSE GO P5. TO MOVE CC TO OUTREC6. WRITE OUTREC6. ADD 1 TO NOR. IF NOR = 24000 THEN NEXT SENTENCE ELSE GO TO P6. OWARI. CLOSE INPF OUTF1 OUTF2 OUTF3 OUTF4 OUTF5 OUTF6. STOP RUN. / 一47一 付 録3(セ /*256バ #include #include ク シ ョ ンCの イ レ コ ー ド結 合) ト のsectioncを2852バ イ ト に 戻 す*/ <stdlib.h> <stdio.h> main(argc,argv,envp) int argc; char *argv[],*envp[]; char dt[257]; int nod=0,i; FILE *fp; for(i=1;i<argc;i++) { if((fp=fopen(argv[i],"r"))==NULL) while(fscanf(fp,"%256cYn",dt)!=E0F) /* recl */ dt[256]=0; /* rec2 */ iscanf(fp,"%256cVn",dt);' dt[253]=0; /* rec3 */ fscanf(fp,"%256cVn",dt); dt[248]=0; /* rec4 */ fscanf(fp,"%256cYn",dt); dt[253]=0; /* rec5 */ fscanf(fp,"%256cYn",dt); dt[250]=0; /* rec6 */ fscanf(fp,"%256cYn",dt); dt(253)=0; /* rec7 */ fscanf(fp,"%256cYn",dt); dt[248]=0; /* rec8 */ fscanf(fp,"%256cYn",dt); dt[254]=0; /* rec9 */ fscanf(fp,"%256cYn";dt); dt[253]=0; /* rec10 */ fscanf(fp,"%256cYn",dt); dt[253]=0; /* recll */ fscanf(fp,'%255cYn",dt); dt[254]=0; /* rec12 */ fscanf(fp,"%256cYn",dt); dt[77]=0; fclose(fp); 一48一 exit(1); printf("%s",dt); printf("%s",dt); printf("%s",dt); printf("%s",dt); Printf("%s",dt); printf("%s",dt); printf("%s",dt); printf("%s",dt); printf("%s",dt); Printf("%s",dt); printf("%s",dt); printf("%sYn",dt); , 付 録4(セ ク シ ョ ンCの 国 別 分 割) #include #include <stdlib.h> <stdio.h> /*ex_cを 国 別 に 分 割 す る*/ main(argc,argv,envp) int argc; char *argv[],*envp[]; { FILE *fpl,*fp2; int i,nod=0; char ex_b[200],ex_c[2900],exbcode[8],exccode[8];cntry[3]; fpl=fopen("ex_bm","r"); fp2=fopen("ex_c","r"); fscanf(fpl,"%155cYn",ex_b); ex_b[155]=0; for(i=0;i<7;i++){ exbcode[i]=ex_b[i]; exbcode[7]=0; cntry[0]=ex_b[62]; cntry[1]=ex_b[63]; entry[2]=0; while((fscanf(fp2,"%2852Vn",ex_c)( ex_c[2852]=0; for(i=0;i<7;i++)( exccode[i]=ex_c[i]; while(strcmp(exbcode,exccode)!=0){ fscanf(fpl,"%155cVn",ex_b); ex_b[155]=0; for(i=0;i<7;i++)( exbcode[il=ex_b[i]; exbcode[7]=0; cntry[0]=ex_b[62]; cntry[1]=ex_b[63]; entry[2]=0; if(stremp(cntry,argv[1])==0){ printf("%sYn",ex_c); fclose(fpI); fclose(fp2); 49 付録5(財 #include #include #include 務 デ ー タ入 力関数) ".a.:Yjart15YincYart.h" <stdio.h> <stdlib.h> main() double ref_1(); a_init(); a_studio(); return(-1); double ref_1(ctrycode,recnum,sbyte,length) char ctrycode[10]; long recnum,sbyte,length; long offset; int char c_fname[20],*stpstr,ctry[3]; static char sec_dtI507; FILE *fpl; strcpy(c_fname,"c:excb_"); ctry[0]=ctrycode[0]; ctryI1l=ctrycode(1]; ctry[2)=0; strcat(c_fname,ctry); if((fpl=fopen(c_fname,"r"))==NULL){ return(-1); offset=(28521+21)*(recnum-11)tsbyte-11; if(fseek(fpl,offset,SEEK_SET)==0){ fscanf(fpl,"%50c",sec_dt); sec_dt[(int)lengtH=0; fclose(fp1); else{ fclose(fp1); return(-1); return(strtod(sec_dt,&stpstr)); 50一