Mathematica: differenze tra le versioni

Contenuto cancellato Contenuto aggiunto
DaimonBot (discussione | contributi)
m Orfanizzo Java (linguaggio)
Messbot (discussione | contributi)
Riga 36:
 
== I Front End ==
Il front end di default presenta un layout estensivo che si contraddistingue per le capacità grafiche integrate e una rappresentazione più aderente alla notazione matematica tradizionale (permette ad esempio di scrivere <math>x^4+1</math> invece di <ttkbd>x^4+1</ttkbd>).
[[File:WITM-iPAQ.jpg|right|thumb|Accesso al kernel di Mathematica tramite WITM su un [[Personal digital assistant|palmare]] [[iPAQ]] [[Hewlett Packard|HP]] ]]
Nella metafora del notebook il testo e i comandi immessi dall'utente, così come i risultati elaborati dal kernel (che comprendono, oltre alle espressioni, anche immagini e suoni) sono rappresentati in una struttura gerarchica di celle.
Riga 204:
<small>Out[1]=</small> 1+x<sup>4</sup> </code>
 
Comunque se il comando <ttkbd>FullForm</ttkbd> è utilizzato in questa espressione:
<code>
<small>In[2]:=</small> '''FullForm[x^4 + 1]'''
<small>Out[2]=</small> Plus[1, Power[x, 4]] </code>
 
Quasi tutti gli oggetti in Mathematica hanno la forma base ''head''[''e''<sub>1</sub>, ''e''<sub>2</sub>, ''...''] (che può anche essere visualizzata o inserita in qualche altro stile). Per esempio, la ''head'' dell'esempio precedente è <ttkbd>Plus</ttkbd>, a simboli come ''x'' hanno la forma <ttkbd>Symbol["x"]</ttkbd>. Anche le liste hanno questa struttura, dove la ''Head'' è <ttkbd>List</ttkbd>.
 
Questo principio permette alle ordinarie espressioni che non hanno nulla a che fare con le liste, di contenere operatori relativi alle liste:
Riga 220:
<small>Out[4]=</small> {Log[x]/Log[2], Log[x]/Log[3], Log[x]/Log[4]} </code>
 
Dove la funzione <ttkbd>Apply</ttkbd> cambia la ''Head'' del suo secondo argomento in quella del primo.
 
==== Esempi ====
Riga 253:
<small>In[5]:=</small> '''Outer[GCD, Range[5], Range<nowiki>[[5]]</nowiki>'''
<small>Out[5]=</small> {{1, 1, 1, 1, 1}, {1, 2, 1, 2, 1}, {1, 1, 3, 1, 1}, {1, 2, 1, 4, 1}, {1, 1, 1, 1, 5}} </code>
<ttkbd>Outer</ttkbd> corrisponde all'operatore prodotto esterno, <ttkbd>Range</ttkbd> corrisponde all'[[operatore iota]].
 
Un approccio iterativo: