Форум программистов, компьютерный форум, киберфорум
Наши страницы
С++ для начинающих
Войти
Регистрация
Восстановить пароль
 
Staffi
0 / 0 / 0
Регистрация: 05.02.2014
Сообщений: 26
#1

Нахождение суммы элементов массива, найти ошибку в коде - C++

15.02.2014, 16:50. Просмотров 393. Ответов 10
Метки нет (Все метки)

C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
 #include <iostream>
#include <time.h>
using namespace std;
void fm(int a[], int count){
    for (int i=0; i<count; i++)
        a[i]=rand()%100;
}
void print(int a[],int count){
    
    for (int i=0; i<count; i++)
    cout<<a[i]<<"\t";
    cout<<endl;
}
void main (){
    srand(time(NULL));
    const int n=10;
    int mas [n],sum=0;
    fm(mas,n);
    print (mas,n);
    sum += mas[10];
    cout << sum;
}
Добавлено через 1 минуту
скажите не путевому , что в коде не то..
инициализирую sum выдает ошибку ..
0
Лучшие ответы (1)
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
15.02.2014, 16:50
Я подобрал для вас темы с готовыми решениями и ответами на вопрос Нахождение суммы элементов массива, найти ошибку в коде (C++):

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

Нахождение суммы всех элементов массива и суммы первых 3-х элементов массива
Нужно создать алгоритм нахождения суммы всех элементов массива А и В ,и сумму...

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

Нахождение суммы большего и меньшего из 3 чисел (помочь найти ошибку)
#include &lt;iostream.h&gt; #include &lt;math.h&gt; int MAX(int,int); int MIN(int,int);...

Нахождение суммы неуникальных элементов массива
Помогите, пожалуйста! В одномерном массиве нужно найти сумму всех неуникальных...

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

10
0x10
2554 / 1734 / 285
Регистрация: 24.11.2012
Сообщений: 4,361
15.02.2014, 16:53 #2
В массиве 10 элементов, индексы от 0 до 9, вы обращаетесь к 10.
0
vovacreme
61 / 61 / 33
Регистрация: 14.01.2014
Сообщений: 145
15.02.2014, 16:56 #3
Лучший ответ Сообщение было отмечено Staffi как решение

Решение

Staffi, тебе нужно просуммировать все элементы массива, а ты просто прибавляешь к переменной sum элемент массива с индексом 10, которого вообще не существует, поскольку нумерация элементов массива начинается с нуля, т.е. mas[9] - последний элемент. Что нужно сделать: создать цикл от 0 до 9 и в нем прибавлять к переменной sum поочередно элементы массива.
1
Staffi
0 / 0 / 0
Регистрация: 05.02.2014
Сообщений: 26
15.02.2014, 16:58  [ТС] #4
0x10, все правильно, мне не нужен 10 элемент массива , мне нужна сумма

1 функция находит сумму элементов передаваемого массива
0
0x10
2554 / 1734 / 285
Регистрация: 24.11.2012
Сообщений: 4,361
15.02.2014, 17:04 #5
Цитата Сообщение от Staffi Посмотреть сообщение
все правильно, мне не нужен 10 элемент массива , мне нужна сумма
Так если не нужен, зачем так пишете?)

Цитата Сообщение от Staffi Посмотреть сообщение
1 функция находит сумму элементов передаваемого массива
Это задание? В 3 посте написали как сделать.
0
Staffi
0 / 0 / 0
Регистрация: 05.02.2014
Сообщений: 26
15.02.2014, 17:06  [ТС] #6
0x10, vovacreme, уже сделал спасибо
C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
 #include <iostream>
#include <time.h>
using namespace std;
void fm(int a[], int count){
    for (int i=0; i<count; i++)
        a[i]=rand()%100;
}
void print(int a[],int count){
    
    for (int i=0; i<count; i++)
    cout<<a[i]<<"\t";
    cout<<endl;
}
void main (){
    srand(time(NULL));
    const int n=10;
    int mas [n],sum=0;
    fm(mas,n);
    print (mas,n);
    for (int i = 1; i< n; i++)
    sum += mas[i];
    cout << sum;
}
Добавлено через 57 секунд
забыл о цикле
0
vovacreme
61 / 61 / 33
Регистрация: 14.01.2014
Сообщений: 145
15.02.2014, 17:09 #7
Staffi, опять неверно, посмотри внимательно, у тебя в цикле суммирование начинается с элемента с индексом 1, а нумерация индексов, как я уже говорил, начинается с нуля
1
Staffi
0 / 0 / 0
Регистрация: 05.02.2014
Сообщений: 26
15.02.2014, 18:38  [ТС] #8
vovacreme, а вот теперь вы не правы, у меня массив равен 10... и начинается с 1 до 10, для удобства, а не от 0 и до 9 (i<n-1) мне не удобна такая запись


i=1, n=10
0
0x10
2554 / 1734 / 285
Регистрация: 24.11.2012
Сообщений: 4,361
15.02.2014, 18:42 #9
Staffi, в приведенном Вами коде i меняется от 1 до 9. Т.е. нулевой элемент массива Вы игнорируете.
http://ideone.com/VW2zF1
0
vovacreme
61 / 61 / 33
Регистрация: 14.01.2014
Сообщений: 145
15.02.2014, 18:45 #10
Staffi, тогда зачем ты цикл инициализации элементов массива запускаешь от 0 к 9, м? То что тебе удобно, не значит - правильно.
0
Staffi
0 / 0 / 0
Регистрация: 05.02.2014
Сообщений: 26
15.02.2014, 22:05  [ТС] #11
vovacreme, 0x10,

Добавлено через 15 минут
C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
 #include <iostream>
#include <time.h>
using namespace std;
void fm(int a[], int count){
    for (int i=0; i<count; i++)
        a[i]=rand()%10;
}
void print(int a[],int count){
    
    for (int i=0; i<count; i++)
    cout<<a[i]<<"\t";
    cout<<endl;
}
void main (){
    srand(time(NULL));
    const int n=10;
    int mas [n],sum=0;
    fm(mas,n);
    print (mas,n);
    for (int i = 0; i<n; i++)
    sum += mas[i];
    cout << sum;
}
0
15.02.2014, 22:05
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
15.02.2014, 22:05
Привет! Вот еще темы с решениями:

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

Ошибка в нахождение суммы элементов одномерного массива
В одномерном массиве, состоящем из 20 вещественных элементов, вычислить: 1) ...

Сортировка массива пузырьком - найти ошибку в коде
В массив вношу 46 случайных чисел от 1 до 26 включая, упорядочиваю по убыванию...

В строках матрицы с отрицательным элементом на главной диагонали найти наибольший из всех элементов (найти ошибку в коде)
Помогите найти ошибку! Дана действительная квадратная матрица порядка 10. В...


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

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

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