Форум программистов, компьютерный форум, киберфорум
Наши страницы
VBA
Войти
Регистрация
Восстановить пароль
 
Рейтинг 4.88/8: Рейтинг темы: голосов - 8, средняя оценка - 4.88
Link1518
0 / 0 / 0
Регистрация: 16.11.2011
Сообщений: 4
#1

Сумма элементов массива, расположенных после последнего отрицательного элемента

09.12.2011, 19:11. Просмотров 1690. Ответов 3
Метки нет (Все метки)

Помогите, пожалуйста, сделать код для по счета Суммы элементов массива, расположенных после последнего отрицательного элемента.

Точнее я сделал код, но к сожалению считается сумма после первого отрицательного элемента. Помогите найти ошибку.

Visual Basic
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
Sub PR18()
Dim sum As Single, check As Boolean
Dim A() As Single, n As Integer, i As Single, Str1 As String, Str2 As String
n = InputBox("Введите число элементов массива:", "Определение размера")
ReDim A(n) As Single
Str1 = ""
Str2 = ""
 
'Заполнение массива с клавиатуры и формирование строки
For i = 1 To n
A(i) = Val(InputBox("Введите   " & i & "-ый элемент массива", "Заполнение массива"))
Str1 = Str1 & A(i) & " "
Next
 
'Сумма элементов массива, расположенных после последнего отрицательного элемента
check = False
sum = 0
For i = 1 To n
If A(i) < 0 Then
check = True
ElseIf A(i) > 0 And check = True Then
sum = sum + A(i)
End If
Next
 
MsgBox "Исходный массив: " & Str1 & Chr(13) & "Сумма элементов массива: " & sum, , "Результат"
End Sub

Заказываю контрольные, курсовые, дипломные и любые другие студенческие работы здесь.

0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
09.12.2011, 19:11
Ответы с готовыми решениями:

Найти сумму модулей элементов массива, расположенных после первого отрицательного элемента
Здравствуйте! Дали задачу в дополнение к РГЗ, а я практически не понимаю как ее...

Произведение элементов массива, расположенных после максимального по модулю элемента
Привет всем :) Делаю тут задачку и не могу найти ошибку, первое условие...

Определить среднее арифметическое значение n-го отрицательного и последнего положительного элемента массива
опр среднее арифметическое значение !-го отрицательного и последнего положит....

Вычислить сумму модулей элементов массива, расположенных после первого элемента, равного нулю
буду очень благодарен за помощь,если еще блок схема будет, то вообще будет...

Найти разность первого положительного и последнего отрицательного элементов массива
В заданном векторе (одномерном массиве) найти: разность первого...

3
19vitek
725 / 401 / 95
Регистрация: 19.12.2010
Сообщений: 756
09.12.2011, 20:07 #2
подправил.
Visual Basic
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
Sub PR18()
Dim sum As Single, check As Boolean
Dim A() As Single, n As Integer, i As Single, Str1 As String
n = InputBox("Введите число элементов массива:", "Определение размера")
ReDim A(n) As Single
Str1 = ""
'Заполнение массива с клавиатуры и формирование строки
For i = 1 To n
A(i) = Val(InputBox("Введите   " & i & "-ый элемент массива", "Заполнение массива"))
Str1 = Str1 & A(i) & " "
Next
For i = 1 To n
If A(i) < 0 Then k = i
Next
'Сумма элементов массива, расположенных после последнего отрицательного элемента
For i = k + 1 To n
sum = sum + A(i)
Next
MsgBox "Исходный массив: " & Str1 & Chr(13) & "Сумма элементов массива: " & sum, , "Результат"
End Sub
1
Казанский
13936 / 5699 / 1459
Регистрация: 24.09.2011
Сообщений: 8,917
09.12.2011, 20:07 #3
Ищите с конца
Visual Basic
1
2
3
4
For i = n To 1 step -1
    If A(i) < 0 Then exit for
    sum = sum + A(i)
Next
Не проверял.
1
Link1518
0 / 0 / 0
Регистрация: 16.11.2011
Сообщений: 4
09.12.2011, 20:55  [ТС] #4
Благодарю, оба исправленных кода работают на ура
0
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
09.12.2011, 20:55

Найти количество элементов, расположенных после минимального элемента матрицы
Всем привет)) Народ срочно нужна помощь) пожалуйста) вот задание: В матрице...

Определить количество элементов массива, отличных от последнего элемента
Sub one() Dim B(20) As Integer Dim i, k As Integer k = 0 For i = 0 To...

Вычислить среднее арифметическое элементов, расположенных до максимального элемента массива
Добрый день. Помогите с кодом. Заранее спасибо. В целочисленном массиве...


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
4
Ответ Создать тему
Опции темы

КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2018, vBulletin Solutions, Inc.
Рейтинг@Mail.ru