第1回 基礎プログラミングII 演習問題 氏名:久保田 瑛一郎 学籍番号:c109058 語学クラス:英語1 コース:社会福祉 ●歴史年号調べ 私は古代史や中世史といった歴史にあまり興味がない。中学校でも公民派で「高 度経済成長」と聞くと燃えるタイプだったので、1945年の終戦の年、および高度 経済成長開始の1955年を調べる。 作成したプログラム nengou.rb #!/usr/koeki/bin/ruby #インタプリタであることを宣言する print("西暦を昭和に直します\n") #主旨説明 STDERR.print("西暦何年ですか?:") #質問文表示 year = gets.chomp.to_i #そこで入力されたものを取り込み、改行文字を消去し、10進数の整数と見なす printf("昭和%d年です\n",year-1925) #結果表示 実行結果と考察 1945年 pan{c109058}% ./nengou.rb [~/Ruby] 西暦を昭和に直します 西暦何年ですか?:1945 昭和20年です pan{c109058}% 1955 pan{c109058}% ./nengou.rb [~/Ruby] 西暦を昭和に直します 西暦何年ですか?:1955 昭和30年です bc -lで計算結果を調べる pan{c109058}% bc -l [~/Ruby] 1945-1925 20 1955-1925 30 quit よってこのプログラムは正しい ●生年月日表示プログラム 作成したプログラム born.rb #!/usr/koeki/bin/ruby #インタプリタであることを宣言する high_name="ルビ高校" #出身高校を示す born_place="ルビ共和国" #出身地を示す high_grad=2005 #卒業年度を示す born_year=1991 #生まれた年を示す born_month=3 #生まれた月を示す born_day=18 #生まれた日示す print("西暦を年号に変換します\n") #主旨説明 printf("%s生まれ\t%d年%d月%d日(平成%d年)\n",born_place,born_year,born_month,born_day,born_year-1988) #略歴表示 printf("%s卒業\t%d年(平成%d年)\n",high_name,high_grad,high_grad-1988) #略歴表示 実行結果と考察 pan{c109058}% ./born.rb [~/Ruby] 西暦を年号に変換します ルビ共和国生まれ 1991年3月18日(平成3年) ルビ高校卒業 2005年(平成17年) bc -l で試算する pan{c109058}% bc -l [~/Ruby] 1991-1988 3 quit よって試算よりこのプログラムが正しいことが証明された。 ●大学卒業年度を尋ねよう 作成したプログラム ask_graduniv.rb #!/usr/koeki/bin/ruby #インタプリタであることを宣言する high_name="ルビ高校" #出身高校を示す high_grad=2005 #卒業年度を示す STDERR.print("何処の大学に入学しましたか?") #質問を表示する univ_name=gets.chomp #その答えを取り込み、改行文字を取り除く STDERR.print("西暦何年に入学しましたか?") #質問を表示する univ_year=gets.chomp.to_i #その答えを取り込み、改行文字を取り除き、数値は10進数と見なし、整数に変換 STDERR.print("西暦何年に大学を卒業予定ですか?") #質問を表示する yotei_year=gets.chomp.to_i #その答えを取り込み、改行文字を取り除き、数値は10進数と見なし、整数に変換 printf("%s卒業\t%d年(平成%d年)\n",high_name,high_grad,high_grad-1988) #略歴表示 printf("%s入学\t%d年(平成%d年)\n",univ_name,univ_year,univ_year-1988) #略歴表示 printf("%s卒業見込み\t%d年(平成%d年)\n",univ_name,yotei_year,yotei_year-1988) #略歴表示 実行結果と考察 pan{c109058}% ./ask_graduniv.rb [~/Ruby] 何処の大学に入学しましたか?ハーバード大学 西暦何年に入学しましたか?2010 西暦何年に大学を卒業予定ですか?2014 ルビ高校卒業 2005年(平成17年) ハーバード大学入学 2010年(平成22年) ハーバード大学卒業見込み 2014年(平成26年) bc -lで試算する pan{c109058}% bc -l [~/Ruby] 2005-1988 17 2010-1988 22 2014-1988 26 quit 試算によりプログラムが正しいことが証明される 参考文献 西村まどか 2010講義ノート 基礎プログラミングII 文字列を入力するには http://roy.e.koeki-u.ac.jp/~madoka/2010/r2/01/01_10_review_04_string.html 西村まどか 2010講義ノート 基礎プログラミングII プログラムに表示させよ う http://roy.e.koeki-u.ac.jp/~madoka/2010/r2/01/01_09_review_03_printf.html wikipadia 高度経済成長 http://ja.wikipedia.org/wiki/%E9%AB%98%E5%BA%A6%E7%B5%8C%E6%B8%88%E6%88%90%E9%95%B7