Программа зацикливается и выделяет 26-ую строку - VB

Узнай цену своей работы

Формулировка задачи:

Привет всем любителям VB6! Я не думаю что в преддверии Нового года мне кто-то ответит, но все же. Программа зацикливается и выделяет 26-ую строку. Первая команда выполняется верно Задание сильно не отличается

-программа вычисления суммы первых n членов последовательности (k=1,2,3..,n); -программа вычисления суммы всех членов последовательности, не меньших заданного числа e.

Листинг программы
  1. Function f(u)
  2. If u <= 1 Then f = 1 Else f = f(u - 1) * u
  3. End Function
  4. Private Sub Command1_Click()
  5. Picture1.Cls
  6. n = Val(Text1)
  7. s = 0
  8. a = 1
  9. For k = 1 To n Step 1
  10. u = (2 * k - 1)
  11. a = f(u)
  12. c = ((-1) ^ (k - 1)) / a
  13. s = s + c
  14. Next k
  15. Picture1.Print s
  16. End Sub
  17. Private Sub Command2_Click()
  18. n = Val(Text1)
  19. e = Val(Text2)
  20. s2 = 0
  21. a = 1
  22. k = 2
  23. Do
  24. a = f(u)
  25. j = ((-1) ^ (k - 1)) / a
  26. s2 = s2 + j
  27. k = k + 1
  28. Loop Until Abs(j) < e
  29. Picture2.Print s2
  30. End Sub
  31. Private Sub Command3_Click()
  32. Picture1.Cls
  33. Picture2.Cls
  34. Text1 = ""
  35. Text2 = ""
  36. End Sub
  37. Private Sub Command4_Click()
  38. End
  39. End Sub
Поправил программу но все равно не то,суммы должны быть почти одинаковыми
Листинг программы
  1. Function f(u)
  2. If u <= 1 Then f = 1 Else f = f(u - 1) * u
  3. End Function
  4. Private Sub Command1_Click()
  5. Picture1.Cls
  6. n = Val(Text1)
  7. s = 0
  8. a = 1
  9. For k = 1 To n Step 1
  10. u = (2 * k - 1)
  11. c = ((-1) ^ (k - 1)) / f(u)
  12. s = s + c
  13. Next k
  14. Picture1.Print s
  15. End Sub
  16. Private Sub Command2_Click()
  17. n = Val(Text1)
  18. e = Val(Text2)
  19. s2 = 1
  20. For k = 1 To n Step 1
  21. u = (2 * k - 1)
  22. j = ((-1) ^ k - 1) / f(u)
  23. If Abs(j) >= e Then
  24. Exit For
  25. Else: s2 = s2 + j
  26. End If
  27. Next k
  28. Picture2.Print s2
  29. End Sub
  30. Private Sub Command3_Click()
  31. Picture1.Cls
  32. Picture2.Cls
  33. Text1 = ""
  34. Text2 = ""
  35. End Sub
  36. Private Sub Command4_Click()
  37. End
  38. End Sub

Решение задачи: «Программа зацикливается и выделяет 26-ую строку»

textual
Листинг программы
  1. f = f(u - 1) * u
  2. u = (2 * k - 1)
  3. c = ((-1) ^ (k - 1)) / f(u)

ИИ поможет Вам:


  • решить любую задачу по программированию
  • объяснить код
  • расставить комментарии в коде
  • и т.д
Попробуйте бесплатно

Оцени полезность:

12   голосов , оценка 4.083 из 5

Нужна аналогичная работа?

Оформи быстрый заказ и узнай стоимость

Бесплатно
Оформите заказ и авторы начнут откликаться уже через 10 минут
Похожие ответы