dポイントプレゼントキャンペーン実施中!

大学の授業の課題で

問 摂氏(C)、華氏(F)、絶対温度(K)の間で温度換算するプログラムを作れ。ただし、入力は「温度値、単位を表す文字」とし、それを換算した2つの温度を出力するようにつくること。例えば「25.0、'F'」と入力したら華氏温度25Fを摂氏温度と絶対温度に換算したものを表示する。
*温度単位の変換式は、摂氏温度をCとしたとき、F=9C/5+32 K=C+273.1

という課題が出されたのですがよく分からないので、アドバイス、回答の方お願いします。

A 回答 (3件)

>課題で


と言う事なので、やはり注意点のみ
>「25.0、'F'」と入力したら
とありますので、文字入力が前提でしょうか?そうだとすれば、
1、READで取り込んだ文字列を数値部分と摂氏華氏コード部分に分ける。
2、数値部分の文字列を、数値変換する。
  整数計算にならない様に変数の型にご注意
3、IF文で絶対温度を判断して
  K→C変換式に与え計算
  C結果からC→F変換
  (elseは不要)
4、IF文で摂氏を判断して
  C→K変換式に与え計算
  C→F変換式に与え計算
  (elseは不要)
5、IF文で華氏を判断して
  F→C変換式に与え計算
  C→K変換式に与え計算
  (華氏→摂氏変換式はご自分でどうぞ)
  (elseは不要)
6、表示を行う
  表示の書式指定にご注意
    • good
    • 0

温度と温度単位をとreadさせておいて、



'華氏なら
if(温度単位.eq.`F`) then
  摂氏計算&表示
  絶対温度計算&表示

'摂氏なら
else if(温度単位.eq.`C`) then
  華氏計算&表示
  絶対温度計算&表示

'絶対温度なら
else if(温度単位.eq.`K`) then
  華氏計算&表示
  摂氏温度計算&表示

end if


ていう流れだと思います。それぞれ、変数の宣言をわすれずに。
計算式は、それぞれ方程式が出ているので、例えば質問のF<->Cの式だと
F=9C/5+32 を逆にCについて解くと
C=○○  これを上記の計算式に当てはめる。この要領で、1つの値が当てられた場合に他の2つの値を求める式を導きだせば良い。

課題との事なので、あえて詳しい事は省略します。
#FORTRAN 15年振りだ
    • good
    • 0

温度値と単位を入力からREADしてそれぞれ変数に代入


単位を判定するif文でそれぞれ
F->Cの変換、F->Kの変換
C->Fの変換、C->Kの変換
K->Fの変換、K->Cの変換
に分岐して結果を出力にWRITEする。

if文がちゃんと使えるかがキーになると思います。
    • good
    • 0

お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!