Форум программистов, компьютерный форум CyberForum.ru

Функции в с++. Найти сумму элементов массива D, а также суммы квадратов и кубов элементов массива D. - C++

Восстановить пароль Регистрация
 
Рейтинг: Рейтинг темы: голосов - 18, средняя оценка - 4.83
Jalced
 Аватар для Jalced
0 / 0 / 0
Регистрация: 12.10.2011
Сообщений: 50
19.02.2012, 08:07     Функции в с++. Найти сумму элементов массива D, а также суммы квадратов и кубов элементов массива D. #1
Запутался уже -_- Куда че пихать не могу понять...
Дан произвольный массив D размера k. Найти сумму элементов массива D, а также суммы квадратов и кубов элементов массива D. Исходные данные взять самостоятельно
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
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
#include<stdio.h>
#include<conio.h>
#include<math.h>
#include<iostream>
#include<iomanip>
using namespace std;
int arr[10][10],
 i=0,j=0,s1=0,s2=0,s3=0,n=0,m=0;
int sumel (int s1) {
 
    return 
        for ( i=0;i<n;++i) 
            for ( j=0;j<n;++j) 
                s1=s1+arr[i][j];
}
int sumkv (int s2)
{
  return 
      for ( i=0;i<n;++i) 
            for ( j=0;j<n;++j)  
                s2=s2+arr[i][j]*arr[i][j];
}
int sumkub (int s3)
{
    return 
        for ( i=0;i<n;++i) 
            for ( j=0;j<n;++j) 
                s3=s3+arr[i][j]*arr[i][j]*arr[i][j];
}
 
int main()
        
{
 
        setlocale (LC_ALL, ".ACP");
cout<<"Введите размерность массива"<<endl<<"Размерность - ";
cin>>n;
for ( i=0;i<n;++i) {
    for ( j=0;j<n;++j) {
        cout<<"Введите эллемент матрицы:"<<endl;
            cin>>arr[i][j];
}
}
 
cout << endl << "Полученная матрица" << endl;
    for ( i = 0; i < n; ++i) {
        for ( j = 0; j < n; ++j) {
            cout << arr[i][j] << " ";
 }
                cout << endl;
 }
cout<<"Сумма элементов массива = "<<sumel(s1)<<endl;
cout<<"Сумма квадратов массива = "<<sumkv(s2)<<endl;
cout<<"Сумма кубов массива = "<<sumkub(s3)<<endl; 
system ("pause");
return 0;
}
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
19.02.2012, 08:07     Функции в с++. Найти сумму элементов массива D, а также суммы квадратов и кубов элементов массива D.
Посмотрите здесь:

C++ Вычислить сумму квадратов всех элементов заданного массива A(N), за исключением элементов, кратных пяти.
C++ Вычислите сумму квадратов всех элементов заданного массива A[N], за исключением элементов, кратных пяти.
C++ Одномерные массивы и указатели (найти количество элементов массива, равных 0, сумму элементов массива...)
C++ Найти суммы четных элементов (элементов с четным номером) массива вещественных чисел A(22) и нечетных элементов
C++ Найти сумму тех элементов массива, цифровая запись которых дает четную сумму цифр, а также найти максимальный элемент массива
После регистрации реклама в сообщениях будет скрыта и будут доступны все возможности форума.
dimcoder
Полярный
 Аватар для dimcoder
449 / 422 / 66
Регистрация: 11.09.2011
Сообщений: 1,108
20.02.2012, 10:51     Функции в с++. Найти сумму элементов массива D, а также суммы квадратов и кубов элементов массива D. #2
C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
#include <cstdlib>
#include <iostream>
 
using namespace std;
 
