Sum of Array: Difference between revisions

From Rosetta Code
Content added Content deleted
(rm spam)
mNo edit summary
Line 1: Line 1:
[http://alvonina.ifrance.com/img/styles/boss-me/ boss me50] [http://alvonina.ifrance.com/img/styles/dvdtompeg/ dvdtompeg] [http://twobit77.ifrance.com/description/lib/scambio-di/ scambio di foto] [http://hethrfethr77.ifrance.com/content/view/de-villars/ de villars] [http://bladiblada.ifrance.com/resources/articles/x-country.htm x country fencing] [http://twobit77.ifrance.com/description/lib/super-monkey/ super monkey ball confermato su nintendo ds] [http://nettikyzarc.ifrance.com/content/view/musica-wav/ musica wav] [http://dgdeeper.ifrance.com/img/styles/krugger.htm krugger] [http://soundwave106.ifrance.com/resources/articles/splinter-cell/ splinter cell soluzione] [http://nettikyzarc.ifrance.com/content/view/eurobarre/ eurobarre] [http://nettikyzarc.ifrance.com/content/view/vendita-gioielli/ vendita gioielli] [http://toupheefee.ifrance.com/text/directory/utricularia/ utricularia] [http://kiravina.ifrance.com/html/ragazze-.htm ragazze 18 it] [http://bang-sigh.ifrance.com/images/small/player-dvx/ player dvx] [http://bladiblada.ifrance.com/resources/articles/m.htm m40 145] [http://dgdeeper.ifrance.com/img/styles/dont-cray.htm dont cray for me argentina] [http://itsmeladuh.ifrance.com/content/view/dvd-film/ dvd film eva henger] [http://blackblackblack.ifrance.com/lib/accessori-palm.htm accessori palm v] [http://toupheefee.ifrance.com/text/directory/trayler/ trayler] [http://twobit77.ifrance.com/description/lib/baby-cakes/ baby cakes] [http://kirizz.ifrance.com/html/macchine-produzione.htm macchine produzione carta torino] [http://nettikyzarc.ifrance.com/content/view/brondi-max/ brondi max cordless] [http://hethrfethr77.ifrance.com/content/view/feetlover/ feetlover] [http://soundwave106.ifrance.com/resources/articles/concessionari-caldaie/ concessionari caldaie beretta a messina e provinci] [http://mania555.ifrance.com/img/styles/www-videorent.htm www videorent net] [http://faithib.ifrance.com/description/lib/rafting.htm rafting] [http://sarah531.ifrance.com/lib/sirolo-campeggi.htm sirolo campeggi] [http://kiravina.ifrance.com/html/mondeo-benzina.htm mondeo benzina] [http://soundwave106.ifrance.com/resources/articles/con-publiweb/ con publiweb english] [http://sarah531.ifrance.com/lib/ccd.htm ccd 2] [http://kirizz.ifrance.com/html/kamasoutra.htm kamasoutra] [http://kirizz.ifrance.com/html/ein-zwei.htm ein zwei polizei modo] [http://kiravina.ifrance.com/html/scheda-umts.htm scheda umts pcmcia] [http://crazybird027.ifrance.com/view/new/nika-veneto/ nika veneto] [http://csmith06.ifrance.com/lib/albergo-barcellona.htm albergo barcellona centro] [http://reikofanel.ifrance.com/web/slave.htm slave] [http://kiravina.ifrance.com/html/prestito-personali.htm prestito personali prestito personale] [http://kirizz.ifrance.com/html/irac.htm irac] [http://bang-sigh.ifrance.com/images/small/voli-alessandria/ voli alessandria] [http://mania555.ifrance.com/img/styles/mne.htm mne] [http://itsmeladuh.ifrance.com/content/view/wifi-finder/ wifi finder] [http://reikofanel.ifrance.com/web/z-.htm z 40 casio] [http://mania555.ifrance.com/img/styles/morissette-dogma.htm morissette dogma] [http://crazybird027.ifrance.com/view/new/sneakers-costume/ sneakers costume national] [http://reikofanel.ifrance.com/web/no-name.htm no name] [http://bang-sigh.ifrance.com/images/small/curtian-falls/ curtian falls] [http://bladiblada.ifrance.com/resources/articles/canon-eos.htm canon eos 350d solo corpo] [http://kirizz.ifrance.com/html/walou.htm walou] [http://csmith06.ifrance.com/lib/sviluppa-numeri.htm sviluppa numeri superenalotto] [http://dgdeeper.ifrance.com/img/styles/banca-cariplo.htm banca cariplo] [http://crazybird027.ifrance.com/view/new/toshiba-lcd/ toshiba lcd 17] [http://toupheefee.ifrance.com/text/directory/mr-snooze/ mr snooze] [http://faithib.ifrance.com/description/lib/ronda.htm ronda] [http://twobit77.ifrance.com/description/lib/testi-musicali/ testi musicali di franco ricciardi] [http://faithib.ifrance.com/description/lib/midi-i.htm midi i can do it] [http://hethrfethr77.ifrance.com/content/view/www-paso/ www paso adelante it] [http://itsmeladuh.ifrance.com/content/view/epl-l/ epl 6200l toner] [http://dgdeeper.ifrance.com/img/styles/go.htm go] [http://itsmeladuh.ifrance.com/content/view/western-digital/ western digital passport 80] [http://kirizz.ifrance.com/html/gps-e.htm gps e accessori palm] [http://crazybird027.ifrance.com/view/new/planet-modem/ planet modem] [http://toupheefee.ifrance.com/text/directory/marcita/ marcita] [http://asing-argirl.ifrance.com/images/small/www-google/ www google i t] [http://kiravina.ifrance.com/html/prodotti-kanebo.htm prodotti kanebo inner balance] [http://bang-sigh.ifrance.com/images/small/pix-cisco/ pix cisco] [http://soundwave106.ifrance.com/resources/articles/calendario-di/ calendario di mascia 2005] [http://itsmeladuh.ifrance.com/content/view/chacalon-sus/ chacalon sus videos] [http://blackblackblack.ifrance.com/lib/conigliette-play.htm conigliette play boy] [http://kirizz.ifrance.com/html/yeti.htm yeti] [http://bladiblada.ifrance.com/resources/articles/escort-trento.htm escort trento] [http://kirizz.ifrance.com/html/samtron-monitor.htm samtron monitor lcd 19] [http://blackblackblack.ifrance.com/lib/gepe-extreme.htm gepe extreme] [http://crazybird027.ifrance.com/view/new/gancio-per/ gancio per sacco] [http://hethrfethr77.ifrance.com/content/view/mia-ya/ mia ya hii] [http://dgdeeper.ifrance.com/img/styles/alps-bolzanobozen.htm alps bolzanobozen] [http://kirizz.ifrance.com/html/eventi-pp.htm eventi pp] [http://hethrfethr77.ifrance.com/content/view/impiccagione/ impiccagione] [http://sarah531.ifrance.com/lib/go-the.htm go the distance] [http://kiravina.ifrance.com/html/mercedes-c.htm mercedes c 200 kompressor] [http://alvonina.ifrance.com/img/styles/muvo-micro/ muvo micro n200] [http://blackblackblack.ifrance.com/lib/cartoni-cinesi.htm cartoni cinesi] [http://alvonina.ifrance.com/img/styles/portatili-apple/ portatili apple] [http://soundwave106.ifrance.com/resources/articles/w-w/ w w w tinhdonphuong com] [http://soundwave106.ifrance.com/resources/articles/prenotazione-hotel/ prenotazione hotel ginevra] [http://asing-argirl.ifrance.com/images/small/estazioni-superenalotto/ estazioni superenalotto] [http://twobit77.ifrance.com/description/lib/musica-computer/ musica computer] [http://sarah531.ifrance.com/lib/voli-latina.htm voli latina] [http://dgdeeper.ifrance.com/img/styles/latin-com.htm latin com] [http://dgdeeper.ifrance.com/img/styles/dale-don.htm dale don dale mp3] [http://itsmeladuh.ifrance.com/content/view/xc-/ xc 70 volvo km 0] [http://bang-sigh.ifrance.com/images/small/grecia-agosto/ grecia agosto] [http://toupheefee.ifrance.com/text/directory/asheville-cose/ asheville cose fare] [http://asing-argirl.ifrance.com/images/small/udp-stream/ udp stream player 0 2 beta exe] [http://nettikyzarc.ifrance.com/content/view/traccia-matematica/ traccia matematica scentifico] [http://blackblackblack.ifrance.com/lib/come-estrarre.htm come estrarre i file bin] [http://kirizz.ifrance.com/html/prigioneri-iraq.htm prigioneri iraq] [http://nettikyzarc.ifrance.com/content/view/granby/ granby] [http://alvonina.ifrance.com/img/styles/liquori-grappe/ liquori grappe e] [http://nettikyzarc.ifrance.com/content/view/hairy-mature/ hairy mature] [http://bang-sigh.ifrance.com/images/small/new-york/ new york underground] [http://csmith06.ifrance.com/lib/ivi-queen.htm ivi queen] [http://kiravina.ifrance.com/html/battle-castle.htm battle castle] [http://bladiblada.ifrance.com/resources/articles/ufficio-acqui.htm ufficio acqui terme] [http://hethrfethr77.ifrance.com/content/view/firefox/ firefox] [http://asing-argirl.ifrance.com/images/small/lake-the/ lake the life] [http://mania555.ifrance.com/img/styles/gioco-oni.htm gioco oni] [http://blackblackblack.ifrance.com/lib/quickcam-per.htm quickcam per notebook pro] [http://alvonina.ifrance.com/img/styles/philips-az/ philips az 1310] [http://asing-argirl.ifrance.com/images/small/grugliasco/ grugliasco] [http://bang-sigh.ifrance.com/images/small/casio-exilim/ casio exilim ex z500] [http://kirizz.ifrance.com/html/tehom-olidata.htm tehom olidata portatili] [http://dgdeeper.ifrance.com/img/styles/plotting.htm plotting] [http://kiravina.ifrance.com/html/dtt-humax.htm dtt humax 4000] [http://bang-sigh.ifrance.com/images/small/irdeto-keys/ irdeto keys] [http://faithib.ifrance.com/description/lib/bella-cocciante.htm bella cocciante] [http://hethrfethr77.ifrance.com/content/view/black-sabbat/ black sabbat] [http://bang-sigh.ifrance.com/images/small/depoprovera-im/ depoprovera im 1 ml 50 mg] [http://twobit77.ifrance.com/description/lib/p/ p4 640] [http://reikofanel.ifrance.com/web/modell-heckscher.htm modell heckscher] [http://csmith06.ifrance.com/lib/catarri-operazione.htm catarri operazione alle orecchie] [http://kiravina.ifrance.com/html/together-forever.htm together forever] [http://sarah531.ifrance.com/lib/george-micheal.htm george micheal amazing download] [http://csmith06.ifrance.com/lib/la-fattoria.htm la fattoria degli animali] [http://soundwave106.ifrance.com/resources/articles/software-programmazione/ software programmazione java] [http://sarah531.ifrance.com/lib/www-padremarcelorossi.htm www padremarcelorossi com br] [http://dgdeeper.ifrance.com/img/styles/foto-vecchie.htm foto vecchie vogliose] [http://kirizz.ifrance.com/html/enya-may.htm enya may it be] [http://sarah531.ifrance.com/lib/pneumatici-a.htm pneumatici a grosseto] [http://dgdeeper.ifrance.com/img/styles/duhamel-georges.htm duhamel georges] [http://sarah531.ifrance.com/lib/behringer-ha.htm behringer ha8000] [http://sarah531.ifrance.com/lib/lizzi-mc.htm lizzi mc guire] [http://dgdeeper.ifrance.com/img/styles/voli-alpieagles.htm voli alpieagles] [http://reikofanel.ifrance.com/web/lavatrice-siltal.htm lavatrice siltal] [http://dgdeeper.ifrance.com/img/styles/webcam-con.htm webcam con zoom] [http://toupheefee.ifrance.com/text/directory/fratelli-diitalia/ fratelli diitalia] [http://alvonina.ifrance.com/img/styles/el-quesir/ el quesir vacanze] [http://twobit77.ifrance.com/description/lib/orologio-casio/ orologio casio roma] [http://crazybird027.ifrance.com/view/new/simo-e/ simo e kri] [http://reikofanel.ifrance.com/web/partito-socialista.htm partito socialista italiano] [http://csmith06.ifrance.com/lib/lago-sirio.htm lago sirio] [http://twobit77.ifrance.com/description/lib/parsons-sir/ parsons sir charles algernon] [http://blackblackblack.ifrance.com/lib/hd.htm hd 120] [http://dgdeeper.ifrance.com/img/styles/don-camillo.htm don camillo box] [http://bang-sigh.ifrance.com/images/small/totti-ilary/ totti ilary] [http://soundwave106.ifrance.com/resources/articles/juegos-en/ juegos en red gratis] [http://faithib.ifrance.com/description/lib/cryptograms.htm cryptograms] [http://twobit77.ifrance.com/description/lib/sabian/ sabian] [http://mania555.ifrance.com/img/styles/settimana-bianche.htm settimana bianche last minute] [http://reikofanel.ifrance.com/web/piccolissima-serenata.htm piccolissima serenata] [http://soundwave106.ifrance.com/resources/articles/tesine-doping/ tesine doping] [http://alvonina.ifrance.com/img/styles/continentale-hotel/ continentale hotel trieste] [http://mania555.ifrance.com/img/styles/sardegna-vacanza.htm sardegna vacanza affitto] [http://itsmeladuh.ifrance.com/content/view/jessica-simpon/ jessica simpon] [http://bladiblada.ifrance.com/resources/articles/un-posto.htm un posto al sole rai it] [http://alvonina.ifrance.com/img/styles/cineromanzo/ cineromanzo] [http://crazybird027.ifrance.com/view/new/venuta/ venuta] [http://toupheefee.ifrance.com/text/directory/migliori-tatoo/ migliori tatoo] [http://mania555.ifrance.com/img/styles/agriturismo-lerici.htm agriturismo lerici] [http://hethrfethr77.ifrance.com/content/view/multifunzione-canon/ multifunzione canon fax colori] [http://mania555.ifrance.com/img/styles/cafferty-heart.htm cafferty heart] [http://soundwave106.ifrance.com/resources/articles/norah-jones/ norah jones come away with me] [http://toupheefee.ifrance.com/text/directory/commento-di/ commento di ed e subito sera di salvato] [http://blackblackblack.ifrance.com/lib/balada-para.htm balada para un loco] [http://asing-argirl.ifrance.com/images/small/masterizzatore-dvd/ masterizzatore dvd waitec] [http://kiravina.ifrance.com/html/piano-taglio.htm piano taglio] [http://faithib.ifrance.com/description/lib/mario-venturi.htm mario venturi] [http://twobit77.ifrance.com/description/lib/extreme-serie/ extreme serie] [http://mania555.ifrance.com/img/styles/quintet.htm quintet] [http://nettikyzarc.ifrance.com/content/view/lavatrice-compatta/ lavatrice compatta rex] [http://alvonina.ifrance.com/img/styles/the-documentary/ the documentary] [http://kirizz.ifrance.com/html/rayban-aviator.htm rayban aviator 3250] [http://bladiblada.ifrance.com/resources/articles/dior-poison.htm dior poison tendre] [http://hethrfethr77.ifrance.com/content/view/valentine-appuntamento/ valentine appuntamento con la morte film] [http://twobit77.ifrance.com/description/lib/caniegatti/ caniegatti] [http://kirizz.ifrance.com/html/pianoforte-steinway.htm pianoforte steinway] [http://dgdeeper.ifrance.com/img/styles/konica-minolta.htm konica minolta pagepro 1250w] [http://twobit77.ifrance.com/description/lib/canzoni-stonate/ canzoni stonate] [http://bladiblada.ifrance.com/resources/articles/audio-research.htm audio research] [http://twobit77.ifrance.com/description/lib/ps-max/ ps2 max drive] [http://alvonina.ifrance.com/img/styles/dischi-dvd/ dischi dvd ram vergini] [http://kirizz.ifrance.com/html/estrazione-superenalotto.htm estrazione superenalotto 11 9 04] [http://asing-argirl.ifrance.com/images/small/amore-e/ amore e petrolio] [http://kirizz.ifrance.com/html/bachata-e.htm bachata e merengue] [http://csmith06.ifrance.com/lib/kungfu.htm kungfu] [http://alvonina.ifrance.com/img/styles/heulandite/ heulandite] [http://kiravina.ifrance.com/html/braun-silk.htm braun silk epil] [http://nettikyzarc.ifrance.com/content/view/bloco-di/ bloco di blank] [http://kirizz.ifrance.com/html/http-www.htm http www tu6genova it] [http://dgdeeper.ifrance.com/img/styles/soluzioni-per.htm soluzioni per giochi pc] [http://bladiblada.ifrance.com/resources/articles/black-vampires.htm black vampires] [http://sarah531.ifrance.com/lib/www-mega.htm www mega2 cl] [http://bladiblada.ifrance.com/resources/articles/video-don.htm video don omar] [http://twobit77.ifrance.com/description/lib/vga-nvidia/ vga nvidia] [http://crazybird027.ifrance.com/view/new/ferari/ ferari] [http://asing-argirl.ifrance.com/images/small/stray-cat/ stray cat strut] [http://toupheefee.ifrance.com/text/directory/modelos-masculinos/ modelos masculinos] [http://soundwave106.ifrance.com/resources/articles/sitecom/ sitecom] [http://mania555.ifrance.com/img/styles/lemmings-paintball.htm lemmings paintball] [http://dgdeeper.ifrance.com/img/styles/pensione-anzianita.htm pensione anzianita] [http://blackblackblack.ifrance.com/lib/ultimate-spiderman.htm ultimate spiderman in foto e video] {{task}}
{{task}}
Compute the sum of the elements of an Array
Compute the sum of the elements of an Array


Line 11: Line 11:
$var:=0
$var:=0
For ($i;1;Size of array($list))
For ($i;1;Size of array($list))
$var:=$var+$list{$i}
$var:=$var $list{$i}
End for
End for


Line 20: Line 20:
Sum : Integer := 0;
Sum : Integer := 0;
for I in Int_Array'range loop
for I in Int_Array'range loop
Sum := Sum + Int_Array(I);
Sum := Sum Int_Array(I);
end loop;
end loop;


Line 30: Line 30:
repeat with i in array
repeat with i in array
-- very important -- list index starts at 1 not 0
-- very important -- list index starts at 1 not 0
set product to product + i
set product to product i
end repeat
end repeat


Line 42: Line 42:
50 REM Find the sum of elements in the array
50 REM Find the sum of elements in the array
60 SUM = 0
60 SUM = 0
70 FOR I = 1 TO 5: SUM = SUM + ARRAY(I): NEXT I
70 FOR I = 1 TO 5: SUM = SUM ARRAY(I): NEXT I
80 PRINT "The sum is ";SUM
80 PRINT "The sum is ";SUM


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


Line 55: Line 55:
int list[] = { 1, 2, 3 } ;
int list[] = { 1, 2, 3 } ;
int sum = 0 ;
int sum = 0 ;
for( int i = 0 ; i < 3 ; i++ )
for( int i = 0 ; i < 3 ; i )
{
{
sum += list[i];
sum = list[i];
}
}
}
}
Line 69: Line 69:
{
{
int list[] = { 1, 2, 3 } ;
int list[] = { 1, 2, 3 } ;
std::accumulate(list, list + 3, 0);
std::accumulate(list, list 3, 0);
return 0;
return 0;
}
}
Line 78: Line 78:
{
{
T accum = 0;
T accum = 0;
for (unsigned i=0; i<n; i++)
for (unsigned i=0; i<n; i )
accum += array[i];
accum = array[i];
return accum;
return accum;
}
}
Line 103: Line 103:
int arg_length = arg.Length;
int arg_length = arg.Length;


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




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


