第 12 回 自由課題準備 (2) レポート課題 堀 拓朗 c1111317 英語3 地域共創 チーム名: わにる ホームページアドレス: http://roy/~c111131/waniru/ 部門: 地域活性部門 プロジェクトコード名: ○山形特産品通販: Yamazon ○山形県イベント検索: まず、こいちゃ! SNS アドレス: http://cms.is.koeki-u.ac.jp/sns/community/55 [1]ほぼ完成したがこれから改善の余地があるかどうか 話し合い、進めて行きたい。 [2]取り扱い説明書以外は完成した。しかしまだやれることを 探し取り組んで行きたい。 [3]担当:ホームページ、広告ページ、デモプログラム、プログラム 今回はプログラムを作成した。 ●考えた設定 名前、住所を入力させる。商品を選択させる。 合計金額の計算結果が表示される。 txt のほうに名前、住所、購入商品が書きこまれる。 ●作成した HTML tu-han.html 山形の特産品

山形の特産品販売

お客様情報入力

※ 必ず入力してください

お名前

住所

値段表

商品 値段
つや姫 3500円
ラ・フランス 2000円
さくらんぼ 2500円
おしどりミルクケーキ 1500円
山形のだし 500円
米沢牛 3000円
紅花 1500円
ラーメン(麺屋酒田) 500円
月山ワイン 2000円
いも煮 1300円
平牧三元豚 3000円
砂丘メロン 2000円
だだちゃ豆 1800円
古鏡 1500円
くじら餠 1200円

商品選択

※ 複数選択可

つや姫 ラ・フランス さくらんぼ おしどりミルクケーキ

山形のだし 米沢牛 紅花 ラーメン(麺屋酒田)

月山ワイン いも煮 平牧三元豚 砂丘メロン

だだちゃ豆 古鏡 くじら餠

管理人ページへ
●作成した css tu-han.css body{ background-color: forestgreen ; } h1{ color: white ; font-size: 400%; text-align: center; } h2{ color: white ; font-size: 300%; text-align: center; } ●作成したプログラム tu-han.rb #!/usr/bin/env ruby #coding: euc-jp total = 0 require 'cgi' # CGI 変数を使用することを明記 cgi = CGI.new(:accept_charset => "EUC-JP") # 使用する Hash を作成し、html文書で使う # EUC-JP で受け取る print("Content-type: text/html; charset=EUC-JP\n\n") # 日本語コードにする date1 = cgi["syouhin1"] # それぞれ name を変換する date2 = cgi["syouhin2"] date3 = cgi["syouhin3"] date4 = cgi["syouhin4"] date5 = cgi["syouhin5"] date6 = cgi["syouhin6"] date7 = cgi["syouhin7"] date8 = cgi["syouhin8"] date9 = cgi["syouhin9"] date10 = cgi["syouhin10"] date11 = cgi["syouhin11"] date12 = cgi["syouhin12"] date13 = cgi["syouhin13"] date14 = cgi["syouhin14"] date15 = cgi["syouhin15"] name = cgi["name"] jusyo = cgi["jusyo"] print("\n") print("\n") print("合計金額\n") print("\n") print("\n") print("\n") if date1 == "つや姫" # 条件に応じて合計にプラス total += 3500 end if date2 == "ラ・フランス" total += 2000 end if date3 == "さくらんぼ" total += 2500 end if date4 == "おしどりミルクケーキ" total += 1500 end if date5 == "山形のだし" total += 500 end if date6 == "米沢牛" total += 3000 end if date7 == "紅花" total += 1500 end if date8 == "ラーメン(麺屋酒田)" total += 500 end if date9 == "月山ワイン" total += 2000 end if date10 == "いも煮" total += 1300 end if date11 == "平牧三元豚" total += 3000 end if date12 == "砂丘メロン" total += 2000 end if date13 == "だだちゃ豆" total += 1800 end if date14 == "古鏡" total += 1500 end if date15 == "くじら餠" total += 1200 end if name == "" || jusyo == "" # もし未入力だったら print"" print"" print"エラー" print("\n") print"" print"" print"

エラー

" print"

未入力のところがあります。

" print("

戻る

") print"" print"" exit end print("

お買い上げありがとうございます!

\n") printf("

合計金額: %d 円

\n",total) # 合計の出力 print("

↓以下のご住所に後日発送させていただきます↓

\n") printf("

%s

\n", jusyo) # 住所の出力 printf("

%s 様

\n", name) # 名前の出力 print("

ご利用ありがとうございました。

