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

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

27.01.2017, 21:03. Показов 3494. Ответов 3

Author24 — интернет-сервис помощи студентам
Надо составить программу которая определяет сумму положительных и произведение отрицательных элементов одномерного массива входящих в интервалы (-10; 10), (-∞ ;-100) и (100; +∞) циклической структуры For (цикл с параметром). Помогите, пожалуйста.
0
Лучшие ответы (1)
Programming
Эксперт
94731 / 64177 / 26122
Регистрация: 12.04.2006
Сообщений: 116,782
27.01.2017, 21:03
Ответы с готовыми решениями:

Найти произведение положительных и отрицательных элементов массива
Целочисленный массив А имеет размерность n. Заполнить массив тремя способами: 1. Задать...

Найти произведение положительных и отрицательных элементов массива - переписать программу на WinForms
Вот условие и код буду благодарен! Целочисленный массив А имеет размерность n. Заполнить массив...

Подсчитать по отдельности суммы C1 и C2 и количества M1 и M2 отрицательных и положительных элементов массива
Всем добрый вечер! Ребят, помогите с задачками: 1)Подсчитать по отдельности суммы C1 и C2 и...

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

3
0 / 0 / 1
Регистрация: 18.12.2016
Сообщений: 75
30.01.2017, 17:50  [ТС] 2
Я пишу программу
Вот код
Я думаю, где-то я допустила ошибку
Объясните, где?

VB.NET
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
Module Module1
 
    Sub Main()
        'Объявление переменных используемых в программе
        Dim i, n, k, S, P As Integer
        'i - счетчик цикла, n - количество элементов массива,
        'k - индекс массива
Повторить:
        '1. Ввод количества элементов
        Console.WriteLine("Введите количество элементов: ")
        n = Console.ReadLine()
        'Объявление массива действительных чисел с именем R
        Dim R(n) As Single
 
        '2. Ввод элементов массива
        For i = 0 To n 'Цикл перебора элементов массива
            Console.WriteLine("Введите элемент массива R({0}): ", i)
            R(i) = Console.ReadLine() 'Чтение элемента массива
        Next
 
        '3. Накопление суммы
        For i = 0 To n
            If R(i) > -10 And R(i) < 10 Or R(i) <> k Or R(i) > -100 And R(i) < 100 Then
                S = 0
                S += i
            End If
        Next
 
        '4. Накопление произведения
        For i = 0 To n
            If R(i) > -10 And R(i) < 10 Or R(i) <> k Or R(i) > -100 And R(i) < 100 Then
                P = 1
                P *= i
            End If
        Next
 
        '5. Печать результата
        Console.WriteLine(ControlChars.CrLf &
                          "Результат")
        For i = 0 To n
            Console.WriteLine("Сумма = {1:#.####}", S, i, R(i))
        Next
        For i = 0 To n
            Console.WriteLine("Произведение = {1:#.####}", P, i, R(i))
        Next
 
        Console.WriteLine(ControlChars.CrLf &
                          "Если вы хотите продолжить работу с программой нажмите " &
                          "клавишу (о), выйти из программы - любая другая клавиша.")
        If Console.ReadKey(True).Key = ConsoleKey.J Then GoTo Повторить
 
    End Sub
 
End Module
0
21 / 21 / 3
Регистрация: 23.12.2015
Сообщений: 51
31.01.2017, 03:41 3
На вскидку, вот тут мне не нравится
VB.NET
1
2
3
4
5
 '1. Ввод количества элементов
        Console.WriteLine("Введите количество элементов: ")
        n = Console.ReadLine()
        'Объявление массива действительных чисел с именем R
        Dim R(n) As Single
размер массива на 1 больше введенного числа n
вот так будет лучше - Dim R(n-1)
VB.NET
1
2
3
4
5
 '1. Ввод количества элементов
        Console.WriteLine("Введите количество элементов: ")
        n = Console.ReadLine()
        'Объявление массива действительных чисел с именем R
        Dim R(n-1) As Single
Добавлено через 3 минуты
и в циклах тоже
1
4406 / 3530 / 843
Регистрация: 02.02.2013
Сообщений: 3,417
Записей в блоге: 2
31.01.2017, 14:04 4
Лучший ответ Сообщение было отмечено nightofpromises как решение

Решение

nightofpromises,
Непонятно как тут можно что-то накопить, если вы постоянно обнуляете вашу сумму.
VB.NET
1
2
S = 0
S += i
Присваивание S = 0 нужно вынести за цикл. И потом должна накапливаться сумма элементов, а не индексов, т.е. S += R(i). Аналогично и с произведением.

Добавлено через 5 минут
Цитата Сообщение от nightofpromises Посмотреть сообщение
VB.NET
1
R(i) > -10 And R(i) < 10 Or R(i) <> k Or R(i) > -100 And R(i) < 100
разве это соответсвует условию
Цитата Сообщение от nightofpromises Посмотреть сообщение
интервалы (-10; 10), (-∞ ;-100) и (100; +∞)
1
31.01.2017, 14:04
IT_Exp
Эксперт
87844 / 49110 / 22898
Регистрация: 17.06.2006
Сообщений: 92,604
31.01.2017, 14:04
Помогаю со студенческими работами здесь

Найти сумму отрицательных, количество положительных и произведение ненулевых элементов одномерного массива
Помогите пожалуйста решить задачу на одномерный массив. Одномерный массив Х(15) считать из...

Сортировка по возрастанию, сумма положительных и произведение отрицательных элементов массива
#include &lt;stdio.h&gt; #include &lt;iostream.h&gt; main() { static float a; int...

Определить, что больше по модулю: сумма положительных или произведение отрицательных элементов массива
Дан двумерный массив в файле ‘array.txt’. Определить, что больше по модулю: сумма положительных или...

Вычислить произведение количества отрицательных и количества положительных элементов одномерного массива
Указатели. Вычислить произведение количества отрицательных и количества положительных элементов...


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

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

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