![]() |
Помогитите пожалуйста с одномерными массивами решить задачу
помогите решить хотя бы под одной буквой=)
Даны целые числа a1, a2, … Известно, что a1 > 0 и что среди a2,a3,… есть хотя бы одно отрицательное число. Пусть a1,…,an – члены данной последовательности, предшествующие первому отрицательному члену (n заранее неизвестно). Получить: a) max (а1, …, аn );б) min (a1+a2, a2+a3, …,an-1+an); в) количество четных среди а1, …, аn; |
vivat, а в чем собственно проблема?
|
мах как найти?я не знаю и минимум тоже...
|
vivat, хм... дела. Может сравнение елементов попробовать? :unsure:
|
мне хотя бы знать,как вычисления делать,по какой формуле вычислять прогрессию.....
|
я пыталась сделать под а)нахождение максимального значения вот что вышло
Sub mac1() Dim A() As Integer, n As Byte, i As Integer, r As Integer, b As Integer n = InputBox("n") ReDim A(n) For i = 1 To n A(i) = InputBox("A(i)") Next i Amax = A(1) : k = 1 For i = 2 To n If A(i) > max Then max = A(i) : k = i Next i MsgBox "max=" & r End Sub у меня ошибка есть,но я не знаю где.... |
vivat, вроде все верно.
1. Покажи объявление переменных max, k. 2. Сделай проверку на единичную длину массива. 3. If A(i) > max Then max = A(i) : k = i напиши в две строки. If A(i) > max Then max = A(i) k = i - ЕМНИП это не будет принадлежать условию if. If A(i) > max Then max = A(i) k = i else EndIf А вот так будет. В любом случае проверь синтаксис конструкции IF Then Else. 4. MsgBox "max=" & r Максимальное значение у тебя храниться в max, индекс максимального в k. Скажи, причем здесь r ? Это как в анекдоте: Летят два крокодила, один зеленый, другой на север. Вопрос: сколько лет было тигру, когда посадили медведя. Ответ: а зачем мне холодильник, если я не курю. Вот так и у тебя. Считается в одних переменных, а на вывод ты запрашиваешь другие. 5. A(i) = InputBox("A(i)") - эта конструкция точно верна? у меня VBA под руками нет проверить. |
мне тоже кажется,что не верно A(i) = InputBox("A(i)"),но а как тогда?
|
vivat, возьми какую либо книжку почитать. Там расскажут и покажут все первые шаги программирования.
Я же могу тебя только отослать к чтению документации. Запрос к гугл Ведет к первоисточнику. Т.к. возвращается строка, а необходимо получить число, соотв надо найти функцию перевода строки в число. Это тебе для самостоятельного поиска. :) (а мне надо идти) |
vivat, наслаждайтесь
Код:
Function GetCountEvenItems(ByRef An() As Double) As Long |
Время: 03:37. |
Время: 03:37.
© OSzone.net 2001-