見出し画像

年齢別にさらに価格帯を分けるPythonコード

1時間1400円の利用料の託児所をx時からy時まで利用したときの料金が計算できるWEBアプリのPythonのコード

この場合、さらに年齢を指定して
0歳1歳ならプラス800円/時、2歳3歳はプラス400円/時、4歳以上なら追加料金無しとなるようにしてください。



託児所の利用料を計算するWebアプリのコードを、年齢に応じた追加料金も考慮して作成します。このコードでは、FlaskというPythonのフレームワークを使用しています。まだインストールしていない場合は、ターミナルでpip install flaskを実行してください。

まず、利用時間と年齢に基づいて料金を計算する関数を定義します。次に、その関数を使って、ユーザーがWebフォームから入力したデータに基づいて料金を計算し、結果を表示するシンプルなWebアプリを作ります。

料金計算のロジック

def calculate_fee(x, y, age):
   hours = y - x  # 利用時間
   base_rate = 1400  # 基本料金(1時間あたり)
   additional_fee = 0  # 追加料金

   # 年齢に応じた追加料金を設定
   if age <= 1:  # 0歳、1歳の場合
       additional_fee = 800
   elif age <= 3:  # 2歳、3歳の場合
       additional_fee = 400
   # 4歳以上は追加料金なし

   total_fee = hours * (base_rate + additional_fee)
   return total_fee

Flaskを使ったWebアプリ

from flask import Flask, request, render_template_string

app = Flask(__name__)

@app.route('/', methods=['GET', 'POST'])
def home():
   if request.method == 'POST':
       # フォームからの入力値を取得
       x = float(request.form['start'])
       y = float(request.form['end'])
       age = int(request.form['age'])
       # 料金計算関数の呼び出し
       fee = calculate_fee(x, y, age)
       # 結果を表示
       return render_template_string('<h1>料金は: {{fee}}円</h1>', fee=fee)
   # GETリクエストの場合、フォームを表示
   return render_template_string('''
       <form method="post">
           利用開始時間: <input type="number" name="start"><br>
           利用終了時間: <input type="number" name="end"><br>
           年齢: <input type="number" name="age"><br>
           <input type="submit" value="計算">
       </form>
   ''')

if __name__ == '__main__':
   app.run(debug=True)



このコードをapp.pyという名前のファイルに保存し、実行することでローカルサーバーが起動します。ブラウザでhttp://127.0.0.1:5000/にアクセスすると、託児所の利用開始時間、終了時間、そして子供の年齢を入力できるフォームが表示されます。入力して「計算」ボタンを押すと、計算された料金が表示されます。

これで、年齢に応じた追加料金を考慮した託児所の利用料を計算できるWebアプリが完成しました!プログラミングの世界へようこそ、これからも楽しんでいきましょう!

この記事が気に入ったらサポートをしてみませんか?