'Array Rechner'

Gast #2081458
Lesenswert?
• ▲
▼
mit R geht sowas auch recht komfortabel

> (vec = 1/seq(1,10))
 [1] 1.0000000 0.5000000 0.3333333 0.2500000 0.2000000 0.1666667 
0.1428571
 [8] 0.1250000 0.1111111 0.1000000
> (vec = 1/seq(1,10,0.5))
 [1] 1.0000000 0.6666667 0.5000000 0.4000000 0.3333333 0.2857143 
0.2500000
 [8] 0.2222222 0.2000000 0.1818182 0.1666667 0.1538462 0.1428571 
0.1333333
[15] 0.1250000 0.1176471 0.1111111 0.1052632 0.1000000
> (vec = 1/c(3,4,5,6,7,8))
[1] 0.3333333 0.2500000 0.2000000 0.1666667 0.1428571 0.1250000
Moderator #2081524
Lesenswert?
• ▲
▼
Hans Mayer schrieb:
> Mathematica z.B.

In Maxima geht's auch und das sogar für umsonst ;-)
1
(%i1) 1/[3,4,6,3];
2
                                  1  1  1  1
3
(%o1)                            [-, -, -, -]
4
                                  3  4  6  3
5
(%i2) float(%);
6
(%o2)   [.3333333333333333, 0.25, .1666666666666667, .3333333333333333]

Die Frage ist natürlich, ob ein Octave-, Scilab, R-, APL-, Mathematica-
oder Maxima-Array der Forderung des Threaderöffners genügen, der ja
ausdrücklich nach C-Arrays gefragt hat.
#2081762
Lesenswert?
• ▲
▼
Klassischer Fall für funktionale Sprachen:
1
// Operator / überladen 
2
let (/) (a : float) (b : float list) = List.map (fun value -> (float)a / value) b
3
// Anwenden
4
let c = 1.0 / [ 1.0; 2.0; 3.0; 4.0 ]
5
// Ergebnis ist:
6
// val c : float list = [1.0; 0.5; 0.3333333333; 0.25]
Da F# auch einen REPL (F# Interactive) hat, geht das auch ohne 
compilieren
#2082027
Lesenswert?
• ▲
▼
Hans Mayer schrieb:
> noch eine Onlinevariante:
> www.sagenb.org
> http://www.sagemath.org/doc/tutorial/tour_algebra.html

Hatte ich vergessen zu schreiben:
Installiert man F# (auch ohne IDE) hat man den Compiler und 
F#-Interactive als Kommandozeilen-Programme und kann damit 
experimentieren oder fsi zum skripten benutzen.

http://research.microsoft.com/en-us/um/cambridge/projects/fsharp/release.aspx

Quelltexte des Compilers und der Libs gibt's unter der Apache 2.0 
Lizenz:
http://fsharppowerpack.codeplex.com/

Antwort schreiben

Bitte melde dich an, um einen Beitrag zu schreiben.

oder

Mit Google-Account einloggen

Die Registrierung ist kostenlos und dauert nur eine Minute.

Jetzt registrieren