0 / 0 / 0
Регистрация: 10.05.2012
Сообщений: 7
1

Вычислить сумму элементов массива, номера которых являются нечетными

10.05.2012, 20:01. Показов 1695. Ответов 15
Метки нет (Все метки)

Студворк — интернет-сервис помощи студентам
Помогите с заданиями в VB:
В одномерном массиве, который состоит из N действительных элементов, вычислить:
1) сумму элементов массива, номера которых нечетными;
2) сумму элементов массива, расположенных между первым и последним отрицательными элементами.
Сжать массив, уничтожив в нем все элементы, которые меньше 1. Освобожденные в конце массива элементы заполнить нулями.
На экран вывести: исходный массив; вычисленные значения и преобразованный массив.

Спасибо заранее))
0
Programming
Эксперт
94731 / 64177 / 26122
Регистрация: 12.04.2006
Сообщений: 116,782
10.05.2012, 20:01
Ответы с готовыми решениями:

Вычислить сумму элементов массива, порядковые номера которых являются простыми числами
Помогите решить очень нужна! Ввести с клавиатуры N различных чисел. Вычислить сумму элементов...

Массив: Вычислить сумму чисел, порядковые номера которых являются нечетными числами.
Задана последовательность N вещественных чисел. Вычислить сумму чисел, порядковые номера которых...

Вычислить сумму чисел последовательности, порядковые номера которых являются нечетными числами
Задана последовательность N вещественных чисел. Вычислить сумму чисел, порядковые номера которых...

Вычислить сумму тех элементов массива, индексы которых являются степенями двойки
Даны натуральное n, действительные числа a1, … , an. Вычислить сумму тех элементов массива, индексы...

15
1483 / 578 / 106
Регистрация: 26.03.2012
Сообщений: 1,024
11.05.2012, 09:02 2
1)
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
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
Randomize Timer
N = InputBox("Введите число элементов:")
Dim A(1 To N)
Print "Задание № 1"
Print "Исходный массив:"
For I = 1 To N
    A(I) = Int(Rnd * 20) - 10
    Print A(I) & ", ";
Next I
Print
For I=1 To N Step 2
    S = S + A(I)
Next N
Print "Сумма нечетных элементов: " & S
Print
Print "Задание № 2"
For I = 1 To N
    If A(I) < 0 Then
        I1 = I
        Exit For
    End If
Next I
For I = N To 1 Step -1
    If A(I)<0 Then
        I2 = I
        Exit For
    End If
Next I
For I = I1 To I2
    S = S + A(I)
Next I
Print "Сумма элементов: " & S
For I = 1 To N
    If A(I)<1 Then
        For J = I To N -1
            A(J) = A(J+1)
        Next J
        A(N) = 0
    End If
Next I
Print "Преобразованный массив:"
For I = 1 To N
    Print A(I) & ", ";