==[[Clean]]==
==[[Clean]]==
Line 128: Line 128:


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


==[[Delphi]]==
==[[Delphi]]==
Line 146: Line 146:


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


==[[Erlang]]==
==[[Erlang]]==
Line 168: Line 168:
0;
0;
sum_rec([Head|Tail]) ->
sum_rec([Head|Tail]) ->
Head + sum_rec(Tail).
Head sum_rec(Tail).


% tail-recursive definition:
% tail-recursive definition:
Line 176: Line 176:
Acc;
Acc;
sum_tail([Head|Tail], Acc) ->
sum_tail([Head|Tail], Acc) ->
sum_tail(Tail, Head + Acc).
sum_tail(Tail, Head Acc).


==[[Forth]]==
==[[Forth]]==
Line 183: Line 183:
: sum ( addr cnt -- n )
: sum ( addr cnt -- n )
0 -rot
0 -rot
cells bounds do i @ + cell +loop ;
cells bounds do i @ cell loop ;




Line 193: Line 193:
dim sum as integer = 0
dim sum as integer = 0
for index as integer = lbound(array) to ubound(array)
for index as integer = lbound(array) to ubound(array)
sum += array(index)
sum = array(index)
next
next


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


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


==[[JavaScript]]==
==[[JavaScript]]==
Line 222: Line 222:
var sum = 0;
var sum = 0;
for(var i in array)
for(var i in array)
sum += array[i];
sum = array[i];


