提出課題:03回目レポート 本文: 1.#!/usr/koeki/bin/ruby # -*- coding: utf-8 -*- total = 0 number = 1 print"8回のレポートの合計得点を求めます。\n" while number <= 8 printf("%d回目のレポートの得点は?\n", number) score = gets.chomp!.to_f total += score number += 1 end printf("8回のレポートの合計は%.1fです。\n",total) 2.1回目のテストの得点は? 4.6 2回目のテストの得点は? 5.6 3回目のテストの得点は? 4.6 4回目のテストの得点は? 5.7 5回目のテストの得点は? 5.6 6回目のテストの得点は? 5.4 7回目のテストの得点は? 3.4 8回目のテストの得点は? 7.5 8回のテストの合計は42.4です。 3.9行目は、八回までのレポートの合計得点を求めるのが問題なのでwhileを使って繰り返しを継続する条件を記載した。その際に八回までなので左辺が右辺(8)以下の場合の論理演算子<=を使った。 11行目は、スコアが少数まで表示できるようにto_fを使用した。 12行目は、totalの現在の値にscoreを加算するため、加算代入(+=)を使用した。 13行目は、numberの現在の値に1を加算するため、ここでも加算代入(+=)を使用した。 14行目は、最後にはendを必ずつけるので、endを使用した。 15行目は、繰り返しを行うたびにnumberの値が1ずつ増加していき、numberが8を超えた時点で、繰り返し継続条件を満たさなくなるため、繰り返しから抜け、最終行のprintfが実行される。そして、最終行のprintfは求められている8回のレポートの合計を表示できるように指示した。さらに、右側に揃えるため1fを使用することによって、見やすくした。 numberの初期値を1、繰り返し継続条件をnumber <= 8とすることで、結果的に8回の繰り返しが行われていることとなるのだ。 4.今回は1しか挑戦しなかったが、まずは基礎から正確に学びたいことから、プログラムはもちろんのこと、説明に力を入れて課題に取り組んだ。徐々にステップアップをしていき上級の問題に取り組んでいきたい。 添付: report02.rb