C言語で摂氏温度を華氏温度に変換する方法

C言語関連

プログラミングを学ぶ際に、温度の単位変換は非常に良い練習問題となります。特に、摂氏(Celsius)から華氏(Fahrenheit)への変換はよく出てくる基本的な課題です。この記事では、C言語を使って摂氏温度を華氏温度に変換するプログラムを作成する方法を紹介します。

摂氏と華氏の関係とは?

まず、摂氏温度と華氏温度の関係式について確認しましょう。摂氏(C)から華氏(F)に変換する式は以下の通りです。

F = (9/5) * C + 32

この式に基づいて、摂氏温度を華氏温度に変換することができます。また、逆に華氏温度から摂氏温度を求める式は次の通りです。

C = (5/9) * (F – 32)

摂氏から華氏への変換プログラム

摂氏温度を華氏温度に変換するプログラムは以下のように作成できます。まずは、簡単なC言語のプログラムを見てみましょう。

#include 

void main() {
    int F, C;
    printf("セルシウス度を入力してください:");
    scanf("%d", &C);
    F = (9 * C) / 5 + 32;
    printf("ファーレンハイト度 = %d度", F);
}

このプログラムでは、ユーザーから摂氏温度を入力として受け取り、その値を華氏温度に変換して表示します。

コードの動作について

プログラムを実行すると、まず「セルシウス度を入力してください」というメッセージが表示されます。ユーザーが摂氏温度を入力すると、計算結果が表示されます。

例えば、摂氏温度が20度の場合、華氏温度は次のように計算されます。

F = (9/5) * 20 + 32 = 36 + 32 = 68

したがって、入力された摂氏温度20度は、華氏温度68度に変換されます。

プログラムの注意点と改善

上記のプログラムは基本的な変換を行いますが、少し改善できる点もあります。たとえば、ユーザーが誤った入力をした場合に備えてエラーチェックを追加することができます。また、より正確な計算を行うためには浮動小数点演算(float型など)を使用することをお勧めします。

例:浮動小数点を使った改良版のコードは以下の通りです。

#include 

void main() {
    float F, C;
    printf("セルシウス度を入力してください:");
    scanf("%f", &C);
    F = (9.0 / 5.0) * C + 32.0;
    printf("ファーレンハイト度 = %.2f度", F);
}

このコードでは、計算結果を小数点以下2桁で表示するようにしています。

まとめ

摂氏温度を華氏温度に変換するC言語のプログラムを作成する方法について学びました。温度変換の式とともに、実際に動作するプログラムのコードを確認しました。また、浮動小数点演算を使用してより正確な結果を得る方法についても紹介しました。

このような基礎的なプログラムを作成することで、C言語の基本的な構文やデータ型を理解し、さらに実用的なスキルを身につけることができます。

コメント

タイトルとURLをコピーしました