Вычисление суммы всех членов последовательности, не меньших заданного числа e - VB
Формулировка задачи:
Вычисление суммы первых n членов выходит, а вот с точностью нет. Подскажите, пожалуйста, в чем моя ошибка:
Листинг программы
- Function f(k)
- If k = 1 Then f = 1 Else f = f(k - 1) * k
- End Function
- Function f2(x)
- If x = 1 Then f2 = 1 Else f2 = f2(x - 1) * x
- End Function
- Private Sub Command1_Click()
- Picture1.Cls: Picture2.Cls: Picture3.Cls
- n = Val(Text1)
- e = Val(Text2)
- s = 0
- s1 = 0
- For k = 1 To n
- q = (-1) ^ k * k / (f(k) + f(k + 1))
- s = s + q
- Next k
- Picture1.Print "Сумма "; s 'первых n членов
- For x = 1 To 50000
- q2 = (-1) ^ x * x / (f2(x) + f2(x + 1))
- s1 = s1 + q2
- If q2 < e Then GoTo 1
- Next x
- 1 Picture2.Print "Сумма "; s1 'с точностью
- Picture3.Print "Кол-во элементов "; x
- End Sub
Решение задачи: «Вычисление суммы всех членов последовательности, не меньших заданного числа e»
textual
Листинг программы
- If ABS(q2) < e Then exit for 'GoTo 1 и метку убери, не порти впечатление
ИИ поможет Вам:
- решить любую задачу по программированию
- объяснить код
- расставить комментарии в коде
- и т.д