ログアウト中 ログイン

学習パッケージを選択

【Python】単位変換ツール開発講座 第2章2.1節「変換種別判定機能の作成」




現在の見出し:2.1節:変換種別判定機能の作成

見出し一覧

  • 2.1節:変換種別判定機能の作成
  • - 種別判定処理の実装
  • - 判定処理の改良

【PR】『Python』を学べる企業・個人向けのプログラミングコース

種別判定処理の実装

第2章2.1節では、前節(第1章1.2節)で作成したコードを基盤として、ユーザーが「長さ」または「重量」のどちらの変換を行いたいかを判定する機能を追加します。input()関数関数は一定の処理をまとめたプログラムの塊です。でユーザーから変換種別を取得し、ifif文はプログラムで条件分岐を行うための命令文です。文とelif文を使用した条件分岐条件分岐はプログラム内で指定した条件によって処理の分岐を行う制御構造です。で処理を分けることで、1つのプログラムプログラムはコンピュータに対して何をすべきかを指示する一連の命令です。で複数の変換機能を提供できるようになります。

条件分岐では「長さ」と入力された場合は長さ変換処理を実行し、「重量」と入力された場合は重量変換処理を実行します。どちらでもない場合はelse文を使用してエラーメッセージを表示し、適切な入力を促すことでプログラムの使いやすさを向上させます。

以下のプログラムは、変換種別の判定機能を含む基本的な単位変換ツールです。if文で「長さ」の判定を行い、elif文で「重量」の判定を行い、else文で無効な入力の処理を行う構造になっています。

# コード
print("単位変換ツール")
conversion_type = input("変換種別を入力してください(長さ/重量): ")

if conversion_type == "長さ":
    print("長さ変換を実行します")
    meter_value = input("メートル値を入力してください: ")
    meter_float = float(meter_value)
    if meter_float > 0:
        cm_factor = 100
        cm_result = meter_float * cm_factor
        print(meter_value + "メートルは" + str(cm_result) + "センチメートルです")
    else:
        print("正の値を入力してください")
elif conversion_type == "重量":
    print("重量変換を実行します")
    kilogram_value = input("キログラム値を入力してください: ")
    kilogram_float = float(kilogram_value)
    if kilogram_float > 0:
        gram_factor = 1000
        gram_result = kilogram_float * gram_factor
        print(kilogram_value + "キログラムは" + str(gram_result) + "グラムです")
    else:
        print("正の値を入力してください")
else:
    print("無効な入力です。「長さ」または「重量」を入力してください")
# 実行結果
単位変換ツール
変換種別を入力してください(長さ/重量): 長さ
長さ変換を実行します
メートル値を入力してください: 1.5
1.5メートルは150.0センチメートルです
行数 コード 解説
1行目 print("単位変換ツール") プログラムの開始を示すタイトルメッセージを表示する
2行目 conversion_type = input("変換種別を入力してください(長さ/重量): ") ユーザーから変換種別の入力を受け取り、文字列文字列は文字の並びを表現するデータ型で、テキストデータを扱うための基本的な構造として広く使用されています。として変数変数はデータを一時的に記憶しておく場所です。代入代入は変数に値を割り当てる操作です。する
3行目 if conversion_type == "長さ": 比較演算子比較演算子は二つの値を比較する際に使用する記号です。(==)を使用して入力値が「長さ」と等しいかを判定する
4行目 print("長さ変換を実行します") 長さ変換処理の開始を示すメッセージを表示する
5行目 meter_value = input("メートル値を入力してください: ") ユーザーからメートル値の入力を受け取り、文字列として変数に代入する
6行目 meter_float = float(meter_value) 文字列として受け取った入力値を浮動小数点数浮動小数点数は実数を表現するための数値表現方式で、仮数部と指数部に分けて表現し、非常に大きな数や小さな数を効率的に扱えます。型変換型変換はデータの型を変換することです。する
7行目 if meter_float > 0: ネストした条件分岐で入力値が正の値であるかを判定する
8行目 cm_factor = 100 メートルからセンチメートルへの変換係数(100)を変数に代入する
9行目 cm_result = meter_float * cm_factor 算術演算子算術演算子は数値の計算を行うための記号や命令です。(*)を使用してメートル値に変換係数を乗算し、センチメートル値を算出する
10行目 print(meter_value + "メートルは" + str(cm_result) + "センチメートルです") 文字列連結で入力値と変換結果を組み合わせた結果メッセージを表示する
11行目 else: メートル値が0以下の場合の処理分岐を示すelse文
12行目 print("正の値を入力してください") 異常値が入力された場合のエラーメッセージを表示する
13行目 elif conversion_type == "重量": 比較演算子(==)を使用して入力値が「重量」と等しいかを判定する
14行目 print("重量変換を実行します") 重量変換処理の開始を示すメッセージを表示する
15行目 kilogram_value = input("キログラム値を入力してください: ") ユーザーからキログラム値の入力を受け取り、文字列として変数に代入する
16行目 kilogram_float = float(kilogram_value) 文字列として受け取った入力値を浮動小数点数に型変換する
17行目 if kilogram_float > 0: ネストした条件分岐で入力値が正の値であるかを判定する
18行目 gram_factor = 1000 キログラムからグラムへの変換係数(1000)を変数に代入する
19行目 gram_result = kilogram_float * gram_factor 算術演算子(*)を使用してキログラム値に変換係数を乗算し、グラム値を算出する
20行目 print(kilogram_value + "キログラムは" + str(gram_result) + "グラムです") 文字列連結で入力値と変換結果を組み合わせた結果メッセージを表示する
21行目 else: キログラム値が0以下の場合の処理分岐を示すelse文
22行目 print("正の値を入力してください") 異常値が入力された場合のエラーメッセージを表示する
23行目 else: 変換種別が「長さ」でも「重量」でもない場合の処理分岐を示すelse文
24行目 print("無効な入力です。「長さ」または「重量」を入力してください") 無効な変換種別が入力された場合のエラーメッセージを表示する
判定処理の改良

第2章2.1節「判定処理の改良」の続きを見る


すべてのカリキュラムを無料登録で学ぶ

プログラミング・マーケティング・AI活用方法を
今すぐ無料登録すると、全てのコンテンツが視聴可能になります。