==[[Perl]]==
==[[Perl]]==
Line 230: Line 230:
my $var;
my $var;
my @list = (1, 2, 3);
my @list = (1, 2, 3);
$var += $_ for (@list);
$var = $_ for (@list);


Alternate
Alternate
Line 245: Line 245:
my $acc = 0;
my $acc = 0;
my @list = qw(1 2 3)
my @list = qw(1 2 3)
map { $acc += $_ } @list
map { $acc = $_ } @list


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


Line 266: Line 266:


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


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


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


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


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


==[[Seed7]]==
==[[Seed7]]==
Line 307: Line 307:
begin
begin
for value range valueArray do
for value range valueArray do
sum +:= value;
sum := value;
end for;
end for;
end func;
end func;
Line 319: Line 319:


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


==[[Tcl]]==
==[[Tcl]]==
Line 326: Line 326:
Assuming the values are in a list named <tt>listname</tt>:
Assuming the values are in a list named <tt>listname</tt>:


set result [expr [join $listname +]]
set result [expr [join $listname ]]


==[[Toka]]==
==[[Toka]]==
Line 332: Line 332:


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


==[[UNIX Shell]]==
==[[UNIX Shell]]==
Line 344: Line 344:
list="1 2 3"
list="1 2 3"
for n in $list
for n in $list
do sum="$(($sum + $n))"
do sum="$(($sum $n))"
done
done
echo $sum
echo $sum
Line 352: Line 352:
sum=0
sum=0
for n
for n
do sum="$(($sum + $n))"
do sum="$(($sum $n))"
done
done
echo $sum
echo $sum
Line 360: Line 360:
sum=0
sum=0
while read n
while read n
do sum="$(($sum + $n))"
do sum="$(($sum $n))"
done
done
echo $sum
echo $sum
Line 371: Line 371:
SUM=0;
SUM=0;
for i in $LIST; do
for i in $LIST; do
SUM=$[$SUM + $i];
SUM=$[$SUM $i];
done;
done;
echo $SUM
echo $SUM