int main(int argc, char *argv[])
{
    const int size = 10;
    int D[size];
    for (int i = 0; i < size; i++)
       cin >> D[i];
    int sum1 = 0, sum2 = 0, sum3 = 0;
    for (int i = 0; i < size; i++)
    {
        sum1 += D[i];
        sum2 += D[i] * D[i];
        sum3 += D[i] * D[i] * D[i];
    }
    cout << sum1 << endl << sum2 << endl << sum3 << endl;
    system("PAUSE > NULL");
    return EXIT_SUCCESS;
}
Цитата Сообщение от Jalced Посмотреть сообщение
Дан произвольный массив D размера k. Найти сумму элементов массива D, а также суммы квадратов и кубов элементов массива D.
И где здесь написано про
Цитата Сообщение от Jalced Посмотреть сообщение
Полученная матрица
?
Jalced
 Аватар для Jalced
0 / 0 / 0
Регистрация: 12.10.2011
Сообщений: 50
20.02.2012, 11:51  [ТС]     Функции в с++. Найти сумму элементов массива D, а также суммы квадратов и кубов элементов массива D. #3
Спасибо конечно, но что то я совсем не могу понять, где там решение через функцию (подпрограмму пользователя)?
Это обычный способ решения, так я умею) По поводу полученной матрицы, надо же глянуть, получился нормальный ответ, или нет, т.к. если массив будет 5*5 к примеру, то представить в голове и просчитать будет проблемно
dimcoder
Полярный
 Аватар для dimcoder
449 / 422 / 66
Регистрация: 11.09.2011
Сообщений: 1,108
20.02.2012, 12:20     Функции в с++. Найти сумму элементов массива D, а также суммы квадратов и кубов элементов массива D. #4
Цитата Сообщение от Jalced Посмотреть сообщение
я совсем не могу понять, где там решение через функцию (подпрограмму пользователя)?
А я не могу понять, где это у вас в задании написано. Задание точно писать надо, откуда мы знаем что там должно быть. Код - не совсем аргумент (но конечно полезен), задание гораздо важнее.
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 <cstdlib>
#include <iostream>
 
using namespace std;
 
int func1 (int *a, int size)
{
    int sum1 = 0;
    for (int i = 0; i < size; i++)
        sum1 += a[i];
    return sum1;
}
 
int func2 (int *a, int size)
{
    int sum1 = 0;
    for (int i = 0; i < size; i++)
        sum1 += a[i] * a[i];
    return sum1;
}
 
int func3 (int *a, int size)
{
    int sum1 = 0;
    for (int i = 0; i < size; i++)
        sum1 += a[i] * a[i] * a[i];
    return sum1;
}
 
int main(int argc, char *argv[])
{
    const int size = 10;
    int D[size];
    for (int i = 0; i < size; i++)
       cin >> D[i];
    cout << func1(D, size) << endl << func2(D, size) << endl << func3(D, size) << endl;
    system("PAUSE > NULL");
    return EXIT_SUCCESS;
}
WebMax 2.0
--\.founder./--
 Аватар для WebMax 2.0
558 / 558 / 206
Регистрация: 20.10.2011
Сообщений: 867
20.02.2012, 12:22     Функции в с++. Найти сумму элементов массива D, а также суммы квадратов и кубов элементов массива D. #5
Jalced, возьми код dimcoder, вырежи цикл нахождения сумм и создай функцию , передай туда массив, верни полученные значения , вроде ничего сложного . Компилятора под рукой нет !
Jalced
 Аватар для Jalced
0 / 0 / 0
Регистрация: 12.10.2011
Сообщений: 50
20.02.2012, 13:02  [ТС]     Функции в с++. Найти сумму элементов массива D, а также суммы квадратов и кубов элементов массива D. #6
dimcoder, не ну я в названии темы написал, думал достаточно) Спасибо большое

