Форум программистов
 

Восстановите пароль или Зарегистрируйтесь на форуме, о проблемах и с заказом рекламы пишите сюда - alarforum@yandex.ru, проверяйте папку спам!

Вернуться   Форум программистов > IT форум > Помощь студентам
Регистрация

Восстановить пароль
Повторная активизация e-mail

Купить рекламу на форуме - 42 тыс руб за месяц

Ответ
 
Опции темы Поиск в этой теме
Старый 25.06.2016, 20:17   #1
Ramzi
Новичок
Джуниор
 
Регистрация: 25.06.2016
Сообщений: 3
Радость задача на массивы в Visual Basic

вот условие задачи: Дан массив А(15). Заполнить массив случайными значениями от 0 до 25. Если в массиве есть хотя бы один элемент, равный 2, то все четные элементы массива заменить нулями, иначе найти среднее арифметическое всех нечетных элементов. Вывести начальный и конечный состав массива.

вот кое какие наработки:

Код:
Sub A1()
Dim A(15) As Integer, n As Integer, i As Byte
Randomize
For i = 0 To 15
A(i) = Int(Rnd * 25 + 1)
Next i
For i = 1 To 15
        Cells(i, "A") = A(i)
        Next i
If n Mod 2 = 0 Then A(i) = 0
Else
For i = n To 15
S = 0
S = S + A(i)
Next i
End If
S = S / (15 - n)
For i = 1 To 15
        Cells(i, "B") = A(i)
        Next i
End Sub
что нужно исправить и доработать? (в программировании не бум-бум)
Ramzi вне форума Ответить с цитированием
Старый 25.06.2016, 22:45   #2
ViktorR
Старожил
 
Регистрация: 23.10.2010
Сообщений: 2,306
По умолчанию

1.
Видимо в задании пропущено, что это целочисленный массив.
2.
Не верное решение:
Код:
A(i) = Int(Rnd * 25 + 1)
По условию задачи значения элементов от 0 до 25:
Код:
A(i) = Int(Rnd * 26)
3.
Необходимо просмотреть элементы массива на равенство 2.
Код:
flag = false
For i = 1 To 15
  If A(i) = 2 then
     flag = true
     Exit For
  End if
Next i
If flag then ' Тут выполняем замену четных
  For i = 1 To 15
    If i MOD 2 = 0 Then A(i) = 0
  Next i
Else   ' или суммирование нечетных.
  S = 0
  For i = 1 To 15
     If i MOD <> 0 Then S = S + A(i)
  Next i
End If
  Midl = S%8
Так понимаю, что и среднее арифметическое можно считать целым.
Иначе:
Код:
Midl= S/8
PS: Не проверял ...
Как-то так, ...
Как-то так, ...
ViktorR вне форума Ответить с цитированием
Старый 26.06.2016, 01:20   #3
Ramzi
Новичок
Джуниор
 
Регистрация: 25.06.2016
Сообщений: 3
По умолчанию

спасибо!
Ramzi вне форума Ответить с цитированием
Ответ


Купить рекламу на форуме - 42 тыс руб за месяц



Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
массивы в Visual Basic тимаа Помощь студентам 0 23.06.2016 16:24
Массивы в Visual Basic SelfishTroll Помощь студентам 4 05.07.2013 20:59
массивы visual basic sens69 Помощь студентам 2 01.06.2012 22:22
Visual Basic массивы!!!!!!!!!!! Ольга93 Помощь студентам 2 20.05.2011 18:31
Visual Basic, массивы, сессия:) 6ypuk Помощь студентам 5 10.06.2009 02:07