Mảng là một cấu trúc dữ liệu tuyến tính lưu trữ các phần tử của cùng một kiểu dữ liệu trong các vị trí bộ nhớ liên tục.
Tổng mảng là tổng của tất cả các phần tử của mảng.
Trong ngôn ngữ lập trình c ++, có nhiều phương thức bằng cách bạn có thể tìm tổng mảng.
Phương pháp cổ điển
Phương pháp cơ bản để tìm tổng của tất cả các phần tử của mảng là lặp qua các phần tử của mảng và thêm giá trị của phần tử vào biến tổng.
Thuật toán
Step 1 : For i from 0 to n-1, follow step 2 ; Step 2 : sum = sum + arr[i] Step 3 : print sum.
Ví dụ
#include <iostream> using namespace std; int main (){ int arr[] = { 2, 5, 7, 8, 2, 6, 9 }; int n = 7, sum = 0; for(int i = 0; i<n ; i++){ sum+=arr[i]; } cout<<"The array sum is "<<sum; return 0; }
Đầu ra
The array sum is 39
Sử dụng phương pháp tích lũy
Phương thức tích lũy trong c ++ được sử dụng để tìm tổng mảng. Hàm này có thể được truy cập từ thư viện số trong c ++.
Cú pháp
accumulate(array_name , array_name+length , sum);
Ví dụ
#include <iostream> #include <numeric> using namespace std; int main (){ int arr[] = { 2, 5, 7, 8, 2, 6, 9 }; int n = 7, sum = 0; sum = accumulate(arr, arr+n, sum); cout<<"The array sum is "<<sum; return 0; }
Đầu ra
The array sum is 39
Sử dụng Tổng các Vectơ
Bạn cũng có thể sử dụng hàm tích lũy trên vectơ. Nó sẽ trả về tổng của mảng có dạng vectơ.
Ví dụ
#include <iostream> #include <vector> #include <numeric> using namespace std; int arraySum(vector<int> &v){ int initial_sum = 0; return accumulate(v.begin(), v.end(), initial_sum); } int main(){ vector<int> v{12, 56, 76, 2, 90 , 3} ; int sum = 0; sum=accumulate(v.begin(), v.end(), sum); cout<<"The sum of array is "<<sum; return 0; }
Đầu ra
The sum of array is 239