Sum of Array

From Rosetta Code
Revision as of 18:19, 26 August 2007 by rosettacode>LpvHw9

fly girls diana spencer nuda giochi erotico on line gratis annunci incontri lesbo ragazze la spezia carolina desnuda su visto porno maturo vecchie troie upmini nudi email per sesso www xxx18 com videoclip sesso foto di vale rossi nudo viduo sex gessica rizzo pornodiva nonna incesto numeri di telefono di ragazze porche foto porno di mature le ragazze del porno show george michel quando le donne si chiamavano madonne tuttogratis it playboy giugno porno ilaria damico gay varese video manga gratis video gratis de michell vieth video animali porno foto di nudisti in spiaggia eros ramazzotti dvd roma image sex analisi del tessuto urbano di matera sexy sasha otto donne e mezzo corelli audio analogue donne puttane george micheal faith foto donne perizoma free animalsex donne sesso cercasi vagina di pamela anerson naked souls sexy gallery donna per sesso con numero di cellulare visibile porno video gay italiani racconti sculacciate gratis japan sesso video sesso con animali supergirl - la ragazza dacciaio porno infanti fotos snakesandladders ballerine sexy porno di gruppo gratuito testi canzoni gratis paola y chiara chat sex porno amatoriali gratis juegosgratis incinte porno gabriel pontello supersex video porno di pam e tommy video pamela anderson con marito fotoannunci erotici rita montella sexy donne mature cercano penetrazioni anali cine sex peliculas pornos victor manuelle gratis scarica film porno fotos del video de roxana diaz con jorge parkingsex provini porno www sexpistols com foto porno di alessia marcuzzi gwen stefani nuda veronica moore file divertenti gratis fatsex videos gratis de pornos free gay pics breatny spears nuda ragazze porche giovanissime gratis porno donkey digitale terrestre tv analogica www sexy girls com foto gay nudi gratis prof sesso sesso estremo nella figa foto gratis www sesso sfrenato it www toplessbeach it freiras sexy chat adult trans e gay che fanno l amore racconti erotici adolescenti lesbian girls photos sex animal videoclip il gioco dei nudisti ragazze minigonna ragazze a piedi nudi muscoli gay severina sex download free sex appeal porno zoo animali sex anal page perso strip xxx photo fighe bagnate gratis donne mature con grosse tette assessorato al turismo salerno cleopatra porno lui e il bisex paola perego foto fotoromanzi porno gratuiti blue girl testo italiano fuck it porno beby funny nuda calendari di donne webcam amatoriali porno gratis canalsat hex key blaze of glory gratis kyli minouge fotos gratis video di sexi ragazze sole nudo bongiorno paola dragonballporno toscana sesso annunci nina sky move your body girl foto donne grasse nere porche donne e dipendenza dal lavoro sfondo canalis dante paradiso riassunto canto xxxiii www sex culo it roxana diaz porno eros gratutiti go go very sexy show video salsa gratis madonna sexy sexo profesional baila sexy thing donne in cerca damore foto transex grtais porno exitantes vedo nudo locali gay l tarzana sesso selvaggio george beer anziani gay foto galleria twin snakes porno incinte gay web foto gratis pompini sessogay dyson, edward george lesbo stivali hentay sailor moon lesbo racconti ipergratis loghi sex sesso forum immagini transessuali japanese sex foto di donne mature teenager sesso girl fuck rollergirl video gratis de michelle vieth xxx le foto sexy di garko club sex www paolaechiara britney spears xxx nudoty famiglia incestuosa immagini tettone gratis sex termometer haiduci xxx fontana canalis show girl croata experimento caseros videos de porno saudi sesso eva robinson nuda xxxx sex canale5 www donne mature it www adultswim mature xxx ragazze russe eurosex nuda gol video foto nuda annalisa caputo sexfilm gayromeo sorella racconti erotici sexy parodius donne grasse nude will you be my girl helicopteros sesso hot nudiste film amatoriale porno

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