Sum Fucntion? - I've been searching the web for a sum fucntion but...

free web hosting
Free Web Hosting > Computers & Tech > Programming > Programming General > C, C++ & Visual C++

Sum Fucntion? - I've been searching the web for a sum fucntion but...

Faint545
I've been searching the web for a sum fucntion but I just can't seem to find one...

I'm programming in C++ and I have an array of numbers ( name[#] ) and I would like to calculate the sum of them without typing out the positions individually. Is there any way that is possible?

Reply

yordan
If you are running C++, you should have no problem writing down a loop
Sum=1
while blah...
++sum

No ?

Reply

mastercomputers
Here's something I came up with

CODE

#include <iostream>

int sum(int arr[], int length){
    int sum = 0;
    for(int i = 0, n = length; i < n; i++){
        sum += arr[i];
    }
    return sum;
}

int main(){
    int test[] = { 1, 2, 3, 4, 5 };
    int result = sum(test, sizeof(test)/sizeof(int));
    std::cout << result << std::endl;
    return 0;
}


The problem with sending an array to a function is that the size information is lost, so you must send the size yourself. That is why I used sizeof(array)/sizeof(int); to work out the size of it.

Cheers,


MC

 

 

 


Reply

bluefish
You could also use the STL algorithm 'accumulate':
CODE
#include <algorithm>
#include <iostream>
//...
int main(){
    int test[] = { 1, 2, 3, 4, 5 };
    int result = std::accumulate(test, test + 5);
    std::cout << result << std::endl;
    return 0;
}

It takes a pointer or iterator to the start of a sequence and a pointer of iterator one past the end of the sequence. Simply put, the first argument is the name of the array and the second is the name of the array plus the size of the array. You can also use it for STL containers, as in:
CODE
#include <algorithm>
#include <iostream>
#include <vector>
//...
int main(){
    std::vector<int> test(4,9);
    int result = std::accumulate(test.begin(), test.end());
    std::cout << result << std::endl;
    return 0;
}

Reply

ignite
QUOTE(yordan @ Feb 26 2006, 07:34 PM) *

If you are running C++, you should have no problem writing down a loop
Sum=1
while blah...
++sum

No ?


You did some mistake. Actually you wrote in pseudocode count function. Sum differ from what you wrote in first line: Sum = 0, then in third Sum +=
Here is simple one line example code: for( float Sum=0, int i=0; i<sizeof(array); i++) Sum+=array[i];

Reply

yordan
QUOTE(ignite @ Jan 12 2007, 12:52 PM) *

You did some mistake. Actually you wrote in pseudocode count function. Sum differ from what you wrote in first line: Sum = 0, then in third Sum +=
Here is simple one line example code: for( float Sum=0, int i=0; i<sizeof(array); i++) Sum+=array[i];

Ouch ! yes, you are right. I could imagine that, before starting, the sum is 0, and I started with Sum=1.
You know, a lot of people did this mistake some years ago.
They really thought that January 1st 2000 was the beginning of the new century. And that's false, it was the beginning of the last year of the old century.
Still the same problem : how do you count the things in your pocket : 1 - 2 - 3 - 4, or 0 - 1 - 2 -3 ?

Reply


Got an Opinion! Express your Views! (no registration):-
Add your Reply/ Opinion/ Views/ Comments/ Suggestion/ Questions/ Queries etc.
Posts with decent grammar & English will be accepted and please refrain from profanities.
For asking a Question, We recommend you to sign-up (for free) so that you can track the topic easily.

Nature of your Post*: Opinion/ Reply/ Comments
Question/Query
Feedback to us.
       
Name   Email
Title/Question*

(Maximum characters: 10,000)
You have characters left.

Similar Topics

Keywords : sum fucntion ve searching web sum fucntion


    Looking for sum, fucntion, ive, searching, web, sum, fucntion

*RANDOM STUFF*





*SIMILAR VIDEOS*
Searching Video's for sum, fucntion, ive, searching, web, sum, fucntion
advertisement




Sum Fucntion? - I've been searching the web for a sum fucntion but...



 

 

 

 

ADD REPLY / Got an Opinion! a humble request :-) RAPID SEARCH! Free Hosting [X]
Express your Opinions, Thoughts or Contribute your information that might help someone here.
Ask your Doubts & Queries to get answers.. "Together, We enlight each other!"
Register FREE for AD-FREE forum, Create your own topics, Ask Questions, track topics, setup subscriptions & notifications and Get a Free Website w/ Email and FTP.
500MB Space *No Ads*, CPanel, FTP, PHP, MySQL, EMails - 100% FREE