WebMax 2.0, в том то и дело, как все это примерно выглядет я представлял, а как на языке все это записать.. Плохо, когда темы дают на самоизучение
rinat_w
89 / 85 / 4
Регистрация: 13.11.2011
Сообщений: 183
20.02.2012, 18:19     Функции в с++. Найти сумму элементов массива D, а также суммы квадратов и кубов элементов массива D. #7
во более изящный код без использования функций:
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
#include<iostream>
using namespace std;
int main(){
    int k,sum1=0,sum2=0,sum3=0;
    cin>>k;
    int D[k];
    for (int i=0; i<k; i++){
        cin>>D[i];
        sum1=sum1+D[i];
        sum2=sum2+D[i]*D[i];
        sum3=sum3+D[i]*D[i]*D[i];
        }
    cout<<"First degree sum: ";
    for (int i=0; i<k; i++){
        cout<<D[i];
        if (i<k-1) cout<<"+";
        else cout<<"="<<sum1;
        }
    cout<<"\nSecond degree sum: ";
    for (int i=0; i<k; i++){
        cout<<D[i]<<"^2";
        if (i<k-1) cout<<"+";
        else cout<<"="<<sum2;
        }
    cout<<"\nThird degree sum: ";
    for (int i=0; i<k; i++){
        cout<<D[i]<<"^3";
        if (i<k-1) cout<<"+";
        else cout<<"="<<sum3;
        }
    return 0;
}
soon
 Аватар для soon
2536 / 1301 / 81
Регистрация: 09.05.2011
Сообщений: 3,086
Записей в блоге: 1
20.02.2012, 18:38     Функции в с++. Найти сумму элементов массива D, а также суммы квадратов и кубов элементов массива D. #8
Цитата Сообщение от rinat_w Посмотреть сообщение
во более изящный код без использования функций:
Цитата Сообщение от rinat_w Посмотреть сообщение
cin>>k;
int D[k];
По фигу на переносимость и работоспособность. Главное - "изящность".
rinat_w
89 / 85 / 4
Регистрация: 13.11.2011
Сообщений: 183
21.02.2012, 16:02     Функции в с++. Найти сумму элементов массива D, а также суммы квадратов и кубов элементов массива D. #9
Цитата Сообщение от soon Посмотреть сообщение
По фигу на переносимость и работоспособность. Главное - "изящность".
Он же в задании написал "Дан произвольный массив D размера k." А так у меня все работоспособно и с оформлением
soon
 Аватар для soon
2536 / 1301 / 81
Регистрация: 09.05.2011
Сообщений: 3,086
Записей в блоге: 1
21.02.2012, 16:18     Функции в с++. Найти сумму элементов массива D, а также суммы квадратов и кубов элементов массива D. #10
Цитата Сообщение от rinat_w Посмотреть сообщение
Он же в задании написал "Дан произвольный массив D размера k." А так у меня все работоспособно и с оформлением
Неа. Выбивает сегфолт при вполне рабочем тесте - 11111111.
Пруф
Bash
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
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
soon@desktop:~/Src/C++/main$ cat main.cpp && g++ main.cpp -o main && ./main
#include<iostream>
using namespace std;
int main(){
    int k,sum1=0,sum2=0,sum3=0;
    cin>>k;
    int D[k];
    //int* D = new int [k];
    for (int i=0; i<k; i++){
        cin>>D[i];
        sum1=sum1+D[i];
        sum2=sum2+D[i]*D[i];
        sum3=sum3+D[i]*D[i]*D[i];
        }
    cout<<"First degree sum: ";
    for (int i=0; i<k; i++){
        cout<<D[i];
        if (i<k-1) cout<<"+";
        else cout<<"="<<sum1;
        }
    cout<<"\nSecond degree sum: ";
    for (int i=0; i<k; i++){
        cout<<D[i]<<"^2";
        if (i<k-1) cout<<"+";
        else cout<<"="<<sum2;
        }
    cout<<"\nThird degree sum: ";
    for (int i=0; i<k; i++){
        cout<<D[i]<<"^3";
        if (i<k-1) cout<<"+";
        else cout<<"="<<sum3;
        }
    //delete[] D;
    return 0;
}
11111111
Segmentation fault
soon@desktop:~/Src/C++/main$ cat main.cpp && g++ main.cpp -o main && ./main
#include<iostream>
using namespace std;
int main(){
    int k,sum1=0,sum2=0,sum3=0;
    cin>>k;
    //int D[k];
    int* D = new int [k];
    for (int i=0; i<k; i++){
        cin>>D[i];
        sum1=sum1+D[i];
        sum2=sum2+D[i]*D[i];
        sum3=sum3+D[i]*D[i]*D[i];
        }
    cout<<"First degree sum: ";
    for (int i=0; i<k; i++){
        cout<<D[i];
        if (i<k-1) cout<<"+";
        else cout<<"="<<sum1;
        }
    cout<<"\nSecond degree sum: ";
    for (int i=0; i<k; i++){
        cout<<D[i]<<"^2";
        if (i<k-1) cout<<"+";
        else cout<<"="<<sum2;
        }
    cout<<"\nThird degree sum: ";
    for (int i=0; i<k; i++){
        cout<<D[i]<<"^3";
        if (i<k-1) cout<<"+";
        else cout<<"="<<sum3;
        }
    delete[] D;
    return 0;
}
11111111    
1
1
1
1
1
1
1
^C
soon@desktop:~/Src/C++/main$
rinat_w
89 / 85 / 4
Регистрация: 13.11.2011
Сообщений: 183
24.02.2012, 18:10     Функции в с++. Найти сумму элементов массива D, а также суммы квадратов и кубов элементов массива D. #11
Цитата Сообщение от soon Посмотреть сообщение
Неа. Выбивает сегфолт при вполне рабочем тесте - 11111111.
Не знаю как у тебя, но у меня с DevC++ все работает нормально а ты каким IDE пользуешься?
soon
24.02.2012, 19:43
  #12

