![]() |
1. Пользуйтесь тегами кода. - [code] ... [/code]
2. Точно указывайте язык, название и версию компилятора (интерпретатора).
3. Название темы должно быть информативным.
В описании темы указываем язык!!!
![]() |
Lord of assembly |
![]() ![]()
Сообщение
#1
|
![]() Новичок ![]() Группа: Пользователи Сообщений: 12 Пол: Мужской Реальное имя: Николай;) Репутация: ![]() ![]() ![]() |
Код Option Explicit Sub êðç1() Dim a(100) As Integer Dim i As Integer Dim N As Integer Dim K As Integer Dim R As Integer For i = 1 To 100 Cells(1, i) = Int(Rnd * 100 - 50) a(i) = Cells(1, i) Next i For i = 1 To 100 If a(i) Mod 2 = 0 Then a(i) = a(i) * 2 Cells(3, i) = a(i) End If Next i For i = 1 To 100 If a(i) Mod 2 <> 0 Then a(i) = a(i) - 1 Cells(3, i) = a(i) End If Next i For K = 1 To 100 - 1 For i = 1 To 100 - K If a(i) < a(i + 1) Then R = a(i) a(i) = a(i + 1) a(i + 1) = R End If Next i Next K For i = 1 To 100 Cells(5, i) = a(i) Next i If a(i) Mod 5 = 2 Then a(i) = Cells(7, i) a(i) = a(i + 1) For i = 1 To 100 Next i N = N - 1 End If End Sub Помогите пожалуйста проверить код, а задача звучит так Задан одномерный массив F(N). В данном массиве выполнить: 1. Увеличить все чётные элементы массива в два раза, а нечётные уменьшить на единицу. Полученный массив распечатать. 2. Элементы полученного массива расположить по убыванию. Массив распечатать. 3. Удалить из вновь образованного массива все элементы, кратные пяти. Массив распечатать. 4. Во вновь образованной последовательности вычислить сумму чётных элементов и вставить это значение перед каждым элементом, кратным трем. Значение суммы и вновь образованный массив распечатать. И если не затруднит подскажите как сделать четвертую часть ну очень надо. Заранее благодарен. |
![]() ![]() |
volvo |
![]()
Сообщение
#2
|
Гость ![]() |
Посмотри внимательно на изменения в программе...
Код Option Explicit Public Sub test_func() Dim a(200) As Integer ' именно 200, иначе возможен subscript error в четвертом задании Dim i As Integer Dim N As Integer Dim R As Integer Dim j As Integer Dim sum As Double For i = 1 To 100 a(i) = Int(Rnd * 100 - 50) Cells(1, i) = a(i) Next i ' #1 For i = 1 To 100 If a(i) Mod 2 = 0 Then a(i) = a(i) * 2 Cells(3, i) = a(i) Else a(i) = a(i) - 1 Cells(3, i) = a(i) End If Next i ' #2 For i = 1 To 100 For j = 100 To i + 1 Step -1 If a(j - 1) < a(j) Then R = a(j - 1) a(j - 1) = a(j) a(j) = R End If Next j Next i ' Print array #2 For i = 1 To 100 Cells(5, i) = a(i) Next i ' #3 N = 100 i = 1 While i <= N If a(i) Mod 5 = 0 Then For j = i To N - 1 a(j) = a(j + 1) Next j N = N - 1 End If i = i + 1 Wend ' Print array #3 For i = 1 To N Cells(7, i) = a(i) Next i '#4 sum = 0 For i = 1 To 100 If a(i) Mod 2 = 0 Then sum = sum + a(i) End If Next i Cells(9, 1) = "even elements sum = " Cells(9, 4) = sum i = 1 While i <= N If a(i) Mod 3 = 0 And a(i) <> 0 Then For j = N - 1 To i Step -1 a(j + 1) = a(j) Next j a(i) = sum N = N + 1 i = i + 1 End If i = i + 1 Wend ' Print array #4 For i = 1 To N Cells(11, i) = a(i) Next i End Sub |
![]() ![]() |
![]() |
Текстовая версия | 26.07.2025 16:11 |