Lesson 12〜13 解答例

あくまで解答は例です。正しい結果が得られていてかつ考え方が間違っていなければ問題ありません。

Lesson 12

問23

(1)※プロシージャの名前を「Calc_Sum」とした。

Sub Calc_Sum(number As Long)
    Dim n As Long, sum As Long
    For n=1 To number
        sum=sum+n
    Next
    Print sum
End Sub

(2)

#prompt
Dim i As Long
For i=1 To 10
    Calc_Sum(i)
Next

Sub Calc_Sum(number As Long)
    Dim n As Long, sum As Long
    For n=1 To number
        sum=sum+n
    Next
    Print sum
End Sub

実行結果

1
3
6
10
15
21
28
36
45
55

問24

※実行例は略。

#prompt
Compare_Three(1, 5, 7) ' 「3番目が最も大きい」が表示される
Compare_Three(6, 3, 2) ' 「1番目が最も大きい」が表示される
Compare_Three(-1, 8, 6) ' 「2番目が最も大きい」が表示される
Compare_Three(4, 4, 2) ' 「1番目が最も大きい」が表示される
Compare_Three(7, 2, 7) ' 「1番目が最も大きい」が表示される
Compare_Three(3, 9, 9) ' 「2番目が最も大きい」が表示される
Compare_Three(8, 8, 8) ' 「1番目が最も大きい」が表示される

' 以下にCompare_Threeプロシージャの定義を書く(問題)
 
Sub Compare_Three(A As Double, B As Double, C As Double)
    If A>=B And A>=C Then
        Print "1番目が最も大きい"
    ElseIf B>=C Then
        Print "2番目が最も大きい"
    Else
        Print "3番目が最も大きい"
    End If
End Sub

戻る