70 likes | 199 Views
情報処理 Ⅱ. 2007年12月3日(月) その1. 本日の内容. 90分でプログラム作成 ISBN-13 チェックデジット計算プログラム 配列・ポインタなどを活用して,何もない状態から「動くもの」をつくる 時間の余裕があれば,プログラムの修正や拡張を試みる. ISBN. ISBN (International Standard Book Number ,国際標準図書番号 ) は,世界共通で書籍を特定するための番号のこと. 2006 年までは 10 桁 (ISBN-10) 例: 4-8399-2064-8 2007 年からは 13 桁 (ISBN-13)
E N D
情報処理Ⅱ 2007年12月3日(月) その1
本日の内容 • 90分でプログラム作成 • ISBN-13チェックデジット計算プログラム • 配列・ポインタなどを活用して,何もない状態から「動くもの」をつくる • 時間の余裕があれば,プログラムの修正や拡張を試みる
ISBN • ISBN (International Standard Book Number,国際標準図書番号)は,世界共通で書籍を特定するための番号のこと. • 2006年までは10桁(ISBN-10) • 例:4-8399-2064-8 • 2007年からは13桁(ISBN-13) • 例:978-4-89471-266-9 • ISBNをキーワードにして検索エンジンにかければ,書籍情報が見つかる.
4-8399-2064-8 978-4-89471-266-9 チェックデジット • 符号の入力誤りなどを検出するために付加される数字.「チェックディジット」「検査数字」ともいう. • どうやって? • ランダムな数字を付加…顧客のID管理でよく用いられる • 他の桁から計算して付加…ISBNもこの方式 • 求めることができる? • 13桁の数字列があったときに,チェックデジットの正誤を判定できる?
ISBN-13 チェックデジット計算プログラム • 基本仕様 • コマンドライン引数をISBN-13のうち12桁分の数字とする.ただしハイフン(「-」)はつけない. • チェックデジットをつけたISBN-13のコードを出力する. • コマンドライン引数が複数あれば,それぞれに対して処理する.
仕様とは • プログラミングにおける仕様とは,完成するソフトウェアが満たすべき条件のこと. • 仕様を文書化したものを「仕様書」という. • 仕様を自分で決めるときのアドバイス • 仕様は「何を入力にとり」「どんな処理をして」「何を出力するか」で決まる. • 一度文章にしてみる.プログラムを作るうちに,仕様を変えることもある. • まずは簡単な(小さな)対象で正しく動くプログラムを作り,それから仕様を拡張していくとよい. 仕様とは - はてなダイアリー:http://d.hatena.ne.jp/keyword/%BB%C5%CD%CD
機能拡張(案) • ハイフンを許す.ハイフンがあれば,「-数字」としてチェックデジットを出力する. • 13桁の入力があるときに,その正誤を判定する. • 文字列参照に,「ポインタ(または配列)変数とint型変数」 ではなく「ポインタ変数のみ」を使用する. • チェックデジットを求める「機能」を,「関数」として定義し,呼び出す. • ISBN-10の入力を許す.