Sum of Array: Difference between revisions

From Rosetta Code
Content deleted Content added
mNo edit summary
m fixed redirect since multiple redirects aren't followed
 
(64 intermediate revisions by 19 users not shown)
Line 1: Line 1:
#REDIRECT [[Sum and product of an array]]
[http://stitchesnglue.110mb.com/old-grandma.htm old grandma] [http://trene-von-anty.110mb.com/description/www-forza.htm www forza sk] [http://nationavce.110mb.com/view/gigabyte-gaknsc.htm gigabyte gak8nsc 939] [http://trouble166.110mb.com/curtains-halls.htm curtains halls blue] [http://mouse-zae.110mb.com/musica-del.htm musica del perreo 2005] [http://ultra-creator.110mb.com/articles/rumania.htm rumania] [http://mouse-zae.110mb.com/scarface-si.htm scarface si mostra in immagini] [http://some-omeelse.110mb.com/data/skijump.htm skijump] [http://some-omeelse.110mb.com/data/deviatore-cuffia.htm deviatore cuffia altoparlante] [http://some-omeelse.110mb.com/data/comunicazione-scienza.htm comunicazione scienza] [http://book-wench.110mb.com/text/a-parigi/ a parigi in vacanza] [http://slavkamolot.110mb.com/library/samba-dobrado/ samba dobrado] [http://trouble166.110mb.com/splinter-cell.htm splinter cell patch] [http://slavkamolot.110mb.com/library/blood-story/ blood story] [http://slavkamolot.110mb.com/library/book-modelle/ book modelle] [http://olikka.110mb.com/library/alfa-gtv.htm alfa gtv 20 v6] [http://lazythoughts.110mb.com/lib/my-one/ my one and only love] [http://slavkamolot.110mb.com/library/gareggiare/ gareggiare] [http://olikka.110mb.com/library/jvc-digital.htm jvc digital video camcorder] [http://gekijuls.110mb.com/giulietta-romeo/ giulietta romeo e le tenebre] [http://nationavce.110mb.com/view/el-quseir.htm el quseir] [http://olikka.110mb.com/library/jeff-healey.htm jeff healey band live in montreux 1999] [http://gekijuls.110mb.com/modem-alcatel/ modem alcatel] [http://some-omeelse.110mb.com/data/mousse-t.htm mousse t emma] [http://olikka.110mb.com/library/voli-per.htm voli per amsterdam] [http://forever-your.110mb.com/data/come-robinson.htm come robinson crusoe] [http://mouse-zae.110mb.com/struggle.htm struggle] [http://trouble166.110mb.com/video-blue.htm video blue] [http://sister-sunshine.110mb.com/html/fotocamera-fuji/ fotocamera fuji s7000] [http://stitchesnglue.110mb.com/banchs-enrique.htm banchs enrique] [http://book-wench.110mb.com/text/ragazzo-senza/ ragazzo senza fortuna] [http://gekijuls.110mb.com/motorola-v/ motorola v600 configurazione] [http://ultra-creator.110mb.com/articles/toner-hp.htm toner hp 1010] [http://blue-olusha.110mb.com/library/iec/ iec] [http://some-omeelse.110mb.com/data/flip-flop.htm flip flop and fly] [http://ultra-creator.110mb.com/articles/la-coda.htm la coda dello scorpione] [http://mouse-zae.110mb.com/liceo-scientifico.htm liceo scientifico lamezia] [http://sister-sunshine.110mb.com/html/high-heel/ high heel galeries] [http://slavkamolot.110mb.com/library/nvidia-/ nvidia 6600 pcie] [http://forever-your.110mb.com/data/nivea-soares.htm nivea soares] [http://yeeden.110mb.com/data/esami-urine/ esami urine coltura] [http://sister-sunshine.110mb.com/html/quotazioni-toyota/ quotazioni toyota] [http://gekijuls.110mb.com/patronato-leone/ patronato leone xiii vicenza] [http://ultra-creator.110mb.com/articles/acqua-nuovi.htm acqua nuovi] [http://sneezingpops.110mb.com/sl-cordless/ sl440 cordless siemens] [http://unremig.110mb.com/assicurazioni-generali/ assicurazioni generali gorizia] [http://nationavce.110mb.com/view/il-pupazzo.htm il pupazzo] [http://gekijuls.110mb.com/hub-/ hub 24 porte] [http://sneezingpops.110mb.com/molto-largo/ molto largo] [http://funk-mastah-ion.110mb.com/data/western-digital.htm western digital raptor sata 10000] [http://sister-sunshine.110mb.com/html/fujifilm-finepix/ fujifilm finepix] [http://nationavce.110mb.com/view/cavo-scart.htm cavo scart accessori console] [http://book-wench.110mb.com/text/www-kinder/ www kinder com] [http://mouse-zae.110mb.com/import.htm import] [http://some-omeelse.110mb.com/data/marylin-dead.htm marylin dead] [http://mouse-zae.110mb.com/ostrica.htm ostrica] [http://blue-olusha.110mb.com/library/legge-telecamere/ legge telecamere a circuito chiuso] [http://olikka.110mb.com/library/settimo-cielo.htm settimo cielo sigla] [http://unremig.110mb.com/fov/ fov] [http://sister-sunshine.110mb.com/html/enid/ enid] [http://gekijuls.110mb.com/kia-sportage/ kia sportage anno 2001] [http://ultra-creator.110mb.com/articles/arkenoid.htm arkenoid] [http://lazythoughts.110mb.com/lib/viaccess-keys/ viaccess keys arabesque] [http://gekijuls.110mb.com/casablanca-vacanze/ casablanca vacanze] [http://nationavce.110mb.com/view/scx-samsung.htm scx4100 samsung] [http://slavkamolot.110mb.com/library/tattuaggi-dei/ tattuaggi dei vip] [http://mouse-zae.110mb.com/iqtest.htm iqtest] [http://trene-von-anty.110mb.com/description/easy-video.htm easy video joiner] [http://mouse-zae.110mb.com/jarre.htm jarre] [http://forever-your.110mb.com/data/hypertraxx.htm hypertraxx] [http://funk-mastah-ion.110mb.com/data/rondo-veneziano.htm rondo veneziano stay] [http://blue-olusha.110mb.com/library/galeria-de/ galeria de porno] [http://forever-your.110mb.com/data/screensaver-per.htm screensaver per nokia 6600] [http://olikka.110mb.com/library/power-pc.htm power pc computer] [http://some-omeelse.110mb.com/data/smoke-in.htm smoke in the wather] [http://stitchesnglue.110mb.com/zorronas-com.htm zorronas com] [http://yeeden.110mb.com/data/dr-/ dr 3000 hl 5140] [http://olikka.110mb.com/library/garmin-fish.htm garmin fish finder] [http://book-wench.110mb.com/text/compression-of/ compression of time] [http://nationavce.110mb.com/view/motorola-v.htm motorola v3 silver hs820] [http://olikka.110mb.com/library/firewire-box.htm firewire box] [http://gekijuls.110mb.com/nato-sbagliato/ nato sbagliato] [http://forever-your.110mb.com/data/le-situazioni.htm le situazioni di lui e lei disco 06] [http://sister-sunshine.110mb.com/html/ddr-ddr/ ddr ddr2] [http://slavkamolot.110mb.com/library/mo-vene/ mo vene natale] [http://yeeden.110mb.com/data/haljina/ haljina] [http://sister-sunshine.110mb.com/html/ati-/ ati 9800 agp 256mb] [http://dialed.110mb.com/small/prova-di/ prova di matematica] [http://stitchesnglue.110mb.com/studi-medici.htm studi medici golgi] [http://trouble166.110mb.com/insegnanti-di.htm insegnanti di religione a milano] [http://forever-your.110mb.com/data/dietologi.htm dietologi] [http://dialed.110mb.com/small/passat/ passat 25] [http://slavkamolot.110mb.com/library/vasi-resina/ vasi resina cassetta] [http://book-wench.110mb.com/text/playstation-cavo/ playstation cavo s video] [http://olikka.110mb.com/library/milonga-triste.htm milonga triste] [http://ultra-creator.110mb.com/articles/costume-arabo.htm costume arabo antico] [http://mouse-zae.110mb.com/levare-la.htm levare la cera] [http://lazythoughts.110mb.com/lib/sacro-e/ sacro e profano] [http://lazythoughts.110mb.com/lib/cartuccia-hp/ cartuccia hp 1320] [http://trouble166.110mb.com/progressivo.htm progressivo] [http://ultra-creator.110mb.com/articles/mark-knopfler.htm mark knopfler boom] [http://trouble166.110mb.com/fisher-price.htm fisher price giocattoli] [http://some-omeelse.110mb.com/data/la-notte.htm la notte dei generali segreti di guerra] [http://funk-mastah-ion.110mb.com/data/www-camping.htm www camping baia verde it] [http://dialed.110mb.com/small/toshiba-tecra/ toshiba tecra 8100] [http://yeeden.110mb.com/data/palmari-hx/ palmari hx4700] [http://mouse-zae.110mb.com/georg-micael.htm georg micael] [http://forever-your.110mb.com/data/gran-teft.htm gran teft auto] [http://book-wench.110mb.com/text/asus-gt/ asus 6600gt td] [http://some-omeelse.110mb.com/data/cat-stewens.htm cat stewens] [http://ultra-creator.110mb.com/articles/cartina-geografica.htm cartina geografica it] [http://trene-von-anty.110mb.com/description/polti.htm polti 701] [http://forever-your.110mb.com/data/mercedesbenz.htm mercedesbenz] [http://sister-sunshine.110mb.com/html/nev/ nev] [http://dialed.110mb.com/small/heroes-del/ heroes del silencio mpg] [http://unremig.110mb.com/rowenta/ rowenta 2000] [http://book-wench.110mb.com/text/antelope-cobbler/ antelope cobbler] [http://mouse-zae.110mb.com/croazia-istria.htm croazia istria] [http://lazythoughts.110mb.com/lib/movimento-centrale/ movimento centrale] [http://sneezingpops.110mb.com/disco-rigido/ disco rigido western digital] [http://trene-von-anty.110mb.com/description/my-friend.htm my friend hot mom] [http://nationavce.110mb.com/view/free-sexy.htm free sexy photo 4 women] [http://funk-mastah-ion.110mb.com/data/alignment-chieti.htm alignment chieti] [http://lazythoughts.110mb.com/lib/ricaricare-cartuccia/ ricaricare cartuccia epson] [http://nationavce.110mb.com/view/morte-di.htm morte di un poeta] [http://ultra-creator.110mb.com/articles/gare-con.htm gare con moto] [http://blue-olusha.110mb.com/library/winnig-eleven/ winnig eleven 8] [http://sneezingpops.110mb.com/quartieri-alti/ quartieri alti] [http://olikka.110mb.com/library/homonimos.htm homonimos] [http://blue-olusha.110mb.com/library/risultato-mondiale/ risultato mondiale calcio 2002] [http://blue-olusha.110mb.com/library/mp-tools/ mp tools] [http://forever-your.110mb.com/data/giochi-comleti.htm giochi comleti e belli da soldati] [http://lazythoughts.110mb.com/lib/blocki/ blocki] [http://gekijuls.110mb.com/villaggi-fuerteventura/ villaggi fuerteventura] [http://dialed.110mb.com/small/i-peter/ i peter punk] [http://sister-sunshine.110mb.com/html/offerta-lavoro/ offerta lavoro puglia] [http://sister-sunshine.110mb.com/html/fairouz/ fairouz] [http://nationavce.110mb.com/view/evanescence-anywhere.htm evanescence anywhere but home] [http://ultra-creator.110mb.com/articles/stampante-canon.htm stampante canon cp 220] [http://trouble166.110mb.com/la-notte.htm la notte di san lorenzo] [http://gekijuls.110mb.com/microprocesador-mas/ microprocesador mas actual para pc] [http://olikka.110mb.com/library/pirates-of.htm pirates of caribbean] [http://funk-mastah-ion.110mb.com/data/fernando-di.htm fernando di leo] [http://mouse-zae.110mb.com/gladiator.htm gladiator 4] [http://nationavce.110mb.com/view/prodotto-gastronomici.htm prodotto gastronomici] [http://yeeden.110mb.com/data/hc-/ hc 39 sony] [http://funk-mastah-ion.110mb.com/data/notizie-sulla.htm notizie sulla citta di mont saint michel] [http://sister-sunshine.110mb.com/html/pallone-football/ pallone football] [http://some-omeelse.110mb.com/data/fanny-bravo.htm fanny bravo] [http://slavkamolot.110mb.com/library/trova-le/ trova le caramelle] [http://lazythoughts.110mb.com/lib/portabiancheria-foppapedretti/ portabiancheria foppapedretti] [http://lazythoughts.110mb.com/lib/transworld-snowboarding/ transworld snowboarding] [http://some-omeelse.110mb.com/data/de-ce.htm de ce minti guta] [http://dialed.110mb.com/small/demons-wizards/ demons wizards] [http://sister-sunshine.110mb.com/html/italia-giappone/ italia giappone calcio] [http://blue-olusha.110mb.com/library/lo-spazzacamino/ lo spazzacamino] [http://slavkamolot.110mb.com/library/sfondi-gratis/ sfondi gratis per nokia 3100] [http://trene-von-anty.110mb.com/description/microsoft-intellimouse.htm microsoft intellimouse explorer] [http://funk-mastah-ion.110mb.com/data/dama-su.htm dama su internet] [http://book-wench.110mb.com/text/pessina-costruzioni/ pessina costruzioni] [http://some-omeelse.110mb.com/data/nvidia-quadro.htm nvidia quadro fx 3000] [http://stitchesnglue.110mb.com/mariu.htm mariu] [http://trene-von-anty.110mb.com/description/multivision-hex.htm multivision hex keys] [http://mouse-zae.110mb.com/wireless.htm wireless 2 4] [http://book-wench.110mb.com/text/un-nuovo/ un nuovo appuntamento con star trek] [http://stitchesnglue.110mb.com/frontline-combo.htm frontline combo gatto] [http://olikka.110mb.com/library/the-kitchen.htm the kitchen] [http://mouse-zae.110mb.com/vdata-ddr.htm vdata ddr 1gb 400 mhz] [http://trouble166.110mb.com/make-or.htm make or buy] [http://some-omeelse.110mb.com/data/volo-grecia.htm volo grecia] [http://some-omeelse.110mb.com/data/sfilate-moda.htm sfilate moda maglieria] [http://gekijuls.110mb.com/ragazzo-sant/ ragazzo sant] [http://trene-von-anty.110mb.com/description/film-on.htm film on line gratis] [http://unremig.110mb.com/dormire-a/ dormire a bologna] [http://stitchesnglue.110mb.com/reina-sobre.htm reina sobre mim] [http://blue-olusha.110mb.com/library/sony-ifrk/ sony if240rk] [http://olikka.110mb.com/library/samsung-sf.htm samsung sf 340] [http://olikka.110mb.com/library/transfor.htm transfor] [http://sister-sunshine.110mb.com/html/somalia/ somalia] [http://sneezingpops.110mb.com/istituto-europeo/ istituto europeo del design torino] [http://ultra-creator.110mb.com/articles/concessionario-mercedes.htm concessionario mercedes torino] [http://funk-mastah-ion.110mb.com/data/incontri-a.htm incontri a fermo] [http://lazythoughts.110mb.com/lib/walkman-cd/ walkman cd] [http://funk-mastah-ion.110mb.com/data/nuovo-samsung.htm nuovo samsung] [http://blue-olusha.110mb.com/library/adsl-us/ adsl us robotics] [http://book-wench.110mb.com/text/www-beasty/ www beasty boys com] [http://blue-olusha.110mb.com/library/hp-media/ hp media center] [http://slavkamolot.110mb.com/library/mercedes-c/ mercedes c 180 sw sport] [http://olikka.110mb.com/library/chat-umbre.htm chat umbre] [http://book-wench.110mb.com/text/hp-gps/ hp gps palmari] [http://trene-von-anty.110mb.com/description/vallisneria.htm vallisneria] [http://olikka.110mb.com/library/eva-morales.htm eva morales] [http://ultra-creator.110mb.com/articles/telecamera-retromarcia.htm telecamera retromarcia] [http://funk-mastah-ion.110mb.com/data/suocera-crociera.htm suocera crociera] [http://sister-sunshine.110mb.com/html/festa-della/ festa della ceramica raku] [http://book-wench.110mb.com/text/hunzinker-nuda/ hunzinker nuda] [http://blue-olusha.110mb.com/library/mature-boy/ mature boy] [http://book-wench.110mb.com/text/ageof-empires/ ageof empires2] [http://trouble166.110mb.com/cloroformio.htm cloroformio] [http://nationavce.110mb.com/view/free-hard.htm free hard video] {{task}}
Compute the sum of the elements of an Array

==[[4D]]==
[[Category:4D]]

ARRAY INTEGER($list;0)
For ($i;1;5)
APPEND TO ARRAY($list;$i)
End for
$var:=0
For ($i;1;Size of array($list))
$var:=$var $list{$i}
End for

==[[Ada]]==
[[Category:Ada]]

Int_Array : array(1..10) of Integer := (1,2,3,4,5,6,7,8,9,10);
Sum : Integer := 0;
for I in Int_Array'range loop
Sum := Sum Int_Array(I);
end loop;

==[[AppleScript]]==
[[Category:AppleScript]]

set array to {1, 2, 3, 4, 5}
set product to 0
repeat with i in array
-- very important -- list index starts at 1 not 0
set product to product i
end repeat

==[[BASIC]]==
[[Category:BASIC]]

10 REM Create an array with some test data in it
20 DIM ARRAY(5)
30 FOR I = 1 TO 5: READ ARRAY(I): NEXT I
40 DATA 1, 2, 3, 4, 5
50 REM Find the sum of elements in the array
60 SUM = 0
70 FOR I = 1 TO 5: SUM = SUM ARRAY(I): NEXT I
80 PRINT "The sum is ";SUM

==[[C plus plus|C ]]==
[[Category:C plus plus]]

'''Compiler:''' [[GNU Compiler Collection|gcc]] 4.0.2

int
main( int argc, char* argv[] )
{
int list[] = { 1, 2, 3 } ;
int sum = 0 ;
for( int i = 0 ; i < 3 ; i )
{
sum = list[i];
}
}


Alternate

#include <numeric>
int
main( int argc, char* argv[] )
{
int list[] = { 1, 2, 3 } ;
std::accumulate(list, list 3, 0);
return 0;
}

template alternative

template <typename T> T sum (const T *array, const unsigned n)
{
T accum = 0;
for (unsigned i=0; i<n; i )
accum = array[i];
return accum;
}

#include <iostream>
using std::cout;
using std::endl;

int main (void)
{
int aint[] = {1, 2, 3};
cout << sum(aint,3) << endl;
float aflo[] = {1.1, 2.02, 3.003, 4.0004};
cout << sum(aflo,4) << endl;
return 0;
}

==[[C sharp|C#]]==
[[Category:C sharp|C#]]

int value = 0;
int[] arg = { 1,2,3,4,5 };
int arg_length = arg.Length;

for( int i = 0; i < arg_length; i )
value = arg[i];


Alternate

int sum = 0;
int[] arg = { 1, 2, 3, 4, 5 };
foreach (int value in arg) sum = value;

==[[Clean]]==
[[Category:Clean]]
array = {1, 2, 3, 4, 5}
Start = sum [x \\ x <-: array]

==[[ColdFusion]]==
[[Category:ColdFusion]]

<cfset myArray = listToArray("1,2,3,4,5")>
#arraySum(myArray)#

==[[Common Lisp]]==
[[Category:Common Lisp]]

(defparameter *data* #(1 2 3 4 5))
(reduce #' *data*)

==[[Delphi]]==
[[Category:Delphi]

'''Compiler:''' [[All]]

var
Ints : array[1..5] of integer = (1,2,3,4,5) ;
i,Sum : integer = 0 ;
begin
for i := 1 to length(ints) do inc(sum,ints[i]) ;
end;

==[[E]]==
[[Category:E]]

pragma.enable("accumulator")
accum 0 for x in [1,2,3,4,5] { _ x }

==[[Erlang]]==
[[Category:Erlang]]

Using the standard libraries:

% create the list:
L = lists:seq(1, 10).

% and compute its sum:
S = lists:sum(L).

Or defining our own versions:

-module(list_sum).
-export([sum_rec/1, sum_tail/1]).

% recursive definition:
sum_rec([]) ->
0;
sum_rec([Head|Tail]) ->
Head sum_rec(Tail).

% tail-recursive definition:
sum_tail(L) ->
sum_tail(L, 0).
sum_tail([], Acc) ->
Acc;
sum_tail([Head|Tail], Acc) ->
sum_tail(Tail, Head Acc).

==[[Forth]]==
[[Category:Forth]]

: sum ( addr cnt -- n )
0 -rot
cells bounds do i @ cell loop ;


==[[FreeBASIC]]==
[[Category:FreeBASIC]]

dim array(4) as integer = { 1, 2, 3, 4, 5 }

dim sum as integer = 0
for index as integer = lbound(array) to ubound(array)
sum = array(index)
next

==[[Haskell]]==
[[Category:Haskell]]

let values = [1..10]
sum values -- the easy way
foldl ( ) 0 values -- the hard way

==[[IDL]]==
[[Category:IDL]]

result = total(array)

==[[Java]]==
[[Category:Java]]

int value = 0;
int[] arg = new int[] { 1,2,3,4,5 };
for (int i: arg)
value = i;

==[[JavaScript]]==
[[Category:JavaScript]]

var array = [1, 2, 3, 4, 5];
var sum = 0;
for(var i in array)
sum = array[i];

==[[Perl]]==
[[Category:Perl]]

'''Interpeter:''' [[Perl]]
my $var;
my @list = (1, 2, 3);
$var = $_ for (@list);

Alternate

'''Libraries:''' List::Util

use List::Util 'sum';
my @list = (1, 2, 3);
my $var = sum @list;

Alternate

'''# TMTOWTDI'''
my $acc = 0;
my @list = qw(1 2 3)
map { $acc = $_ } @list

==[[PHP]]==
[[Category:PHP]]

$list = array(1,2,3,4,5,6,7,8,9);
echo array_sum($list);

==[[Pop11]]==
[[Category:Pop11]]

Simple loop:

lvars i, sum = 0, ar = {1 2 3 4 5 6 7 8 9};
for i from 1 to length(ar) do
ar(i) sum -> sum;
endfor;

One can alternativly use second order iterator:

lvars sum = 0, ar = {1 2 3 4 5 6 7 8 9};
appdata(ar, procedure(x); x sum -> sum; endprocedure);

==[[Prolog]]==
[[Category:Prolog]]
sum([],0).
sum([H|T],X) :- sum(T,Y), X is H Y.
test
:- sum([1,2,3,4,5,6,7,8,9],X).
X =45;

==[[Python]]==
[[Category:Python]]

'''Interpeter:''' [[Python]] 2.5
total = sum([1, 2, 3, 4, 5, 6, 7, 8, 9])

==[[Ruby]]==
[[Category:Ruby]]

ary = [1,2,3,4,5]
sum = ary.inject{|currentSum,element|currentSum element}
# => 15

== [[Scala]]==
[[Category:Scala]]
val array = Array(1,2,3,4,5)
val sum = array.foldLeft(0)(_ _)

This is a shortcut for
val sum = array.foldLeft(0){(currentSum, element) => currentSum element}

==[[Seed7]]==
[[Category:Seed7]]

const func integer: sumArray (in array integer: valueArray) is func
result
var integer: sum is 0;
local
var integer: value is 0;
begin
for value range valueArray do
sum := value;
end for;
end func;

Call this function with:

writeln(sumArray([](1, 2, 3, 4, 5)));

==[[Standard ML]]==
[[Category:Standard ML]]

val array = [1,2,3,4,5];
foldl op 0 array;

==[[Tcl]]==
[[Category:Tcl]]

Assuming the values are in a list named <tt>listname</tt>:

set result [expr [join $listname ]]

==[[Toka]]==
[[Category:Toka]]

[ ( array size -- sum )
>r 0 r> [ over i swap get-element ] iterate nip ] is sum-array

==[[UNIX Shell]]==
[[Category:UNIX Shell]]

'''Interpreter:''' NetBSD 3.0's ash

From an internal variable, $IFS delimited:

sum=0
list="1 2 3"
for n in $list
do sum="$(($sum $n))"
done
echo $sum

From the argument list (ARGV):

sum=0
for n
do sum="$(($sum $n))"
done
echo $sum

From STDIN, one integer per line:

sum=0
while read n
do sum="$(($sum $n))"
done
echo $sum

'''Interpreter:''' GNU bash, version 3.2.0(1)-release (i386-unknown-freebsd6.1)

From variable:

LIST='20 20 2';
SUM=0;
for i in $LIST; do
SUM=$[$SUM $i];
done;
echo $SUM

Latest revision as of 08:39, 2 July 2010