工業高校におけるBASICプログラム教材の複雑さ分析の試み
7
0
0
全文
(2) 220. 但馬文昭. だてておく必要があると考えられる。また,生徒の学習の進度を知る上からも教材用プロ グラムの評価・分析が必要と考えられる1〉。 プログラムの複雑さはこのような評価・分析の一要素と考えられる。その分析方法とし て,一般によく使用されるソースコードの行数がある.また,オペレータの数に着日した Halsteadの方法2)がある。この方法を使用してPL/Ⅰ,. FORTRAN,アセンブラ等により. 記述されたプログラムを分析し,プ甲グラミング時間,理解度等と強い相関があることが 報告されている3)。このほか,プログラムの制御構造に着日したMcCabeの方法4や大規 模プログラムの評価・分析方法5)が提案されている。しかし,教材用のプログラムのよう に規模が小さく直線的な流れで分岐や繰り返しの少ないプログラムを分析する場合には制. 御構造面からの評価や大規模プログラム用の方法を用いることは適当でないと考えられる。 以上の理由から,本稿では教材プログラムの基本的分析を行うことを目的として行数お よぴBASIC文法上の予約語(機能語¢り 2.. に基づいてプログラムの頻度分布を調査した。. BASICプログラム教材の評価方法 ●. 分析の対象としたプログラムは神奈川県,千葉県においてプログラミング言語教育の最 初の段階で使用されている131編のプログラムであるo分析は教材プログラムの行数と使 用されている機能語の種類と数を調査し,それらに対するプログラムの分布状態を調べる 方法により行った。機能語はJIS7)に規定されているものに教材で使用されているもの (N88BASIC,. Ver.6.08)に規定されている)を加えてそれらを機能の点から13に分類し. た。それを表1に示す。この分類に従って教材プログラムの分布を調査した。なお,プロ グラム中の行番号と注釈文の内容は分析の対象から除外した。 3.法具と考察 (1)行数,機能語数に対するプログラムの分布 図1に行数に対するプログラム数の分布を示す。これによると10行以下または11以上 20行以下のプログラムが50編程度と最も多く,全体の約80%を占めていることがわかる。 また,. 50行以上の大きいプログラムもわずかながら存在する。機能語数に対するプログ. ラム数の分布を図2に示す。これによると,語数10以下が最も多く次いで11から20が 多い。両者を合計すると全体の75%を占めることがわかる。従って,入門向けには20行, 20語以下のプログラムによるプログラミング言語教育が主として行われていることが分 かる。. 次に,機能語の分類毎のプログラムにおける使用頻度の調査結果を図3に示す。これに よると, 5種の分類数によるプログラムが最も多く,次いで6,. 7,. 8種の聴に分類数が. 多い。これら上位4組で全体の約80%を占めている。このことから教材プログラムは5, 6程度の機能語の分類数を使用したものが多いことがわかる。 (2)プログラムの内容別分析 調査した教材プログラム集の目次に沿って,プログラムを入・出力プログラム,条件・ 反復プログラム,配列プログラム,グラフィックプログラム,総合的練習プログラムの5.
(3) 221. 工業高校におけるBASICプログラム教材の複雑さ分析の試み. 表1. 分類番号. 機能語の分類. 機能語. 分類. コマンド. RUN,. BLOAI),. LOAD,. LIST,. BSAVE,. DELETE;. RENT)A,. TER班・. SAVE,. EI)IT,滋ON,. LLIST,. HERGE・ FILES・. YIl)TtI.. 宣言・定義. DIH,. I)EF FN,. 入力. LINE. EOF,. PRINT,. 無条件分岐. GOTO,. 条件分岐. IF TtlEN ON. 1. 注釈. RE甘. 画面. CLS. グラフィック. 10. 1. FOR. 1. 2. 算術関数. 文字列操作. TO. その他. INPロT#.. GET.. PRINT. tJSING,. GOSロB. RETURN. ON. ON. DATA・. RESTORE・. FIELl),. PUT・. LPRINTロSING・. LPRINT,. GOTO. NEXT. STEP. GOSt]B. COLOR. CONSOLE. SCREEN. LOCATE. PAINT. POINT. V IE甘. ROOL. CIRCLE. DRAY. LINE. PRESET. GET@. PUT@. ABS. ANT. CINT. R”D. SGN. SIN. ASC. CflRS. tlEXS SPACES. CALL. VEND. VEIILE. YINDOY. syAP. I)SR・. GOTO. RIGBTS. 1 3. READ,. CIJOSE,. ERROR・. 反復. I)EF. SEG,. INKE¥,. INPUT,. OPEN,. 出力. DEF. STAR,. I)BL.. DEF. INPUT.. DEF. INT,. DEF. OUT. CVI. SQR. CVS. E貫P. FIX. PSET. INT. TÅy. INSTERS. 削DS. LEFTS. STRS. STRING蕃. PEE且. POKE. BEEF. VAL. 拙KIS.
(4) 222. 但馬文昭. 40. # A. qヽ. ゝ. 畏 2D. t 1-20. lCCt下. 図1. 2l・べ氾. 確■. 3l-140. 1卜・靭. 弧上. 行数に対するプログラム数の分布. 印. 4). ∼. i tト. lヽ. た 20. ]魁下.. 図2. Ⅰ卜劫・. 2ト劫 馴■. 3卜胡. 4ト抑. 地上. 機能語数に対するプログラム数の分布. 4O. 3). # i. 監lo. 宍. J. 2. 3. 4. S. 6. 7. 8. 9. m. u. 12. 13. 蜘■. 図3. 機能語の分類数に対するプログラム.数の分布. 種に分類し,使用されている機能語の出現頻度分布を調べた結果を図4から図8に示す。 図4より,入・出力プログラムにおいては注釈(分類番号8,以下番号のみ示す)による 説明が多く,次いで画面への文字表示のため,出力(4)が多い。これらに引き続いて算術 関数(ll)が多いことが分かる。 図5はプログラムのアルゴリズムを学習する際の基礎となる条件・反復プログラムの分 析結果を示している。これによると,出力(4)が特に多いが,それ以外は平均的に使用さ れていることが分かる。すなわち,条件・反復プログラムにおいては機能語が特定の分類 に偏って使用されていか-ことが分かる。図6は配列の学習用プログラムの分析結果であ る。これより,出力(4),注釈(8)が多いことが分かる。これは,配列学習プログラムはや や理解が困難な点があることに配慮したため配列の内容表示と注釈が多くなっていると推.
(5) 223. 工業高校におけるBASICプログラム教材の複雑き分析の試み. 寮される。 図7はグラフィックプログラムの結果を示している。固より,当然のことながら,グラ また算術関数(ll)が多いのは,種々の幾何学的グラ. フィック(10),画面操作(9)が多いo. フィック図形を生成するに必要であるためとみることができる。 図8に総合的演習プログラムの分析結果を示す。これより,反復(7)が最も多く次いで 出力(4)が多い。このことから総合的プログラムは反復処理を取り入れ,プログラムのア ルゴリズム学習の要素を持ったものとなっていると判断される。 図9に内容の分類別プログラム数を示す。これによると,入・出力に関係するプログラ ムが最も多く,次いで条件・反復,総合・グラフィックの順になっている。このことから 初学者を対象とするプログラム教材では,コンビュ-Lpと対話的な情報の入力・出力処理 を多く取り入れていると推測される。. 教材プログラム全体の機能語の分療毎の分布を図10に示す。これより,出力が最も多 く,次いで注釈,算術の順であることが分かる。出九注釈が多いのは教材プログラムの 場合,処理過程,結果,観明を学習者に示す必要上当然であると考えられる.算術が多い ことからエ業高校の教材プログラムには算術処理が比較的多く取り入れられていることが 分かる。 ヰ.おわりに. 平成5年度から中学校技術・家庭に情報基礎額域が設けられ,プログラミング言語とし. 150. 10. 毒8. 毒 50. 1. 図4. 2. 3. 4. 5. 7 6 刑事書. 8. 9. 10. u. 12. 図6. ]一泊. 毒: 1. 図5. 2. 3. 4. S. 6 脚サ. ?. 8. 9. 10. 11. 12. 2. 3. 4. 6. 5. 7. 8. 9. 10. 11. 12. 13. 脚. 入・出力プログラムの分類毎の機能語の出現数. ¢. 1. 13. 13. 条件・反復プログラムの分類毎の機能語の出現数. 配列プログラムめ分類毎の機能語の出現数.
(6) 224. 但馬文昭. 義朝 ○ ]. 図7. 2. 3. 4. 5. 6 桝事サ. 1. 8. 9. 10. IJ. 12. 13. グラフイツタプログラムの分類毎の機能語の出現数 150. l∝l. 蔓 5O. 随意 国際廟. ○. 霞R随. 1. 図8. 2. 3. I. 4. 8. 8 t脚. 8、. 7. 9. 10. u. l8・. ]3. 総合的練習プログラムの機能語の分類毎の機能語の出現数 《I. 守q 監3B た,D 10. '○. 入・肋. 鮒・細. 図9. gpラフイサタ. 桝 デログヲム㈱. 捷さ. 内容別プログラム数. 宅1仰. 0 1. 王. 3. 4. 8. 1. 図10. 6. 7. 8. 9. IO. JW一書. 機能語の分類ごとの分布. Jl. 12. 13.
(7) 225. 工業高校におけるBASICプログラム教材の複雑さ分析の試み. てBASIC言語が取り上げられ,課題のひとつになっている。 本研究では,このような状況に鑑み,神奈川,千葉両県の工業高校で実際に使用されて いるBASIC言語のプログラム教材131編の複雑さを教材プログラムの行数と機能語の分 類毎の分布を調べることにより分析した。その結果を要約すると,次のとおりである。 (1)教材プログラムは行数が20行以下のものが全体の80%を占めている。また,使用され ている機能語数は20以下のものが全体の75%を占めている。 (2)プログラムの内容別分析の結果,グラフィックプログラムは南面,グラフィック,算術 関数の分類に属する機能語の使用数が多く,他の内容のプログラムに比較して使用して いる機能語の分類に偏りがみられる。 (3)工業高校の教材プログラムは入・出力を主たる内容とするプログラムが多い。また,使 3分類で全. 用されている機能語数は分類の出九注釈,算術関数に属するものが多く, 体の約半分を占めいている。 謝辞 本研究を進めるにあたり,教材用BASICプログラムを提供して項いた神奈川工業高校 清水絃司教翰および千葉県工業教育研究会の皆様に深謝する。. 参考文献 :. 1)但馬文昭・星出安昭(1992). Halsteadの尺度によるBASICプログラムの評価,第35回産. 技学食全国大食講演要旨集, M.H.. 2 ) Halstead,. (1977). :. pp.89. of Software. Elements. Science,. EIsevier. North-ヨolland,. New. York.. 3). Love,T.. Fitzsimmons,A.and ACM. Computing. surveys,. T.J. (1976). 4 ) MaCabe,. :. (1978). 10,1, A. :A. and. review. evaluation. of. software. science,. pp.3-18・. Complexity. Measure,. IEEE. Trans・. Software. Eng・. SE-2,. 4,. pp.308-320.. 5)花田収税,高橋宗雄,永瀬浮夫,黒田幸明(19g2) :プログラム構造の複雑さ尺度の評価と導 出法の提案,情報処理学食論文集, 6)於療伸一・小沢慎治(1990) 学雑誌, 14,1, pp.29-41. 7) 8). :. 23, 6, pp.70ト706.. BASICプログラムテキスト分析システムの開発,日本教育工. 日本工業規格:電子計算機プログラム言語基本BASIC(JIS NEC&-. : PC-9801. BASIC. REFERENCE. MANUAL. C6207-1982). (86). N 88 BASIC. ・.
(8)
図
関連したドキュメント
「聞こえません」は 聞こえない という意味で,問題状況が否定的に述べら れる。ところが,その状況の解決への試みは,当該の表現では提示されてい ない。ドイツ語の対応表現
従って、こ こでは「嬉 しい」と「 楽しい」の 間にも差が あると考え られる。こ のような差 は語を区別 するために 決しておざ
これらの先行研究はアイデアスケッチを実施 する際の思考について着目しており,アイデア
※ 硬化時 間につ いては 使用材 料によ って異 なるの で使用 材料の 特性を 十分熟 知する こと
析の視角について付言しておくことが必要であろう︒各国の状況に対する比較法的視点からの分析は︑直ちに国際法
支払の完了していない株式についての配当はその買手にとって非課税とされるべ きである。
自然言語というのは、生得 な文法 があるということです。 生まれつき に、人 に わっている 力を って乳幼児が獲得できる言語だという え です。 語の それ自 も、 から
神はこのように隠れておられるので、神は隠 れていると言わない宗教はどれも正しくな