Другие языки программирования и технологии
Народ, напишите пожалуйста код, задание ниже. Думаю, для тех кто разбирается это на раз-два. Сам не понимаю этого :(
задача на языке Excel VBA. очень нужно. 1)Дан двумерный массив размерно-стью 5х5, заполненный случайными целыми числами в диапазоне [0;35]. Сформировать одномерный массив, каждый элемент равен произведе-нию четных положительных элементов соответствующего столбца. 2)Дан одномерный массив (n=17), заполненный целыми случайными числами в диапазоне [-30;30]. За-менить отрицательные элементы, меньшие заданного k, на противо-положные по знаку, а положитель-ные элементы удвоить.
1) Пусть таблица 5х5 находится в ячейках (2,2) - (6,6). Одномерный массив пишем в (8,2) - (8,6).
И заметим, что если диапазон [0; 35], то числа ВСЕ положительные, и это можно не проверять.
Dim k As Integer, m As Integer
For m = 2 To 6
Cells(8, m) = 1
For k = 2 To 6
Cells(k, m) = RND()*35 ' RND() выдает случайные значения от 0 до 1, поэтому умножаем ее на 35
If (Cells(k, m) Mod 2 = 0) Then Cells(8, m) = Cells(8, m) * Cells(k, m) ' Если число четное, умножаем его.
Next k
Next m
End
2) Одномерный массив записываем в ячейки (2, 2) - (2, 18). Результат пишем в ячейки (3, 2) - (3, 18).
Заданное число k пишем в ячейку (2, 20)
Dim k As Integer, m As Integer
k = Cells(2, 20)
For m = 2 To 18
Cells(2, m) = RND()*60 - 30 ' RND() дает число от 0 до 1, RND()*60 от 0 до 60, поэтому еще вычитаем 30.
If (Cells(2, m) < 0) And (Cells(2, m) < k) Then
Cells(3, m) = Cells(2, m) * (- 1) ' Число отрицательное и меньше k, меняем знак, умножая его на -1
ElseIf (Cells(2, m) > 0) Then
Cells(3, m) = Cells(2, m) * 2 ' Число положительное, умножаем его на 2
Else
Cells(3, m) = Cells(2, m) ' Число не подходит ни под одно из условий, просто переписываем его.
End If
Next m
End
И заметим, что если диапазон [0; 35], то числа ВСЕ положительные, и это можно не проверять.
Dim k As Integer, m As Integer
For m = 2 To 6
Cells(8, m) = 1
For k = 2 To 6
Cells(k, m) = RND()*35 ' RND() выдает случайные значения от 0 до 1, поэтому умножаем ее на 35
If (Cells(k, m) Mod 2 = 0) Then Cells(8, m) = Cells(8, m) * Cells(k, m) ' Если число четное, умножаем его.
Next k
Next m
End
2) Одномерный массив записываем в ячейки (2, 2) - (2, 18). Результат пишем в ячейки (3, 2) - (3, 18).
Заданное число k пишем в ячейку (2, 20)
Dim k As Integer, m As Integer
k = Cells(2, 20)
For m = 2 To 18
Cells(2, m) = RND()*60 - 30 ' RND() дает число от 0 до 1, RND()*60 от 0 до 60, поэтому еще вычитаем 30.
If (Cells(2, m) < 0) And (Cells(2, m) < k) Then
Cells(3, m) = Cells(2, m) * (- 1) ' Число отрицательное и меньше k, меняем знак, умножая его на -1
ElseIf (Cells(2, m) > 0) Then
Cells(3, m) = Cells(2, m) * 2 ' Число положительное, умножаем его на 2
Else
Cells(3, m) = Cells(2, m) ' Число не подходит ни под одно из условий, просто переписываем его.
End If
Next m
End
Похожие вопросы
- Напишите пожалуйста код простейшей программы вычисления значения 2 в степени N.
- Напишите пожалуйста код на C#
- Выручайте. Составьте пожалуйста код на С++. Задание по практике.
- Народ помогите пожалуйста, нашел код но не знаю как он работает! если можно на каждом строке напишите коммы заранее спс
- Помогите по C# плиз, напишите программу по теме "Циклы". Задание ниже
- Турбо-паскаль. Пожалуйста, напишите программный код!...=)
- Срочно нужна помощь, С# накрылся ноутбук, нужно написать простенький код, помогите пожалуйста!
- добрый вечер!помогите пожалуйста решить задание
- Необходимо написать кусок кода, который формирует новый массив из исходного.
- Люди напишите пожалуйста подробно ! как узнать исходный код программ и игр ? Заранее благодарен .