Сколько элементов нужно сложить, чтобы сумма превысила заданное число? - VB
Формулировка задачи:
5. Дана последовательность, состоящая из дробей: 1/1, 4/2, 7/3, 10/4,... Какое минимальное ко-личество элементов последовательности нужно сложить, чтобы сумма превысила заданное число S > 1?
Решение задачи: «Сколько элементов нужно сложить, чтобы сумма превысила заданное число?»
textual
Листинг программы
Private Sub Command2_Click()
Dim i As Integer, Sum As Single, S As Single, St As String
S = CSng(Replace(InputBox("S = ", "Заданное число", 7), ".", ","))
St = "Последовательность: " & vbCrLf
Do
i = i + 1
Sum = Sum + ((i - 1) * 3 + 1) / i
St = St & CStr(((i - 1) * 3 + 1)) & "/" & CStr(i) & vbTab
Loop Until Sum > S
MsgBox St & vbCrLf & vbCrLf & _
"Сумма элементов последовательности: " & Sum & vbCrLf & _
"Заданное число: " & S & vbCrLf & _
"Количество элементов: " & i
End Sub