Next I
Print
1
Заблокирован
11.05.2012, 09:11 3
Поправочка:
Visual Basic
1
2
3
4
5
'''
3:  REDim A(1 To N)
'''
13: Next I 'N
'''
1
1483 / 578 / 106
Регистрация: 26.03.2012
Сообщений: 1,024
11.05.2012, 09:20 4
А ну да, код вбивал напрямую сюда, так что возможны мелкие накладки
0
0 / 0 / 0
Регистрация: 10.05.2012
Сообщений: 7
12.05.2012, 00:14  [ТС] 5
Код не работает( Ввожу число элементов и сразу же выскакивает ошибка(
Visual Basic
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
Dim A(1 To 10) As Integer
Dim i As Integer, min As Integer, max As Integer, n As Integer
Dim S As String
 
Private Sub Command1_Click()
Randomize Timer
n = InputBox("Ââåäèòå ÷èñëî ýëåìåíòîâ:")
Dim A(1 To 10)
Print "Çàäàíèå ¹ 1"
Print "Èñõîäíûé ìàññèâ:"
For i = 1 To n
    A(i) = Int(Rnd * 20) - 10
    Print A(i) & ", ";
Next i
Print
For i = 1 To n Step 2
    S = S + A(i)
Next i 'N
Print "Ñóììà íå÷åòíûõ ýëåìåíòîâ: " & S
Print
End Sub
Ошибка: Run Time error 13.
Type mismatch.
0
es geht mir gut
11267 / 4749 / 1183
Регистрация: 27.07.2011
Сообщений: 11,439
12.05.2012, 06:45 6
Цитата Сообщение от kukusya Посмотреть сообщение
выскакивает ошибка
Я вообще удивляюсь: Вам дают рабочий код, вы вносите в него ошибки и потом говорите
Код не работает


Visual Basic
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
Dim A() As Integer
Dim i As Integer, min As Integer, max As Integer, n As Integer
Dim S As Integer 'String
 
Private Sub Command1_Click()
Randomize Timer
n = InputBox("Введите число элементов:")
ReDim A(1 To n)
Print "Задание № 1"
Print "Исходный массив:"
For i = 1 To n
    A(i) = Int(Rnd * 20) - 10
    Print A(i) & ", ";
Next i
Print
For i = 1 To n Step 2
    S = S + A(i)
Next i
Print "Сумма нечетных элементов: " & S
Print
End Sub
0
1483 / 578 / 106
Регистрация: 26.03.2012
Сообщений: 1,024
12.05.2012, 07:19 7
Цитата Сообщение от SoftIce Посмотреть сообщение
Я вообще удивляюсь: Вам дают рабочий код, вы вносите в него ошибки и потом говорите...
Он похоже дальше первого ответа не читал
0
0 / 0 / 0
Регистрация: 10.05.2012
Сообщений: 7
12.05.2012, 12:45  [ТС] 8
Ребятушки, во-первых, я девушках) во-вторых, ошибка состоит в том, что с этим кодом я ввожу только количество элементов, а мне нужно еще и сами числа вводить! И чтоб из них он уже считал суму непарных элементов.)
И ещё вопрос: этот код может работать в одной программе? или нужно две разные создавать?
(Извиняюсь, если что-то не так, просто с бейсиком никогда не стыкалась.)
0
1483 / 578 / 106
Регистрация: 26.03.2012
Сообщений: 1,024
12.05.2012, 19:20 9
В листинге первого ответа удали 1 строку и поменяй 7 строку на
Visual Basic
1
A(I) = Inputbox("Введите элемент №" & I)
И не забудь внести исправление из 2 ответа
0
0 / 0 / 0
Регистрация: 10.05.2012
Сообщений: 7
13.05.2012, 00:27  [ТС] 10
Первая часть работает))
А вот вторая...
Я скопировала второй код как есть и выскакиевает ошибка: run-time error 9. subsckript out of rarge...
0
1483 / 578 / 106
Регистрация: 26.03.2012
Сообщений: 1,024
13.05.2012, 00:30 11
Это одна программа, копируй целиком
1
0 / 0 / 0
Регистрация: 10.05.2012
Сообщений: 7
13.05.2012, 00:48  [ТС] 12
я скопировала всё вместе... выдает ошибку..
0
1483 / 578 / 106
Регистрация: 26.03.2012
Сообщений: 1,024
13.05.2012, 01:07 13
У меня все работает. Покажите весь ваш код
Миниатюры
Вычислить сумму элементов массива, номера которых являются нечетными  
1
0 / 0 / 0
Регистрация: 10.05.2012
Сообщений: 7
13.05.2012, 01:14  [ТС] 14
Вот такое получилось:
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
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
Dim A() As Integer
Dim i As Integer, min As Integer, max As Integer, n As Integer, j As Integer
Dim S As Integer 'String
 
Private Sub Command1_Click()
n = InputBox("Ââåäèòå ÷èñëî ýëåìåíòîâ:")
ReDim A(1 To n)
Print "Çàäàíèå ¹ 1"
Print "Èñõîäíûé ìàññèâ:"
For i = 1 To n
A(i) = InputBox("Ââåäèòå ýëåìåíò ¹" & i)
    Print A(i) & ", ";
Next i
Print
For i = 1 To n Step 2
    S = S + A(i)
 Next i 'N
Print "Ñóììà íå÷åòíûõ ýëåìåíòîâ: " & S
Print
Print "Çàäàíèå ¹ 2"
For i = 1 To n
    If A(i) < 0 Then
        I1 = i
        Exit For
    End If
Next i
For i = n To 1 Step -1
    If A(i) < 0 Then
        I2 = i
        Exit For
    End If
Next i
For i = I1 To I2
    S = S + A(i)
Next i
Print "Ñóììà ýëåìåíòîâ: " & S
For i = 1 To n
    If A(i) < 1 Then
        For j = i To n - 1
            A(j) = A(j + 1)
        Next j
        A(n) = 0
    End If
Next i
Print "Ïðåîáðàçîâàííûé ìàññèâ:"
For i = 1 To n
    Print A(i) & ", ";
Next i
Print
End Sub
0
1483 / 578 / 106
Регистрация: 26.03.2012
Сообщений: 1,024
13.05.2012, 12:02 15
Немного переделал код, теперь на форме нужны 2 кнопки. 1 задание на одной кнопке, 2 задание на другой.
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
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
Dim A() As Integer
Dim i As Integer, min As Integer, max As Integer, n As Integer, j As Integer
Dim S As Integer 'String
 
Private Sub Form_Load()
    Me.AutoRedraw = True
End Sub
 
Private Sub Command1_Click()
    Print "Задание № 1"
    n = InputBox("Введите число элементов:")
    ReDim A(1 To n)
    Print "Исходный массив:"
    For i = 1 To n
        A(i) = InputBox("Введите элемент №" & i)
        Print A(i) & ", ";
    Next i
    Print
    For i = 1 To n Step 2
        S = S + A(i)
    Next i 'N
    Print "Сумма нечетных элементов: " & S
    Print
End Sub
 
Private Sub Command2_Click()
    Print "Задание № 2"
    n = InputBox("Введите число элементов:")
    ReDim A(1 To n)
    Print "Исходный массив:"
    For i = 1 To n
        A(i) = InputBox("Введите элемент №" & i)
        Print A(i) & ", ";
    Next i
    Print
    I1 = 1
    I2 = n
    For i = 1 To n
        If A(i) < 0 Then
            I1 = i
            Exit For
        End If
    Next i
    For i = n To 1 Step -1
        If A(i) < 0 Then
            I2 = i
            Exit For
        End If
    Next i
    For i = I1 To I2
        S = S + A(i)
    Next i
    Print "Сумма элементов: " & S
    For i = 1 To n
        If A(i) < 1 Then
            For j = i To n - 1
                A(j) = A(j + 1)
            Next j
            A(n) = 0
        End If
    Next i
    Print "Преобразованный массив:"
    For i = 1 To n
        Print A(i) & ", ";
    Next i
    Print
End Sub
1
0 / 0 / 0
Регистрация: 10.05.2012
Сообщений: 7
13.05.2012, 12:54  [ТС] 16
Спасибо большое за помощь и терпение=))
0
13.05.2012, 12:54
IT_Exp
Эксперт
87844 / 49110 / 22898
Регистрация: 17.06.2006
Сообщений: 92,604
13.05.2012, 12:54
Помогаю со студенческими работами здесь

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

Вычислить сумму элементов массива, порядковые номера которых простые числа
Имеется последовательность чисел, содержащая n элементов. Вычислить сумму тех из них, порядковые...

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

Как вычислить сумму элементов массива, порядковые номера которых совпадают с их значением
Задана последовательность н целых чисел. вычислить сумму элементов массива, порядковые номера...


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

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

КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2023, CyberForum.ru