user7417293
user7417293

Reputation: 3

Need to know why code is repeating itself

Public Class Form1
Private Sub btnCalculate_Click(sender As Object, e As EventArgs) Handles btnCalculate.Click
    Dim EvenNum, EvenNumCount, EvenNumAverage, Number, Result As Integer
    Calculations(EvenNum, EvenNumCount)
    GetInput(Number)
    Output(Result)

End Sub
Sub GetInput(ByRef Number)
    Number = txtInput.Text
End Sub
Sub Calculations(ByRef EvenNum, ByRef EvenNumCount)
    Dim ListedNumbers, lstOutputSize As Integer
    GetInput(lstOutputSize)
    For i As Integer = 0 To lstOutputSize - 1
        ListedNumbers = InputBox("Enter Numbers", "Input")
        lstOutput.Items.Add(ListedNumbers)
    Next
    For i As Integer = 0 To lstOutput.Items.Count - 1
        If (CInt(lstOutput.Items(i)) Mod 2 = 0) Then
            EvenNum += lstOutput.Items(i)
            EvenNumCount += 1
        End If
    Next
End Sub

Function Average(ByRef EvenNumAverage As Integer) As Integer
    Dim EvenNum, EvenNumCount As Integer
    Calculations(EvenNum, EvenNumCount)
    EvenNumAverage = EvenNum / EvenNumCount
    Return EvenNumAverage

End Function

Sub Output(ByRef EvenNumAverage)
    lstOutput.Items.Add(Average(EvenNumAverage))
End Sub

The program is supposed to get input from a textbox for a desired number of numbers to be entered into a listbox from inputboxes.

It is then supposed to get the average of only the even numbers and then display that average into the listbox.

In it's current state the program will do what it is intended to do, it just repeats the calculation code. This only happens when I add the Output call statement under the button procedure.

Upvotes: 0

Views: 71

Answers (1)

MrGadget
MrGadget

Reputation: 1268

You're calling Calculations twice

  1. From btnCalculate_Click
  2. From Average which is called by Output

Upvotes: 1

Related Questions