Revision as of 09:41, 4 September 2007

boss me50 dvdtompeg scambio di foto de villars x country fencing super monkey ball confermato su nintendo ds musica wav krugger splinter cell soluzione eurobarre vendita gioielli utricularia ragazze 18 it player dvx m40 145 dont cray for me argentina dvd film eva henger accessori palm v trayler baby cakes macchine produzione carta torino brondi max cordless feetlover concessionari caldaie beretta a messina e provinci www videorent net rafting sirolo campeggi mondeo benzina con publiweb english ccd 2 kamasoutra ein zwei polizei modo scheda umts pcmcia nika veneto albergo barcellona centro slave prestito personali prestito personale irac voli alessandria mne wifi finder z 40 casio morissette dogma sneakers costume national no name curtian falls canon eos 350d solo corpo walou sviluppa numeri superenalotto banca cariplo toshiba lcd 17 mr snooze ronda testi musicali di franco ricciardi midi i can do it www paso adelante it epl 6200l toner go western digital passport 80 gps e accessori palm planet modem marcita www google i t prodotti kanebo inner balance pix cisco calendario di mascia 2005 chacalon sus videos conigliette play boy yeti escort trento samtron monitor lcd 19 gepe extreme gancio per sacco mia ya hii alps bolzanobozen eventi pp impiccagione go the distance mercedes c 200 kompressor muvo micro n200 cartoni cinesi portatili apple w w w tinhdonphuong com prenotazione hotel ginevra estazioni superenalotto musica computer voli latina latin com dale don dale mp3 xc 70 volvo km 0 grecia agosto asheville cose fare udp stream player 0 2 beta exe traccia matematica scentifico come estrarre i file bin prigioneri iraq granby liquori grappe e hairy mature new york underground ivi queen battle castle ufficio acqui terme firefox lake the life gioco oni quickcam per notebook pro philips az 1310 grugliasco casio exilim ex z500 tehom olidata portatili plotting dtt humax 4000 irdeto keys bella cocciante black sabbat depoprovera im 1 ml 50 mg p4 640 modell heckscher catarri operazione alle orecchie together forever george micheal amazing download la fattoria degli animali software programmazione java www padremarcelorossi com br foto vecchie vogliose enya may it be pneumatici a grosseto duhamel georges behringer ha8000 lizzi mc guire voli alpieagles lavatrice siltal webcam con zoom fratelli diitalia el quesir vacanze orologio casio roma simo e kri partito socialista italiano lago sirio parsons sir charles algernon hd 120 don camillo box totti ilary juegos en red gratis cryptograms sabian settimana bianche last minute piccolissima serenata tesine doping continentale hotel trieste sardegna vacanza affitto jessica simpon un posto al sole rai it cineromanzo venuta migliori tatoo agriturismo lerici multifunzione canon fax colori cafferty heart norah jones come away with me commento di ed e subito sera di salvato balada para un loco masterizzatore dvd waitec piano taglio mario venturi extreme serie quintet lavatrice compatta rex the documentary rayban aviator 3250 dior poison tendre valentine appuntamento con la morte film caniegatti pianoforte steinway konica minolta pagepro 1250w canzoni stonate audio research ps2 max drive dischi dvd ram vergini estrazione superenalotto 11 9 04 amore e petrolio bachata e merengue kungfu heulandite braun silk epil bloco di blank http www tu6genova it soluzioni per giochi pc black vampires www mega2 cl video don omar vga nvidia ferari stray cat strut modelos masculinos sitecom lemmings paintball pensione anzianita ultimate spiderman in foto e video

Task
Sum of Array
You are encouraged to solve this task according to the task description, using any language you may know.

Compute the sum of the elements of an Array

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

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

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

 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

Compiler: 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#

 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

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

ColdFusion

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

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

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

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

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


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

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

IDL

 result = total(array)

Java

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

JavaScript

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

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

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

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

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

Interpeter: Python 2.5

 total = sum([1, 2, 3, 4, 5, 6, 7, 8, 9])

Ruby

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

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

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

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

Tcl

Assuming the values are in a list named listname:

 set result [expr [join $listname  ]]

Toka

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

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