\n") print("\n") print("\n") open("tu-han.txt" , "a") do |wt| # kaimono.txt に書き込む wt.printf("名前:#{name}\t住所:#{jusyo}\nお買上げ商品:#{date1}\t#{date2}\t#{date3}\t#{date4}\t#{date5}\t#{date6}\t#{date7}\t#{date8}\n#{date9}\t#{date10}\t#{date11}\t#{date12}\t#{date13}\t#{date14}\t#{date15}\n") wt.print("--------------------------------------------------------------------------------------------------------------------------------------\n") end ●元にしたもの、変更点 前回作成したデモプログラム、課題で作成した最高傑作を元にした。 名前、住所を記入できる欄を追加し、open を使用し結果が書きこまれる ようにした。 ●実行結果 合計金額

お買い上げありがとうございます!

合計金額: 12500 円

↓以下のご住所に後日発送させていただきます↓

山形県酒田市

山田 太朗 様

ご利用ありがとうございました。

※書きこまれたデータ 名前:山田 太朗 住所:山形県酒田市 お買上げ商品:つや姫 さくらんぼ おしどりミルクケーキ 米沢牛 紅花 ラーメン(麺屋酒田) -------------------------------------------------------------------------------------------------------------------------------------- ●考察 pan{HORI Takuro}% bc -l [~] 3500 + 2500 + 1500 + 3000 + 1500 + 500 12500 上記のように計算、表示結果どちらも正しいのでこの プログラムは正常の動作しているといえる。 [4]見やすさ、空欄の場合の結果の表示などを指摘された。 [5]if で空欄の場合の表示結果も出るようにした。 色を統一しているので見やすいと思う。 [6]担当外 [7]デモプログラムについての解説は前回のレポートに記入したので 簡略にしている。 ●考えた設定 商品を選択させる。 商品の合計結果を表示する。 ●作成した HTML 山形特産品 通販 (デモ版)

山形特産品 通販 (デモ版)

値段表

つや姫 3500円

ラ・フランス 2000円

さくらんぼ 2500円

おしどりミルクケーキ 1500円

山形のだし 500円

米沢牛 3000円

紅花 1500円

ラーメン(麺屋酒田) 500円

商品選択

※ 複数選択可

つや姫 ラ・フランス さくらんぼ おしどりミルクケーキ

山形のだし 米沢牛 紅花 ラーメン(麺屋酒田)

●作成した css body{ background-color: forestgreen; } h1{ color: #ffffff ; font-size: 400%; text-align: center; } h2{ color: #ffffff ; font-size: 300%; text-align: center; } ●作成したプログラム demo.rb #!/usr/bin/env ruby #coding: euc-jp total = 0 require 'cgi' # CGI 変数を使用することを明記 cgi = CGI.new(:accept_charset => "EUC-JP") # 使用する Hash を作成し、html文書で使う # EUC-JP で受け取る print("Content-type: text/html; charset=EUC-JP\n\n") # 日本語コードにする date1 = cgi["syouhin1"] # それぞれ name を変換する date2 = cgi["syouhin2"] date3 = cgi["syouhin3"] date4 = cgi["syouhin4"] date5 = cgi["syouhin5"] date6 = cgi["syouhin6"] date7 = cgi["syouhin7"] date8 = cgi["syouhin8"] name = cgi["name"] jusyo = cgi["jusyo"] print("\n") print("\n") print("合計金額\n") print("\n") print("\n") print("\n") if date1 == "tuya" # 条件に応じて合計にプラス total += 3500 end if date2 == "rafu" total += 2000 end if date3 == "saku" total += 2500 end if date4 == "osi" total += 1500 end if date5 == "yama" total += 500 end if date6 == "yone" total += 3000 end if date7 == "beni" total += 1500 end if date8 == "raa" total += 500 end print("

お買い上げありがとうございます!

\n") print("

合計金額は

\n") printf("

%d 円になります

\n",total) # 合計の出力 print("

ご利用ありがとうございました。

\n") print("\n") print("\n") ●元にしたもの、変更点 ・ HTML 後期で作成したページ index.html、前回の課題で作成した keisan.html を参考にした。 ・ プログラム 前回の課題で作成した kaimono.rb を参考にした。 デモプログラムのため、簡略化した。 ●実行結果 合計金額

お買い上げありがとうございます!

合計金額は

5500 円になります

ご利用ありがとうございました。

●考察 bc -l で計算してみると pan{c111131}% bc -l [~] 3500 + 2000 5500 と計算、表示が正しく表示されているので このプログラムは正常に動作しているといえる。 [8]担当外 [9]プログラム、html を添付する。 [10]waniru.txt ○感想 今回も全員が集まっての作業はできなかったが、 担当をあらかじめ決めていたのでスムーズにできた。 今週は球技大会があり体力的にきついものがあったが、 目標とするところまではいけたのでよかった。 ○参考文献 基礎プログラミング II 第 11 回 「Trr / 自由課題準備 (1)」 http://roy/~madoka/2012/r2/11/rpt/rpt.html 西村まどか