Не по теме:

rinat_w, Vim.
IDE роли не играет. В C99 возможно использование VLA. А в С++ нет. Поэтому там нужно использовать либо статические, либо динамические(как я показал в посте #10, второй вариант), либо использовать контейнеры.
Все, не флудим, если что - в ЛС

Jalced
 Аватар для Jalced
0 / 0 / 0
Регистрация: 12.10.2011
Сообщений: 50
01.03.2012, 16:07  [ТС]     Функции в с++. Найти сумму элементов массива D, а также суммы квадратов и кубов элементов массива D. #13
Хелп) Что значит int *a, что дает эта звездочка?
dimcoder
Полярный
 Аватар для dimcoder
449 / 422 / 66
Регистрация: 11.09.2011
Сообщений: 1,108
01.03.2012, 18:56     Функции в с++. Найти сумму элементов массива D, а также суммы квадратов и кубов элементов массива D. #14
Цитата Сообщение от Jalced Посмотреть сообщение
int *a
Это указатель. Читай про указатели.
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
02.03.2012, 04:51     Функции в с++. Найти сумму элементов массива D, а также суммы квадратов и кубов элементов массива D.
Еще ссылки по теме:

C++ Определить сумму, произведение и сумму квадратов всех элементов массива.
Шаблон функции: найти сумму элементов массива, кратных 3 C++
C++ Вычислить сумму кубов всех положительных элементов массива

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

Или воспользуйтесь поиском по форуму:
Jalced
 Аватар для Jalced
0 / 0 / 0
Регистрация: 12.10.2011
Сообщений: 50
02.03.2012, 04:51  [ТС]     Функции в с++. Найти сумму элементов массива D, а также суммы квадратов и кубов элементов массива D. #15
Цитата Сообщение от dimcoder Посмотреть сообщение
Это указатель. Читай про указатели.
Тоесть в моем случае, получается это указатель на обьект типа int ? А что он делает, я не могу понять) В инете что то про адресы написано, но чето как не очень доступно)
Yandex
Объявления
02.03.2012, 04:51     Функции в с++. Найти сумму элементов массива D, а также суммы квадратов и кубов элементов массива D.
Ответ Создать тему
Опции темы

Текущее время: 15:08. Часовой пояс GMT +3.
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2016, vBulletin Solutions, Inc.
Рейтинг@Mail.ru