第26問 秒を分と秒に直す
500秒は何分何秒でしょうか。1分は60秒です。分の数と、残りの秒数をそれぞれ計算して「8分20秒」のように表示するようにしよう(2か所の穴をうめよう)
難易度:★★★☆☆(3/標準)。共通テスト「情報I」で使われるDNCL(共通テスト用プログラム表記)の穴埋め問題です。JavaScriptを有効にすると、このページでプログラムを組み立てて実行しながら解けます。
プログラム
byou = 500
fun = [A]
nokori = [B]
表示する(byou + "秒は" + fun + "分" + nokori + "秒です")
空欄 [A]・[B] に当てはまるものを、次の選択肢から選びます。
選択肢
切り捨て(byou / 60)
byou % 60
byou / 60
byou * 60
byou - 60
ヒント
1分=60秒なので、60でわった「商」が分、「あまり」が残りの秒数です。商は小数が出ないように 切り捨て(...) を、あまりは % を使いましょう
解答
- 空欄 [A] …
切り捨て(byou / 60)
- 空欄 [B] …
byou % 60
よくある間違い
- [A]
byou / 60 [B]byou % 60 … 500 / 60 は 8.333… になり、「8.333…分」と表示されてしまいます。小数部分を落として8分にするには 切り捨て(byou / 60) を使いましょう
- [A]
byou % 60 [B]切り捨て(byou / 60) … 2つが逆です。60でわった「商」が分の数、60でわった「あまり」が残りの秒数になります
- [A]
切り捨て(byou / 60) [B]byou - 60 … byou - 60 は 500 - 60 で440です。60秒を1回ぶんしか取り除けていません。何回ぶん取り除いても残るのが「あまり」なので byou % 60 を使いましょう
- [A]
byou * 60 [B]byou % 60 … 秒を分に直すときは60でかけるのではなく、60でわります。500 * 60 では逆に大きくなってしまいます
- [A]
切り捨て(byou / 60) [B]byou / 60 … 残りの秒数がほしいので、わり算の「あまり」を使います。byou % 60 なら 500 を 60 でわったあまりの20が出ます
ほかの問題