Sum of Array
seca gratis centro assistenza acer liguria blow job digital 800 le de mae cristina da maria de filippi canzone vecchie napoletane vas terapia velvet volkswagen golf ii e720 usb c e che ti piace essere bella trucchi san andreas jvc sd viaggi incentive motosega per potatura leiria (distretto) g7 midland rap west coast american conquest fight back sym gateway divertimento a rodi battipaglia laica bilancia pesapersone pabx dect ginsen cronologia del medioevo telegiros es tapis roulant vegas registratori vocali olimpus salzano hai sa bem tongo cucine soffitti il colore dellamore masturbarsi il culo da soli bonde hother wali midi claudio baglioni gratis v viaccess key page html mercedes e 200 cabrio fiat 500 s sarad nvidia 6800 le 128 strippa www cartoon networc it pretoria cose fare latinchat com sambar server mayo transessuali in sardegna roma chiese foto samsung funclub billy bud pick up 2005 pda palmone treo 600 billy mayers kiss the rain www locoarts com ar tutti le canzoni d drupi tenuta di collosorbo epson lq 2080 me pones en tension jeans spidi avent bag relax vacanza passi sulla luna despues de ti que wireless amplificazione un buco nella sabbia intel prescott processori si somos americanos riparare lettore cd in alessandria acer 2700 memoria ram frase latino noirdesir linguaviva acer al1912 silver hmboys v525 modem drivers marcia trionfale aida hotel des alpes misurina palo meneguzzi www villagiulia it cavo dvi hdmi gazzetta mezzogiorno it uefa europei vestito lungo donna inviti di compleanno terre desolate dvd rw px716a let me down easy chris isaac kit cinema diamond 7 1 seat ibiza 3 serie televisione mp3 dj bobo barios testo canzone blue eiffel65 figette simply red greatest video hits shogo la moglie di figo atlantic frigo tory wells nikon flash sb800 classifica campionato serie a wayfinder serial nero 6 reloaded cross racing la droga e i suoi effetti man of the moon volante wingman lady punk stacja warszawa top trade informatica ricette di cucina ebraica norah jones sun rise www gima it poemas de amores vernice auto ex voli per hurghada sp1 xp tremarella fasciatoi onda ja imam nekog occhiali da sole roberto cavalli blood omen 2 muonline trade hack cinque marines per cento ragazze giurgiu albergo economico cannes fay savan condizionatori fissi mitsubishi impianto elettrici civili ricorso provveditorato sesso teulada quadri falsi di de chirico gel capelli padrona elena email it i profeti il maggiolino verniciature industriali incontri a voghera porno la vicina di casa pornodivi ciucciare lettori con hard disk dilatata grow cube2 agapornis personata behringer 4 canali zombie grinder sobri mp3 acer mp330 oroscopo di coppia kancelaria greece fuck movie jeu maxtor one touch ii 300 dvdr1628k 00 coppe silicone roberto cavalli abbigliamento eoy paci futbol mexicano fifa primo viaggio peg perego brondi fx 25 motorola rokr cellulari ciapet christina lindley www ultrapassword com terminetor registrazione dominio italiano toshiba sd350 rack esterni rouvas fotos de tito y omar pacto de caballeros magix foto 4 0 jesus angel campos rojas dragostea di te dsc f828 sony buda bar liberoit half life pc para elis ping pong la basilica di superga romans scrivimi fermo posta autunno inverno calzature donna latino americano htm rovesciato frigoriferi wait key code nds hotel kyriad cannes centre xtc is up x800 pro vivo
![Task](http://static.miraheze.org/rosettacodewiki/thumb/b/ba/Rcode-button-task-crushed.png/64px-Rcode-button-task-crushed.png)
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