Задача на массивы, исправить ошибку нужно - VB
Формулировка задачи:
массивы color1 и color2 состоят каждый из 7 элементов. Их значения - семь цветов(рандомные). Значения элементов массива формируются случайным образом и определяют цвет кругов одного радиуса, расположенных в горизонтальный ряд на объектах Picture1 и Picture2 соответственно. Выведите на Picture3(массив Color3) из 14 кругов: его элементами с нечётными значениями индексов являются элементы массива Color1, а с чётными индексами -Color2
Код вот:
проблема в то, что третий массив там где 14 кругов выдаёт только круги 2 цветов
Листинг программы
- Option Explicit
- Dim Color1(6) As String, Color2(6) As String, Color3(13) As String, I As Integer, a As Integer, i2 As Integer
- Private Sub Form_Load()
- Randomize
- For I = 0 To 6
- Randomize
- a = Rnd() * 6
- Select Case a
- Case 0
- Color1(I) = vbBlue
- Case 1
- Color1(I) = vbGreen
- Case 2
- Color1(I) = vbCyan
- Case 3
- Color1(I) = vbRed
- Case 4
- Color1(I) = vbMagenta
- Case 5
- Color1(I) = vbYellow
- Case 6
- Color1(I) = vbWhite
- End Select
- Next
- Randomize
- For I = 0 To 6
- Randomize
- a = Rnd() * 6
- Select Case a
- Case 0
- Color2(I) = vbBlue
- Case 1
- Color2(I) = vbGreen
- Case 2
- Color2(I) = vbCyan
- Case 3
- Color2(I) = vbRed
- Case 4
- Color2(I) = vbMagenta
- Case 5
- Color2(I) = vbYellow
- Case 6
- Color2(I) = vbWhite
- End Select
- Next
- For I = 0 To 6
- For i2 = 0 To 13
- If i2 Mod 2 = 0 Then
- Color3(i2) = Color2(I)
- Else
- Color3(i2) = Color1(I)
- End If
- Next
- Next
- End Sub
- Private Sub Timer1_Timer()
- For I = 0 To 6
- Picture1.FillStyle = vbSolid
- Picture1.FillColor = Color1(I)
- Picture1.Circle (30 + 30 * I, 40), 10, Color1(I)
- Next
- For I = 0 To 6
- Picture2.FillStyle = vbSolid
- Picture2.FillColor = Color2(I)
- Picture2.Circle (30 + 30 * I, 40), 10, Color2(I)
- Next
- For i2 = 0 To 13
- Picture3.FillStyle = vbSolid
- Picture3.FillColor = Color3(i2)
- Picture3.Circle (30 + 30 * i2, 40), 10, Color3(i2)
- Next
- End Sub
Решение задачи: «Задача на массивы, исправить ошибку нужно»
textual
Листинг программы
- Option Explicit
- Dim Color1(6) As Long, Color2(6) As Long, Color3(13) As Long, I As Integer, ar()
- Private Sub Form_Load()
- Timer1.Interval = 10000
- ar = Array(vbBlue, vbGreen, vbCyan, vbRed, vbMagenta, vbYellow, vbWhite)
- Picture1.FillStyle = vbSolid
- Picture2.FillStyle = vbSolid
- Picture3.FillStyle = vbSolid
- Timer1_Timer
- End Sub
- Private Sub Timer1_Timer()
- For I = 0 To 6
- Color1(I) = ar(Int(Rnd() * 7))
- Picture1.FillColor = Color1(I)
- Picture1.Circle (30 + 30 * I, 40), 10, Color1(I)
- Color2(I) = ar(Int(Rnd() * 7))
- Picture2.FillColor = Color2(I)
- Picture2.Circle (30 + 30 * I, 40), 10, Color2(I)
- Picture3.FillColor = Color1(I)
- Picture3.Circle (30 + 30 * I * 2, 40), 10, Color1(I)
- Picture3.FillColor = Color2(I)
- Picture3.Circle (30 + 30 * (I * 2 + 1), 40), 10, Color2(I)
- Next
- End Sub
ИИ поможет Вам:
- решить любую задачу по программированию
- объяснить код
- расставить комментарии в коде
- и т.д