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

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

13.10.2015, 20:17. Показов 3876. Ответов 3
Метки нет (Все метки)

Author24 — интернет-сервис помощи студентам
Задание:
В одномерном массиве, состоящем из n действительных элементов, найдите:
1) номер максимального по модулю элемента массива;
2) сумму элементов массива, расположенных после первого положительного элемента;
3) упорядочите массив таким образом, чтобы сначала располагались все элементы, целая часть которых лежит в интервале [a, b], а затем все остальные.

Вопрос:
Программа(ниже) находит минимальный элемент, но вместо результата суммы элементов выдает "0".
В чем я допустил ошибку? И если не сложно, помогите с последним заданием.

C++
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
#include "stdafx.h" 
#include <iostream>
#include <cmath>
 
using namespace std;
 
void main()
{
    float a[50];
    int nmax = 0, n, index;
    float s = 0, max, ME;
 
    setlocale(LC_CTYPE, "rus");
    cout << "n="; cin >> n;
 
    for (int i = 0; i <= n; i++)
    {cout << "a[" << i << "]="; cin >> a[i];}
 
    max = a[0];
    for (int i = 0; i <= n; i++)
    if (abs(a[i])>abs(max))
    {   max = a[i]; //сохраняем элемент
        nmax = i;} //сохраняем номер элемента
 
    cout << "Номер макс. елемента: " << nmax << endl << "Макс. елемент: " << max << endl; //выводи номер элемента и сам элемент
 
 
    for (int i = 0; i <= n; i++)
    if (a[i]>0) //ищем отрицательный
    {
        ME = a[i];
        index = i;
    } 
    index++;
    for (int i = index; i <= n; i++)//от nmax до n
        s += ME; //суммируем элементы
    cout << "s=" << s << endl; //выводим сумму
    system("pause");
}
0
Programming
Эксперт
94731 / 64177 / 26122
Регистрация: 12.04.2006
Сообщений: 116,782
13.10.2015, 20:17
Ответы с готовыми решениями:

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

Сумма элементов массива, расположенных после первого положительного элемента
Помогите доделать последний пункт задачи, пожалуйста! Работаю в Visual Studio 2005, так уж...

Найти сумму элементов массива, расположенных после первого положительного элемента
Помогите с лабораторной по массивам. Задание: 1. Исходные данные для всех вариантов - n...

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

3
Модератор
Эксперт С++
13496 / 10751 / 6406
Регистрация: 18.12.2011
Сообщений: 28,692
13.10.2015, 20:23 2
Цитата Сообщение от Microthel Посмотреть сообщение
for (int i = 0; i <= n; i++)
if (a[i]>0) //ищем отрицательный
{
ME = a[i];
index = i;
}
C++
1
2
3
4
5
6
7
8
9
10
11
12
13
int i;
for (i = 0; i < n; i++)  // <n если у Вас n элементов
   if (a[i]>0) //ищем первый положительный
      break;
if(i==n)
{
    cout<<"No positive elements\n";
    system("pause");
    return 1;
}
index = i+1;
for (i = index; i < n; i++)//от nmax до n
        s += a[i]; //суммируем элементы
1
0 / 0 / 1
Регистрация: 06.10.2014
Сообщений: 80
13.10.2015, 21:50  [ТС] 3
Спасибо, все работает!

Цитата Сообщение от zss Посмотреть сообщение
for (i = 0; i < n; i++) // <n если у Вас n элементов
Цитата Сообщение от zss Посмотреть сообщение
for (i = index; i < n; i++)//от nmax до n
Если писать так, то последний элемент массива не будет учитываться, так что я добавил "=".
0
Модератор
Эксперт С++
13496 / 10751 / 6406
Регистрация: 18.12.2011
Сообщений: 28,692
13.10.2015, 22:37 4
Цитата Сообщение от Microthel Посмотреть сообщение
последний элемент массива не будет учитываться
Тогда у Вас n+1 элемент, а не n
Нумерация: первый имеет номер 0
второй - номер 1
n-й имеет номер n-1
0
13.10.2015, 22:37
IT_Exp
Эксперт
87844 / 49110 / 22898
Регистрация: 17.06.2006
Сообщений: 92,604
13.10.2015, 22:37
Помогаю со студенческими работами здесь

Найти сумму элементов массива, расположенных после первого положительного элемента
помогите с задачкой просто я несилен в C++ если можно то с объяснениями. Вот собственно и она: В...

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

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

Найти сумму элементов массива, расположенных после первого положительного элемента
Здравствуйте, помогите пожалуйста решить задачу на С++ Задание (непрерывные последовательности...


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

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

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