• ベストアンサー

秒数を入力すると○時間○分○秒と計算するプログラム

はじめまして、Javaのプログラムの問題で プログラム実行後に秒数を入力すると○時間○分○秒と計算するプログラムを作成しろとでました。 例 何秒を変換しますか?   3856(キーボードから入力)   3856秒は1時間4分16秒です。 for文を使うらしいのですが調べても全く分からない状態です。 学校でJavaを習ってまだ半年です。教科書はやさしいJava第3版です。 回答のほうお願いいたします。

質問者が選んだベストアンサー

  • ベストアンサー
  • okg00
  • ベストアンサー率39% (1322/3338)
回答No.1

Javaだと課題の丸投げになっちゃいますから、C言語で回答してみる。 #include "stdio.h" int main(void) { int s,s2,m,h; printf("何秒を変換しますか?:"); scanf("%d", &s); m = s / 60; s2 = s % 60; h = m / 60; m = m % 60; printf("%dは%d時間%d分%d秒です。\n",s,h,m,s2); }

saika5445
質問者

お礼

ありがとうございます。C言語のほうも少し習っていましたので参考にします

その他の回答 (1)

  • azharu
  • ベストアンサー率26% (164/609)
回答No.2

Java自体は全くわかっていませんが、以下の式をJavaのコマンドなどに置き換えてみてください。 変数の定義  入力された値=I  時間=h(整数)  分=m(整数)  秒=s(整数) 計算式(h、m、sをそれぞれ算出するだけ)  I/3600=h(ただし、小数点以下は切り捨て)  (I-3600h)/60=m(ただし、小数点以下は切り捨て)  I-3600h-60m=s でもって、 「I秒は、h時間m分s秒です。」と表示させる。 For文は使うところはないと思います。強いて言うなら、この計算処理を、For文で指定した回数だけ、繰り返させる(「何秒を変換しますか?」の入力待ち状態に、指定した回数だけ、戻ってこさせる)くらいでしょうか。 なお、Javaそのものについては、Javaのカテゴリーでどうぞ。

saika5445
質問者

お礼

ありがとうございます。参考にします。