第8回 基礎プログラミング I レポート課題 氏名:遠藤孝之 学籍番号:c1090265 語学クラス:中国語 コース(系):環境サイエンス 1-A:筆記問題 現在使われているポイントカードがその例だと思います。ポイントカードには、 住所や電話番号を記憶させ、それで人物を判別させるので、ポイントカードだ と思います。 1-B:1-Aに使えそうなデータを考え作成した。 #商品名 #個数 #値段 解凍ブリ 2個 87円 コロッケ 2個 57円 メンチカツ 1個 67円 豚肉小間切れ 1個 267円 納豆 1個 47円 焼きそばの麺 1個 19円 牛乳 1個 87円 ホウレンソウ 1個 87円 前回、買い物したときの領収書を元に作成しました。ここで重要となる情報は、 買った商品とその値段です。 プログラミング #!/usr/koeki/bin/ruby year = 2010 #年 day = "5月28日(金)" #月日 time = "16:48" #時間 motikin = 1000 #持ち金 syouhin1 = "解凍ブリ" #商品名1 syouhin2 = " コロッケ" #商品名2 syouhin3 = "メンチカツ" #商品名3 syouhin4 = "豚肉小間切れ" #商品名4 syouhin5 = "納豆" #商品名5 syouhin6 = "焼きそばの麺" #商品名6 syouhin7 = "牛乳" #商品名7 syouhin8 = "ホウレンソウ" #商品名8 kosuu1 = 2 #商品名1の個数 kosuu2 = 2 #商品名2の個数 nedan1 = 87*2 #商品名1の値段 nedan2 = 57*2 #商品名2の値段 nedan3 = 67 #商品名3の値段 nedan4 = 267 #商品名4の値段 nedan5 = 47 #商品名5の値段 nedan6 = 19 #商品名6の値段 nedan7 = 87 #商品名7の値段 nedan8 = 87 #商品名8の値段 total = nedan1+nedan2+nedan3+nedan4+nedan5+nedan6+nedan7+nedan8 #合計金額 oturi = motikin-total #お釣をしまう変数 print("ビック\n") #print文で、どこで購入したのかを表示 printf("購入日:%d年 %s %s\n\n",year ,day ,time) #printf文で、購入日を表示 print("領収書\n") #print文で、何について書かれているのかを表示 printf("%s\t %d個\t\t%d円 \n",syouhin1,kosuu2,nedan1) printf("%s\t %d個\t\t%d円 \n",syouhin2,kosuu2,nedan2) printf("%s\t\t\t\t%d円 \n",syouhin3,nedan3) printf("%s\t\t\t\t%d円 \n",syouhin4,nedan4) printf("%s\t\t\t\t%d円 \n",syouhin5,nedan5) printf("%s\t\t\t\t%d円 \n",syouhin6,nedan6) printf("%s\t\t\t\t%d円 \n",syouhin7,nedan7) printf("%s\t\t\t\t%d円 \n",syouhin8,nedan8) #print文で、商品名と値段を表示 #値段が表示されたとき、値段がきれいに並ぶようにするため\tで調節 #%sは文字を表示し、%dは数字を表示。 printf("合計 %d円\n",total) #printf文で合計金額を表示 printf("お預り %d円\n",motikin) #printf文で、持ち金を表示 printf("お釣 %d円\n\n",oturi) #printf文で、motikin-totalの計算によりお釣を表示 print("お買上明細は上記のとおりです。\n") #print文で、明細の確認を表示 print("商品価格には消費税等を含みます。\n")#print文で、消費税を表示 実行結果 ビック 購入日:2010年 5月28日(金) 16:48 領収書 解凍ブリ 2個 174円 コロッケ 2個 114円 メンチカツ 67円 豚肉小間切れ 267円 納豆 47円 焼きそばの麺 19円 牛乳 87円 ホウレンソウ 87円 合計 862円 お預り 1000円 お釣 138円 お買上明細は上記のとおりです。 商品価格には消費税等を含みます。 考察 まず、このプログラムが行った合計金額とお釣の計算が正しく行われてい るのかわからないので、Ktermにbc-lを入力し確め算を行った。 合計金額の確かめ算 pan{c108057}% bc -l [~] 174+114+67+267+47+19+87+87 862 quit お釣りの確かめ算 pan{c108057}% bc -l [~] 1000-862 138 これにより、答えは間違っていなかったことを確認。 2-A: #!/usr/koeki/bin/ruby year = 2010 day = "5月28日(金)" time = "16:48" motikin = 1000 syouhin1 ="解凍ブリ" syouhin2 = "コロッケ" syouhin3 = "メンチカツ" syouhin4 = "豚肉小間切れ" syouhin5 = "納豆" syouhin6 = "焼きそばの麺" syouhin7 = "牛乳" syouhin8 = "ホウレンソウ" kosuu1 = 2 kosuu2 = 2 nedan1 = 87*2 nedan2 = 57*2 nedan3 = 67 nedan4 = 267 nedan5 = 47 nedan6 = 19 nedan7 = 87 nedan8 = 87 total = nedan1+nedan2+nedan3+nedan4+nedan5+nedan6+nedan7+nedan8 oturi = motikin-total print("\n
\n") print("\t\t%s\t %d個 \t%d円 | \n",syouhin1,kosuu2,nedan1) printf("\t%s\t %d個 \t%d円 | \n",syouhin2,kosuu2,nedan2) printf("\t%s\t\t%d円 | \n",syouhin3,nedan3) printf("\t%s\t\t%d円 | \n",syouhin4,nedan4) printf("\t%s\t\t%d円 | \n",syouhin5,nedan5) printf("\t%s\t\t%d円 | _n",syouhin6,nedan6) printf("\t%s\t\t%d円 | \n",syouhin7,nedan7) printf("\t%s\t\t%d円 | \n",syouhin8,nedan8) print("\t
合計 %d円 | \n",total) printf("\tお預り %d円 | \n",motikin) printf("\tお釣 %d円 | \n",oturi) print("\t\n") print("
お買上明細は上記のとおりです。
\n") print("\t商品価格には消費税等を含みます。
\n") #は普通の文章を書く場合に使用。 print("\n\n")#本文の終了と文章自体の終了。 実行結果 pan{c109026}% ./web_html_c1090265.rb [~/public_html]解凍ブリ 2個 174円 | コロッケ 2個 114円 | メンチカツ 67円 | 豚肉小間切れ 267円 | 納豆 47円 | ./web_html_c1090265.rb:45:in `printf': invalid value for Integer: "\276\306\244\255\244\275\244\320\244\316\314\315" (ArgumentError) from ./web_html_c1090265.rb:45 考察 どうしても、45行目に異常があると出てしまう。間を空けて45行目に何もない状 態にしても異常とでてしまう。西村先生どこが悪いのか教えて下さい。 感想 小関くんと花木くんと横山くんと後藤くんと協力してやったが、どうしても上記 に記した所だけが出来なかった。今度は、ちゃんとしたプログラミング作れるよ う頑張ります。