Найти произведение ряда (цикл For) - VB

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

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

Собственно название темы и есть задание. В качестве дополнительного задания идёт изменение цвета фона ListBox и цвета шрифта в нём. Внешний вид формы прилогаю Вот сам код
Листинг программы
  1. Imports System.Math
  2. Public Class Form3
  3. Private Sub Button1_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button1.Click
  4. Me.Close()
  5. End Sub
  6. Private Sub Form3_Load(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles MyBase.Load
  7. ListBox1.Visible = False
  8. ListBox1.BackColor = Color.Blue
  9. ListBox1.ForeColor = Color.Coral
  10. ProgressBar1.Visible = False
  11. End Sub
  12. Private Sub Выполнить_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Выполнить.Click
  13. Dim a As Double : Dim x As Double : Dim n As Integer
  14. Dim k As Double : Dim y As Double : Dim Dialog As New ColorDialog
  15. ProgressBar1.Visible = True
  16. ProgressBar1.Value = 0
  17. ListBox1.Visible = True
  18. ListBox1.Items.Clear()
  19. a = Val(Поле_А.Text)
  20. x = Val(Поле_Х.Text)
  21. n = Val(Поле_N.Text)
  22. ProgressBar1.Maximum = n
  23. For k = 1 To n
  24. y = Cos(a - x * k)
  25. ListBox1.Items.Add("№" & k & " Y =" & y)
  26. ProgressBar1.Value = ProgressBar1.Value + 1
  27. Next
  28. MsgBox(ProgressBar1.Value)
  29. If Заливка_фона.Checked And Цвет_фона.Checked Then
  30. Dialog.Color = ListBox1.BackColor
  31. Dialog.ShowDialog()
  32. ListBox1.BackColor = Dialog.Color
  33. Dialog.Color = ListBox1.ForeColor
  34. Dialog.ShowDialog()
  35. ListBox1.ForeColor = Dialog.Color
  36. ElseIf Заливка_фона.Checked Then
  37. Dialog.Color = ListBox1.BackColor
  38. Dialog.ShowDialog()
  39. ListBox1.BackColor = Dialog.Color
  40. ElseIf Цвет_фона.Checked Then
  41. Dialog.Color = ListBox1.ForeColor
  42. Dialog.ShowDialog()
  43. ListBox1.ForeColor = Dialog.Color
  44. End If
  45. End Sub
  46. End Class
А вопрос в следующем, ну то что формула не правильная то наверняка, но меня интересует как остановить выполнение программы на небольшое время. Дело в том, что при k=1 и n=4 цикл выполняется за доли сек и это норм. Но при n = 4000, ProgressBar должен заполняться постепенно, плавно. А он опять таки считает за секунду. Ну и соответсвенно текст в ListBox должен заполнятся как в "Матрице" Догадываюсь, что делается с помощью Timer, но как? Рад любым советам. Работаю в VS 2008

Решение задачи: «Найти произведение ряда (цикл For)»

textual
Листинг программы
  1. Private Sub Button1_Click(ByVal sender As System.Object, ByVal ....

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


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

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

6   голосов , оценка 3.833 из 5

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

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

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