Andrea Ellero, Alberto Zorzi - AA.2002/2003

Dimensione: px
Iniziare la visualizzazioe della pagina:

Download "Andrea Ellero, Alberto Zorzi - AA.2002/2003"

Transcript

1 Introduzione a MAPLE Andrea Ellero, Alberto Zorzi - AA.2002/2003 Questi appunti hanno lo scopo di introdurre all uso del programma Maple (Waterloo Maple Inc.) e sono di supporto alle lezioni di Informatica (idoneità), Facoltà di Economia dell Università Ca Foscari di Venezia. La conoscenza del programma puù essere approfondita utilizzando un qualsiasi manuale di Maple. INDICE DEI PARAGRAFI 1. Calcoli, espressioni e funzioni. 2. Risoluzione di equazioni e sistemi. 3. Limiti, derivate, integrali. 4. Funzioni di più variabili e grafici. 5. Algebra delle matrici. 6. Introduzione alla programmazione Calcoli, espressioni e funzioni 1.1 Calcoli numerici e letterali Maple è in grado di soddisfare esigenze di calcolo sia di tipo simbolico che numerico.

2 1.1.1 Numeri razionali e numeri floating point Provate a calcolare una somma algebrica di due numeri interi. Seguite l esempio e battete il tasto di ritorno a capo. > 3-5; 2 NB: non è necessario scrivere = mentre è obbligatorio concludere l espressione con ; > 7/2; 7 2 NB: non viene eseguita la divisione in modo numerico per non perdere precisione negli eventuali calcoli successivi. Per Maple, 7/2 e 3.5 sono oggetti diversi: il primo è un numero razionale, il secondo è un numero in virgola mobile (floating point). Per chiarire la differenza consideriamo uno stesso calcolo eseguito con Maple utilizzando la notazione razionale e con virgola: > (1/3.0)*3; > (1/3)*3; 1 NB: il simbolo * indica la moltiplicazione e non puù essere sottinteso. Si noti che il primo calcolo viene effettuato in virgola mobile anche se un solo numero (3.0) è di tipo floating point. Il secondo calcolo è esatto perchè 1/3 è riconosciuto e trattato come numero razionale. Vediamo che pasticci possono accadere: consideriamo un calcolo in cui siano utilizzate le due notazioni appena viste > (1/3.0)*3-(1/3)*3; cioè -0.1 per un miliardesimo ovvero mentre, ovviamente, dovrebbe risultare 0. Possiamo chiedere un calcolo numerico più accurato chiedendo a Maple di utilizzare un maggior numero di cifre (digits) decimali: > Digits:= 10; > (1/3.0)*3-(1/3)*3; Digits := ora gli zeri che precedono la cifra 1, dopo la virgola, sono 24: si tratta di un numero molto vicino allo zero ma non è esattemente zero.

3 1.1.2 Arrotondamenti, troncamenti ed errori La precisione nei calcoli effettuati da Maple è assai elevata, ma alla precisione dei calcoli è necessario accompagnare attenzione nel fornire i dati alla macchina e nell interpretare i risultati che la macchina restituisce. Ad esempio se forniamo dati poco precisi è inutile, se non dannoso, utilizzare molte cifre decimali nei calcoli effettuati da Maple. Vediamo allora come comportarci in alcuni casi frequenti. Anzitutto, quando è opportuno trascurare alcune cifre decimali di un numero possiamo semplicemente tenere solo le cifre che ci interessano: effettuiamo in tal caso un troncamento del numero. Possiamo diminuire l errore nel considerare il dato effettuando un arrotondamento. Effettuare un arrotondamento significa aumentare di una unità l ultima cifra che consideriamo qualora la prima cifra che stiamo per eliminare sia maggiore o uguale a 5, troncare il numero altrimenti. Ad esempio se > x:= ; x := volendo considerare due cifre decimali con un troncamento otteniamo il numero , arrotondando troviamo invece Se desideriamo una sola cifra decimale allora sia troncando che arrotondando otteniamo E chiaro che in generale l arrotondamento, a parità di cifre considerate, consente di ridurre l errore commesso ed è pertanto preferibile. Vediamo ora cosa accade se effettuiamo gli arrotondamenti troppo presto. Supponiamo di dover calcolare quanto vino sia necessario per riempire un contenitore cilindrico di alluminio (qui semplifichiamo e supponiamo si tratti di un cilindro perfetto). Prendiamo le misure interne del cilindro. Con un calibro (precisione 1/10=0.1 mm) riusciamo a misurare il diametro: > Diam:= 9.31 ; # cm Diam := 9.31 per l altezza usiamo un metro con precisione di un millimetro: > Altezza:= 19.4 ; # cm Calcoliamo il volume: Altezza := 19.4 > Volume:=(Diam/2)^2*Pi*Altezza; # il risultato è in cm^3 > evalf(%); Volume := π

4 AnzichÈ considerare l intera cifra decidiamo di considerare solo le quattro cifre a sinistra della virgola. Quindi, arrotondando all unità, otteniamo 1321 centimetri cubi (in litri: 1,321). Supponiamo che il vino costi 0,51 euro al litro e di dover riempire lattine. Il costo che dovremo sostenere sarà allora: > Costo_totale:=1.321*0.51*19800; ovvero 13339,46 euro. Costo totale := E una bella cifra che ci spinge ad effettuare una valutazione più precisa. Tornando al calcolo del volume prendiamo subito qualche cifra in più, anzi teniamo tutte quelle che vediamo scritte, non ci costa più fatica: > Costo_totale:= *0.51*19800; Costo totale := La differenza, in euro, è data da > ; 3.44 L esempio ci suggerisce di effettuare i calcoli ritardando il più possibile il momento nel quale effettuare gli arrotondamenti. Errori nei dati iniziali e trasmissione dell errore Ma il nostro conto è anche affetto da un altro errore, un errore inevitabile anche se meno evidente, dovuto alla precisione con la quale sono noti i dati iniziali. Per misurare il diametro del cilindro avevamo infatti a disposizione un calibro con precisione di un decimo di millimetro. In realtà dunque siamo certi che il diametro (Diam=9,31 cm) ha una misura compresa tra 9,30 e 9,32 cm; di più non possiamo chiedere al calibro. Diciamo che l errore assoluto in questa misura è di 0,01 cm e possiamo scrivere Diam = 9,310,01. L errore percentuale, o errore relativo, è dato dal rapporto tra l errore assoluto e la misura effettuata > er_diam:=0.01/9.32; vale a dire circa uno su mille. er Diam := Analogamente per l altezza, l errore assoluto è di 0,1 cm, ovvero Altezza=19,4 0,1 cm. L errore relativo è in tal caso:

5 > er_altezza:=0.1/19.4; er Altezza := quindi dell ordine del 5 per mille. Ma quale errore commettiamo nel calcolo del volume? Si dimostra che moltiplicando tra loro due misure l errore percentuale trasmesso nel calcolo è dato dalla somma degli errori percentuali. Nel nostro caso allora: > er_volume:=er_diam+er_diam+er_altezza; er Volume := L errore relativo nel calcolo del volume è dunque del 7 per mille (perchè sommiamo due volte l errore relativo del diametro?). Lo stesso errore relativo si ripercuote sul calcolo del costo totale. Si noti che gli altri fattori che compaiono nel calcolo del costo totale sono il numero 1/2, che è esatto cioè con errore assoluto nullo, e π, che Maple tiene in memoria con un numero di cifre significative sufficientemente elevato da poter essere considerato con errore relativo trascurabile. In termini assoluti il calcolo del volume è affetto allora dall errore: > ea_volume:=er_volume*volume; ea Volume := π > evalf(%); In realtà quindi il volume di una singola lattina è ovvero di millilitri L errore su di una singola lattina è dell ordine di mezzo cucchiaio da cucina! Per quanto riguarda il costo complessivo abbiamo invece: > ea_costo_totale:=er_volume*costo_totale; ea Costo totale := quindi un errore dell ordine di un centinaio di euro, un errore che rende in realtà trascurabile, in questo caso, l errore complessivo dovuto al precedente arrotondamento al centimetro cubo del volume della lattina! Problemi simili a quelli incontrati nel caso di una moltiplicazione si hanno anche nella trsmissione degli errori effettuando altre operazioni tra i dati: per un loro adeguato trattamento rimandiamo ai testi specializzati in analisi numerica.

6 1.1.3 Calcoli simbolici Maple è in grado di fare calcoli di tipo letterale utilizzando moltissimi comandi per la manipolazione algebrica. Vediamo qualche esempio. > 3*a-5*a+4*a-b*a; 2 a b a Manipoliamo l espressione raccogliendone i fattori: > factor(%); a ( 2 + b) NB: per indicare la riga di calcolo (execution group) appena eseguita si utilizza il simbolo di percentuale (%), nelle versioni di Maple meno recenti lo stesso effetto si ha utilizzando il doppio apice ( ). > 3*x*(x^2-y^2)^2/((x+y)*9*x); 1 (x 2 y 2 ) 2 3 x + y NB: l elevamento a potenza viene indicato dal simbolo ˆ. Si puù notare che Maple effettua immediatamente le semplificazioni ovvie. Ma puù fare di meglio: > simplify(%); 1 3 (x y) (x2 y 2 ) Vediamo qualche altra semplificazione: > root(x^2,2); x 2 > simplify(%); csgn(x) x NB: csgn(x) indica il segno di x. Poteva far di meglio scrivendo il valore assoluto di x, che pure è definito (si provi a scrivere >abs(x);) e si legge meglio: questa è una avvisaglia del fatto che Maple puù perdersi in un bicchier d acqua. Ancora un esempio: > (x+2)*(x^2-1)/(x+1); (x + 2) (x 2 1) x + 1 cerchiamo di riscrivere l espressione in modo più semplice:

7 > factor(%); (x 1) (x + 2) Proviamo ad eseguire le operazioni > expand(%); x 2 + x 2 ancora non ci soddisfa, torniamo a fattorizzare > factor(%); Rifacciamo il conto in ordine diverso > (x+2)*(x^2-1)/(x+1); proviamo prima ad espandere > expand(%); (x 1) (x + 2) (x + 2) (x 2 1) x + 1 x 3 x + 1 x x x2 x x + 1 un disastro! Proviamo a vedere se si semplifica qualcosa > simplify(%); meglio. Ora proviamo a fattorizzare > factor(%); x 2 + x 2 (x 1) (x + 2) L ordine delle operazioni è ovviamente importante: l abbiamo provato tante volte facendo i conti a mano, qui almeno possiamo riprovare velocemente. Provate a rifare il conto cambiando ancora l ordine delle manipolazioni e con altre espressioni. Dagli esempi fin qui visti simplify puù apparire come il comando più utile; in realtà il comando più flessibile è expand che consente, ad esempio, di stabilire quale fattore raccogliere: > expand((x+2)*(x+3)*(y+z),x); x 2 y + x 2 z + 5 x y + 5 x z + 6 y + 6 z > expand((x+2)*(x+3)*(y+z),x+2); (x + 2) x y + (x + 2) x z + 3 (x + 2) y + 3 (x + 2) z > expand((x+2)*(x+3)*(y+z),y+z); (y + z) x (y + z) x + 6 y + 6 z

8 > factor(%); (x + 2) (x + 3) (y + z) Altre informazioni Maple consente operazioni sui numeri interi quali la divisione con resto, il fattoriale, la fattorizzazione..., sui numeri complessi, su insiemi, vettori, matrici,... Sono inoltre definite alcune costanti quali > exp(1); e > Pi; π 1.2 Assegnazioni e funzioni Possiamo associare un nome ad un oggetto matematico quale ad esempio un espressione, un equazione, una funzione. La sintassi è nome := oggetto;. Ad esempio > fattore1:=x*y; fattore1 := x y ora fattore1 è una variabile che vale xy. Consideriamo una seconda variabile > fattore2:=x*z; e moltiplichiamo fattore2 := x z > prodotto:=fattore1*fattore2; prodotto := x 2 y z Maple ha già effettuato qualche conto riconoscendo il valore delle variabili utilizzate. Possiamo definire in questo modo anche le funzioni: > f:=x->x^2-1; f := x x 2 1 La variabile f è in questo caso un oggetto di tipo funzione che possiamo utilizzare come siamo abituati, per esempio per valutarla in un punto

9 > f(2); 3 ma anche in un punto simbolico > f(antonio); antonio 2 1 o componendola > f(y-1); (y 1) 2 1 Combiniamo una variabile di tipo numero con la funzione f > alfredo:=3; > f(alfredo); alfredo := 3 8 E poi semplicissimo disegnare grafici mediante il comando plot: > plot(f,-2..4,-2..5); Nell esempio la porzione di grafico che interessa è quella racchiusa nel rettangolo [-2,4]x[-2,5]. Il secondo argomento del comando plot è un intervallo contenuto nel dominio di f relativamente al quale interessa rappresentare il grafico di f. Il terzo argomento è opzionale e, se presente, individua l intervallo di interesse relativamente al codominio.

10 2 2. Risoluzione di equazioni e sistemi 2.1 Equazioni La risoluzione di equazioni è particolarmente semplice, il comando da utilizzare è solve. > solve({x^2=4},{x}); {x = 2}, {x = 2} Maple commette errori nel caso di calcoli letterali, anche semplici, se ci sono parametri > solve({a*x+b=0},{x}); {x = b a } (cosa succede se a=0?) e non risponde in alcuni casi numerici proibiti > solve({0*x+3=0},{x}); E capace di lavorare con i numeri complessi > solve({x^2+1=0},{x}); {x = I}, {x = I} (I è l unità immaginaria vale a dire il numero complesso tale che Iˆ2=-1). Vediamo qualche altro esempio > solve({x^3+x^2-5*x=0},{x}); {x = 0}, {x = }, {x = } 2 > solve({x^3-13*x+12=0},{x}); {x = 1}, {x = 3}, {x = 4} > solve({x^2+y=0},{x,y}); {y = x 2, x = x} > solve({x^2+y^2=0},{x,y}); {x = I y, y = y}, {x = I y, y = y} > solve({x^7+x^2=0},{x}); {x = 0}, {x = 0}, {x = 1}, {x = I }, {x = I 2 5 5}, {x = I 2 5 5}, {x = I }

11 > solve({exp(x)*x^2-3=0},{x}); {x = 2 LambertW( 1 1 3)}, {x = 2 LambertW( 3)} 2 2 Nell ultimo esempio LambertW è una funzione che soddisfa l equazione LambertW(x) * exp(lambertw(x)) = x. Maple è riuscito a fornirci una soluzione esatta anche in questo caso. In genere siamo perù più interessati alla risoluzione numerica di una equazione come la precedente. Il comando da usare è in tal caso fsolve, con la stessa sintassi di solve > fsolve({exp(x)*x^2-3 = 0},{x}); Ecco un altro caso interessante > f:=sin(x); {x = } f := sin(x) > sol1:=solve({f=0.3},{x}); sol1 := {x = } > sol2:=fsolve({f=0.3},{x}); sol2 := {x = } Quale soluzione è corretta? In realtà queste sono solo due delle infinite soluzioni dell equazione considerata. Maple non è in grado, in questo caso, di avvisarci della presenza di altre soluzioni. Possiamo comunque accertare la bontà delle soluzioni trovate sostituendole come argomento della funzione f utilizzando il comando subs > subs(sol1,f); sin( ) chiedendo il calcolo del valore della funzione nel punto mediante il comando evalf > evalf(%); > subs(sol2,f); > evalf(%); sin( )

12 2.2 Sistemi di equazioni Per risolvere sistemi di equazioni è sufficiente scrivere come argomenti del comando solve l elenco delle equazioni e delle variabili rispetto alle quali risolverle > eq1:=3*x+2*y=2; > eq2:=x-y=4; eq1 := 3 x + 2 y = 2 eq2 := x y = 4 > solve({eq1,eq2},{x,y}); {x = 2, y = 2} Vediamo un caso in cui il sistema presenta infinite soluzioni > eq3:=x+2*y=1; > eq4:=2*x+4*y=2; eq3 := x + 2 y = 1 eq4 := 2 x + 4 y = 2 > solve({eq3,eq4},{x,y}); {y = y, x = 2 y + 1} Mettiamo ora alla prova Maple su di un sistema di due equazioni non lineari. Sia > primo1:=3*x^3-exp(y); primo1 := 3 x 3 e y il primo membro della prima equazione e > primo2:=y^2+x; primo2 := y 2 + x il primo membro della seconda equazione e risolviamo il sistema primo1=0, primo2=3 dando anche un nome all insieme delle soluzioni > soll:=fsolve({primo1=0,primo2=3},{x,y}); soll := {x = , y = } Controlliamo l esattezza del risultato sostituendo le soluzioni trovate in primo1 e primo2 > subs(soll,primo1); > evalf(%); > subs(soll,primo2); e ( )

13 Si noti che la soluzione trovata non è unica (anche se Maple non lo dice): > subs({x= ,y= },primo1); > evalf(%); e > subs({x= ,y= },primo2); Limiti, derivate, integrali Maple fornisce tutti gli strumenti tradizionali dell analisi. Iniziamo a vedere alcune delle possibilità offerte nel caso di funzioni reali di variabile reale. Arriveremo a poter svolgere il tradizionale studio di funzione in modo completo Limiti Definiamo una funzione della quale andremo poi a cercare alcuni limiti > g:= x-> (x+1)*(x+2)*(x-3)/(x-1); g := x (x + 1) (x + 2) (x 3) x 1 Proviamo a calcolare il limite per x - > 1. Prima definiamo il limite che ci interessa > Limit(g(x),x=1); e adesso cerchiamone il valore > value(%); (x + 1) (x + 2) (x 3) lim x 1 x 1 undefined La risposta è corretta infatti calcolando i limiti da sinistra e da destra troviamo > Limit(g(x),x=1,left); > value(%); (x + 1) (x + 2) (x 3) lim x 1 x 1

14 Per il limite destro utilizziamo la lettera minuscola nel comando limit, questo consente di ottenere subito il valore numerico del limite > limit(g(x),x=1,right); Se gli ultimi due limiti calcolati da Maple sono giusti (e lo sono) allora il primo limite cercato non esiste. Vediamo come si calcolano i limiti a + e - infinito. Ad esempio > Limit(g(x),x=-infinity); > value(%); (x + 1) (x + 2) (x 3) lim x ( ) x Derivate Consideriamo una funzione di x e contenente il parametro k: > f:=x->x*cos(k*x); > diff(f(x),x); f := x x cos(k x) cos(k x) x sin(k x) k In realtà il fatto che f sia definita come funzione di x a Maple interessa poco. Possiamo infatti derivare anche rispetto a k: > diff(f(x),k); x 2 sin(k x) Cerchiamo ora i punti stazionari di una funzione. Definiamo la funzione > h:=x->x^3-2*x^2-4*x; h := x x 3 2 x 2 4 x e calcoliamone i punti stazionari ai quali diamo anche un nome (staz): > staz:=solve(diff(h(x),x)=0,x); staz := 2, 2 3 Più in generale possiamo studiare la monotonia della funzione determinando gli intervalli nei quali la derivata si mantiene non negativa: > solve(diff(h(x),x)>=0,x); RealRange(, 2 ), RealRange(2, ) 3

15 Otteniamo così che -2/3 è un punto di massimo locale mentre è di minimo locale il punto 2. Vediamo come classificare i punti stazionari utilizzando la derivata seconda. Anzitutto calcoliamola nel generico punto x: > diff(h(x),x,x); 6 x 4 Speghiamo ora a Maple di considerare l espressione appena trovata come immagine di x tramite la funzione derivata seconda di h, che chiameremo DDh; per far questo usiamo il comando unapply > DDh:=unapply(%,x); DDh := x 6 x 4 Adesso possiamo valutare la derivata seconda nei due punti stazionari. Nel primo punto si ha > DDh(staz[1]); 8 perciù si tratta di un massimo. Nel secondo punto stazionario si ha > DDh(staz[2]); 8 che ci conferma che il punto 2 è di minimo per h. Vediamo il grafico (numerico) di h fornito da Maple: > plot(h(x),x=-3..5, ); x

16 Uno studio di funzione Esaminiamo le caratteristiche del grafico di una funzione in modo dettagliato. Consideriamo la funzione > f:=x->x^3*(x+1)/(x^2+2); f := x x3 (x + 1) x Proviamo a farci disegnare il grafico da Maple: > plot(f(x),x= ); x Pare che in 0 ci sia un minimo. Ma vediamo di effettuare uno studio delle qualità delle proprietà della funzione in modo completo. Partiamo con il calcolo dei limiti: > limit(f(x),x=-infinity); > limit(f(x),x=+infinity); Studiamo il segno di f: > solve(f(x)>=0,x); RealRange(, 1), RealRange(0, ) pertanto f è negativa tra -1 e 0, positiva altrove. Per studiare la monotonia calcoliamo la derivata di f

17 > diff(f(x),x); 3 x2 (x + 1) x che si puù semplificare un po : > simplify(%); Cerchiamo i punti stazionari + x3 x x4 (x + 1) (x 2 + 2) 2 x 2 (2 x x + x 2 + 6) (x 2 + 2) 2 > staz:=solve(diff(f(x),x)=0,x); staz := 0, 0, 1 6 %1(1/3) %1 (1/3) 1 6, 1 12 %1(1/3) %1 1 (1/3) I 3 ( 1 6 %1(1/3) % %1(1/3) %1 1 (1/3) I 3 ( 1 6 %1(1/3) 47 6 %1 := (1/3) ), 1 %1 (1/3) ) Si leggono proprio male! Prima di tentare di scrivere meglio i punti stazionari vediamo cosa si puù dire riguardo alla monotonia fornendo a Maple solo il fattore che determina il segno della derivata > solve(2*x^3+8*x+x^2+6>=0,x); RealRange 1 6 ( ) (1/3) + 6 ( ) 1 (1/3) 6, ancora una volta qualcosa di poco leggibile. Proviamo a riscrivere i punti stazionari: > s1:=evalf(staz[1]); > s2:=evalf(staz[2]); s1 := 0. s2 := 0. > s3:=evalf(staz[3]*1.); s3 := > s4:=evalf(staz[4]); s4 := I > s5:=evalf(staz[5]); s5 := I

18 Valutiamo f nel terzo punto stazionario: > f(s3); Proviamo ora ad utilizzare la derivata seconda per classificare i punti stazionari > DDf:=unapply(diff(f(x),x,x),x); DDf := x 6 x (x + 1) x x2 x x3 (x + 1) (x 2 + 2) 2 4 x4 (x 2 + 2) x5 (x + 1) (x 2 + 2) 3 Nei punti stazionari si ottiene: > evalf(ddf(staz[1])); > evalf(ddf(staz[3])); Il punto terzo punto stazionario è pertanto di minimo locale. Per classificare il primo punto stazionario abbiamo bisogno di calcolare la derivata terza: > DDDf:=unapply(diff(f(x),x,x,x),x); DDDf := x 6 x + 1 x x6 (x + 1) (x 2 + 2) 4 > evalf(dddf(staz[1])); 18 x x x2 (x + 1) (x 2 + 2) 2 L origine è dunque un punto di flesso x3 (x 2 + 2) x4 (x + 1) (x 2 + 2) 3 + Avendo capito che i punti stazionari sono certamente compresi nell intervallo [-1, 1], proviamo a tracciare un secondo grafico numerico di f, questa volta restringendo il range da considerare > plot(f(x),x= ); 24 x5 (x 2 + 2) 3

19 x 1 Lo studio di funzione consente di guidare il modo di tracciare anche il grafico numerico molto meglio rispetto al fuorviante grafico numerico tracciato all inizio Integrali Possiamo calcolare sia integrali indefiniti che definiti. Ad esempio, calcoliamo una primitiva della funzione > f:=x->x*exp(x+1); f := x x e (x+1) usando il comando int: > int(f(x),x); e (x+1) (x + 1) 2 e (x+1) Verifichiamo i calcoli derivando > diff(%,x); e (x+1) (x + 1) e (x+1) e semplificando > simplify(%); x e (x+1)

20 ottenendo la conferma della correttezza del calcolo dell integrale. Nota: anche se non sappiamo se il programma ha fornito una primitiva corretta ci possiamo senz altro fidare delle derivate fornite da Maple. Si tratta di un conto puramente meccanico che un programmatore puù insegnare ad un elaboratore con poche righe di istruzioni in un qualsiasi linguaggio di programmazione. Per calcolare un integrale definito è sufficiente indicare, oltre alla variabile, l intervallo di integrazione > Int(f(x),x=0..2); > value(%); 2 0 x e (x+1) dx e 3 + e Consideriamo ora una classico esempio di funzione le cui primitive non possono essere scritte a partire da funzioni elementari utilizzando operazioni algebriche o composizione di funzioni: > g:=x->exp(-x^2); g := x e ( x2 ) calcoliamone l integrale generalizzato nell intervallo tra 0 e più infinito > int(g(x),x=0..+infinity); 1 π 2 che è corretto. Se vogliamo calcolare lo stesso integrale tra 0 e 1, ad esempio, Maple ovviamente non puù far molto: > int(g(x),x=0..5); 1 2 erf(5) π dove erf ( x ) = 2/sqrt(Pi) * int ((exp(-xˆ2), t = 0..x ). Quindi Maple si mangia la coda, e non poteva che essere così. Possiamo perù chiedere una valutazione numerica dell integrale: > evalf(value(%));

21 4 4. Funzioni di più variabili e grafici Limiti e derivate Vediamo molto velocemente come quanto visto per le funzioni di una sola variabile reale si estenda al caso di due variabili; l estensione a più variabili risulterà poi del tutto ovvia. Cominciamo definendo una funzione nelle variabili x e y: > f:=(x,y)->x^2*y-3*y/x; Proviamo a calcolare due limiti (facili) > limit(f(x,y),{x=2,y=3}); > limit(f(x,y),{x=0,y=3}); f := (x, y) x 2 y 3 y x 15 2 undefined Se tentiamo con altre funzioni facciamo presto a mettere in difficoltà Maple. La funzione > g:=(x,y)->x^2*y^2/(x^2*y^2+(x-y)^2); g := (x, y) non ha limite in (0,0), Maple non risponde: > limit(g(x,y),{x=0,y=0}); x 2 y 2 x 2 y 2 + (x y) 2 x 2 y 2 limit(, {x = 0, y = 0}) x 2 y 2 + (x y) 2 Ma anche nel caso di una funzione con limite 0 in (0,0) Maple si arena > limit(x^3/(x^2+y^2),{x=0,y=0}); x 3 limit(, {x = 0, y = 0}) x 2 + y2 Non ci sono ovviamente problemi nel calcolo delle derivate parziali: > diff(g(x,y),x); x y 2 2 x 2 y 2 + (x y) x2 y 2 (2 x y x 2 y) 2 (x 2 y 2 + (x y) 2 ) 2 > simplify(diff(g(x,y),y)); 2 x 3 y (x y) (x 2 y 2 + x 2 2 x y + y 2 ) 2

22 Ed ecco una derivata seconda mista > simplify(diff(g(x,y),x,y)); 2 x2 y 2 (6 x y 3 x 2 + x 2 y 2 3 y 2 ) (x 2 y 2 + x 2 2 x y + y 2 ) 3 Per valutare in un punto la derivata parziale seconda appena calcolata definiamo la funzione > DDXY:=unapply(%,(x,y)); DDXY := (x, y) 2 x2 y 2 (6 x y 3 x 2 + x 2 y 2 3 y 2 ) (x 2 y 2 + x 2 2 x y + y 2 ) 3 che ora possiamo valutare dove ci interessa, ad esempio in (1,-1): > DDXY(1,-1); Grafici Le possibilità grafiche sono uno dei punti forti dei programmi tipo Maple. Analizziamo prima alcune possibilità non ancora esplorate riguardo alle funzioni di una sola variabile. Passeremo poi alle funzioni di due variabili Alcune potenzialità grafiche per funzioni di una sola variabile > plot(sin(x),x=0..2*pi,title="funzione seno");

23 1 funzione seno x Possiamo anche tentare una compressione dell asse delle x per avere un idea del comportamento della funzione per valori molto grandi dell argomento > plot(sin(x),x=0..infinity); 0 infinity x Ma attenzione all interpretazione delle proprietà geometriche del grafico. Guardate cosa accade del grafico della funzione logaritmo in base e (che è una funzione concava!): > plot(ln(x),x=0..infinity);

24 infinity 0 x infinity -infinity Per utilizzare potenzialità grafiche disponibili solo a domanda, chiediamo a Maple di caricare il modulo plots: > with(plots); Warning, the name changecoords has been redefined [animate, animate3d, animatecurve, arrow, changecoords, complexplot, complexplot3d, conformal, conformal3d, contourplot, contourplot3d, coordplot, coordplot3d, cylinderplot, densityplot, display, display3d, fieldplot, fieldplot3d, gradplot, gradplot3d, implicitplot, implicitplot3d, inequal, listcontplot, listcontplot3d, listdensityplot, listplot, listplot3d, loglogplot, logplot, matrixplot, odeplot, pareto, pointplot, pointplot3d, polarplot, polygonplot, polygonplot3d, polyhedra supported, polyhedraplot, replot, rootlocus, semilogplot, setoptions, setoptions3d, spacecurve, sparsematrixplot, sphereplot, surfdata, textplot, textplot3d, tubeplot] Possiamo ora utilizzare tutti i comandi elencati sopra. Per esempio possiamo utilizzare le coordinate polari > polarplot(1,theta=0..2*pi);

25 Per un confronto tra coordinate cartesiane e polari prendiamo la curva di equazioni parametriche x=t, y=t in coordinate cartesiane > plot([t,t,t=-2*pi..2*pi]); e in coordinate polari, vale a dire interpretando la prima coordinata come la distanza dall origine e la seconda coordinata come angolo rispetto al semiasse positivo delle ascisse > polarplot([t,t,t=-2*pi..2*pi]);

26 Veniamo ora ad un grafico in scala semilogaritmica > logplot(10^x,x=0..10); 1e+10 1e+09 1e+08 1e+07 1e+06 1e+05.1e5.1e4.1e3.1e x e ad una curva definita mediante una equazione ben nota > implicitplot(x^2+y^2=1,x=-1..1,y=-1..1);

27 1 y x Quest ultimo comando è particolarmente utile quando si hanno curve meno note che Maple traccia senza protestare > implicitplot(exp(x^2*y)-exp(y)=sin(4*x),x=-2..2,y=-5..5); 4 y x

28 Grafici per funzioni di due variabili Vediamo alcuni esempi di grafici in tre dimensioni ottenuti con il comando plot3d e come tracciare le curve di livello. > plot3d(x^2+y^2,x=-4..4,y=-4..4,style=patch,color=x,grid=[50,50],orien > tation=[160,100],axes=boxed,title= paraboloide ); paraboloide x 2 0 y 2 4 > contourplot(x^2+y^2,x=-5..5,y=-5..5,contours=25); 4 y x 4 2 4

29 > plot3d(y^2-x^2,x=-4..4,y=-4..4,style=contour,contours=50,grid=[50,50] >,orientation=[200,60],color=black,axes=boxed,title= sella ); sella y x 4 > densityplot(x^2+y^2,x=-5..5,y=-5..5); 4 y x 4 2 4

30 5 5. Algebra delle matrici Esaminiamo ora alcune delle possibilità che Maple offre nel calcolo matriciale. Anzitutto vi sono due pacchetti che possiamo richiamare per operare sulle matrici e, più in generale, su probelmi di algebra lineare: linalg elinearalgebra. Qui esamineremo solo alcune delle possibilità offerte dal primo che andiamo a caricare: > with(linalg); Warning, the protected names norm and trace have been redefined and unprotected [BlockDiagonal, GramSchmidt, JordanBlock, LUdecomp, QRdecomp, Wronskian, addcol, addrow, adj, adjoint, angle, augment, backsub, band, basis, bezout, blockmatrix, charmat, charpoly, cholesky, col, coldim, colspace, colspan, companion, concat, cond, copyinto, crossprod, curl, definite, delcols, delrows, det, diag, diverge, dotprod, eigenvals, eigenvalues, eigenvectors, eigenvects, entermatrix, equal, exponential, extend, ffgausselim, fibonacci, forwardsub, frobenius, gausselim, gaussjord, geneqns, genmatrix, grad, hadamard, hermite, hessian, hilbert, htranspose, ihermite, indexfunc, innerprod, intbasis, inverse, ismith, issimilar, iszero, jacobian, jordan, kernel, laplacian, leastsqrs, linsolve, matadd, matrix, minor, minpoly, mulcol, mulrow, multiply, norm, normalize, nullspace, orthog, permanent, pivot, potential, randmatrix, randvector, rank, ratform, row, rowdim, rowspace, rowspan, rref, scalarmul, singularvals, smith, stackmatrix, submatrix, subvector, sumbasis, swapcol, swaprow, sylvester, toeplitz, trace, transpose, vandermonde, vecpotent, vectdim, vector, wronskian] Definiamo anzitutto due vettori di 3 componenti: > v:= vector(3,[1,2,3]);w:=vector(3,[5,6,7]); v := [1, 2, 3] w := [5, 6, 7] Possiamo ora effettuare tutte le operazioni tra vettori. Partiamo con la somma: > v+w; v + w Per vedere esplicitamente il risultato dobbiamo valutare l espressione con l istruzione evalm:

31 > evalm(%); [6, 8, 10] Ecco invece la moltiplicazione per uno scalare > evalm(3*w); [15, 18, 21] Il prodotto scalare, o prodotto interno, si scrive invece > innerprod(v,w); 38 Passiamo alle matrici. Definiamo una matrice 2 per 3 e chiamiamola A: > A := matrix( 2, 3, [[1,3,2], [-5,14,9]]); [ ] A := una matrice 3 per 3 di nome B: > B := matrix( 3, 3, [[1,-1,1], [0,20,-8], [2,0,2]]); B := e una seconda matrice 2 per 3 di nome C: > C := matrix( 2, 3, [[0,5,2], [1,2,-1]]); [ ] C := e facciamo un po di operazioni tra matrici: > evalm(a+c); > evalm(2*a); [ [ ] ] Per l operazione di moltiplicazione tra matrici (righe per colonne) dobbiamo usare il simbolo &* :

Grafici di successioni.

Grafici di successioni. Grafici di successioni. Il comando plot non e completamente adatto allo scopo, perche con esso Maple si aspetta una funzione definita sui numeri reali. Consideriamo la successione che individua il numero

Dettagli

La selezione binaria

La selezione binaria Andrea Marin Università Ca Foscari Venezia Laurea in Informatica Corso di Programmazione part-time a.a. 2011/2012 Introduzione L esecuzione di tutte le istruzioni in sequenza può non è sufficiente per

Dettagli

GeoGebra 4.2 Introduzione all utilizzo della Vista CAS per il secondo biennio e il quinto anno

GeoGebra 4.2 Introduzione all utilizzo della Vista CAS per il secondo biennio e il quinto anno GeoGebra 4.2 Introduzione all utilizzo della Vista CAS per il secondo biennio e il quinto anno La Vista CAS L ambiente di lavoro Le celle Assegnazione di una variabile o di una funzione / visualizzazione

Dettagli

Regole sintattiche. Simboli

Regole sintattiche. Simboli Simboli Regole sintattiche Ogni sequenza di caratteri alfanumerici che inizi con un carattere alfabetico e non contenga spazi o caratteri speciali è interpretata come un unico simbolo. Le lettere maiuscole

Dettagli

Corso di Laurea in INFORMATICA

Corso di Laurea in INFORMATICA Corso di Laurea in INFORMATICA Algoritmi e Strutture Dati MODULO 2. Algebre di dati Dati e rappresentazioni, requisiti delle astrazioni di dati, costrutti. Astrazioni di dati e dati primitivi. Specifica

Dettagli

Gli algoritmi: definizioni e proprietà

Gli algoritmi: definizioni e proprietà Dipartimento di Elettronica ed Informazione Politecnico di Milano Informatica e CAD (c.i.) - ICA Prof. Pierluigi Plebani A.A. 2008/2009 Gli algoritmi: definizioni e proprietà La presente dispensa e da

Dettagli

Parte 2. Determinante e matrice inversa

Parte 2. Determinante e matrice inversa Parte. Determinante e matrice inversa A. Savo Appunti del Corso di Geometria 013-14 Indice delle sezioni 1 Determinante di una matrice, 1 Teorema di Cramer (caso particolare), 3 3 Determinante di una matrice

Dettagli

Appunti del corso di Informatica 1 (IN110 Fondamenti) 6 Introduzione al linguaggio C

Appunti del corso di Informatica 1 (IN110 Fondamenti) 6 Introduzione al linguaggio C Università di Roma Tre Facoltà di Scienze M.F.N. Corso di Laurea in Matematica Appunti del corso di Informatica 1 (IN110 Fondamenti) 6 Introduzione al linguaggio C Marco Liverani (liverani@mat.uniroma3.it)

Dettagli

Progetto Lauree Scientifiche Liceo Classico L.Ariosto, Ferrara Dipartimento di Matematica Università di Ferrara 24 Gennaio 2012

Progetto Lauree Scientifiche Liceo Classico L.Ariosto, Ferrara Dipartimento di Matematica Università di Ferrara 24 Gennaio 2012 Progetto Lauree Scientifiche Liceo Classico L.Ariosto, Ferrara Dipartimento di Matematica Università di Ferrara 24 Gennaio 2012 Concetti importanti da (ri)vedere Programmazione imperativa Strutture di

Dettagli

Algebra Booleana ed Espressioni Booleane

Algebra Booleana ed Espressioni Booleane Algebra Booleana ed Espressioni Booleane Che cosa è un Algebra? Dato un insieme E di elementi (qualsiasi, non necessariamente numerico) ed una o più operazioni definite sugli elementi appartenenti a tale

Dettagli

+ / operatori di confronto (espressioni logiche/predicati) / + 5 3 9 = > < Pseudo codice. Pseudo codice

+ / operatori di confronto (espressioni logiche/predicati) / + 5 3 9 = > < Pseudo codice. Pseudo codice Pseudo codice Pseudo codice Paolo Bison Fondamenti di Informatica A.A. 2006/07 Università di Padova linguaggio testuale mix di linguaggio naturale ed elementi linguistici con sintassi ben definita e semantica

Dettagli

Corso di Laurea Ingegneria Informatica Fondamenti di Informatica

Corso di Laurea Ingegneria Informatica Fondamenti di Informatica Corso di Laurea Ingegneria Informatica Fondamenti di Informatica Dispensa 05 La rappresentazione dell informazione Carla Limongelli Ottobre 2011 http://www.dia.uniroma3.it/~java/fondinf/ La rappresentazione

Dettagli

Aritmetica: operazioni ed espressioni

Aritmetica: operazioni ed espressioni / A SCUOLA DI MATEMATICA Lezioni di matematica a cura di Eugenio Amitrano Argomento n. : operazioni ed espressioni Ricostruzione di un abaco dell epoca romana - Museo RGZ di Magonza (Germania) Libero da

Dettagli

Guida all uso del foglio elettronico Excel Lezioni ed esercizi

Guida all uso del foglio elettronico Excel Lezioni ed esercizi Lezioni di EXCEL Guida all uso del foglio elettronico Excel Lezioni ed esercizi 1 Il foglio elettronico Excel Excel è un foglio elettronico che consente di effettuare svariate operazioni nel campo matematico,

Dettagli

Lezioni di Algebra Lineare III. Applicazioni lineari e matrici Struttura algebrica delle soluzioni dei sistemi lineari

Lezioni di Algebra Lineare III. Applicazioni lineari e matrici Struttura algebrica delle soluzioni dei sistemi lineari Versione ottobre novembre 2008 Lezioni di Algebra Lineare III. Applicazioni lineari e matrici Struttura algebrica delle soluzioni dei sistemi lineari Contenuto 1. Applicazioni lineari 2. L insieme delle

Dettagli

Variabili e tipi di dato

Variabili e tipi di dato Variabili e tipi di dato Tutte le variabili devono essere dichiarate, specificandone il tipo La dichiarazione deve precedere l uso Il tipo è un concetto astratto che esprime: L allocazione di spazio per

Dettagli

4 3 4 = 4 x 10 2 + 3 x 10 1 + 4 x 10 0 aaa 10 2 10 1 10 0

4 3 4 = 4 x 10 2 + 3 x 10 1 + 4 x 10 0 aaa 10 2 10 1 10 0 Rappresentazione dei numeri I numeri che siamo abituati ad utilizzare sono espressi utilizzando il sistema di numerazione decimale, che si chiama così perché utilizza 0 cifre (0,,2,3,4,5,6,7,8,9). Si dice

Dettagli

1. Aritmetica Modulare e Applicazioni

1. Aritmetica Modulare e Applicazioni 1. Aritmetica Modulare e Applicazioni Le parti precedute dal simbolo I (adattate dal sistema di aiuto in linea del programma ScientiÞc Workplace) si riferiscono alle procedure da seguire per svolgere i

Dettagli

LA NUMERAZIONE BINARIA

LA NUMERAZIONE BINARIA LA NUMERAZIONE BINARIA 5 I SISTEMI DI NUMERAZIONE Fin dalla preistoria l uomo ha avuto la necessità di fare calcoli, utilizzando svariati tipi di dispositivi: manuali (mani, bastoncini, sassi, abaco),

Dettagli

E solo questione di metodo:

E solo questione di metodo: E solo questione di metodo: problemi e algoritmi di matematica elementare Progetto Lauree Scientifiche Scuola Estiva di Matematica (4092015) Stefano Finzi Vita Dipartimento di Matematica - Sapienza Università

Dettagli

Introduzione a SAGE Math

Introduzione a SAGE Math Introduzione Espressioni Funzioni Plot Stefano Zambon Esercitazione di Corsi di Laurea in Matematica Applicata e Informatica Multimediale Università degli Studi di Verona Marzo 2009 Introduzione Espressioni

Dettagli

Esercizio 1. Nella Tabella A sono riportati i tempi di percorrenza, in minuti, di un tratto autostradale da parte di 40 autoveicoli.

Esercizio 1. Nella Tabella A sono riportati i tempi di percorrenza, in minuti, di un tratto autostradale da parte di 40 autoveicoli. Esercizio 1 Nella Tabella A sono riportati i tempi di percorrenza, in minuti, di un tratto autostradale da parte di 40 autoveicoli. Tabella A 138 150 144 149 164 132 125 157 161 135 150 145 145 142 156

Dettagli

Programmazione in Excel con il linguaggio Visual Basic

Programmazione in Excel con il linguaggio Visual Basic Programmazione in Excel con il linguaggio Visual Basic L'ambiente di programmazione Il foglio elettronico Excel, così come gli altri prodotti Office di Microsoft, possiede un vero e proprio ambiente di

Dettagli

Le formule possono essere scritte utilizzando un insieme di funzioni predefinite che Excel mette a disposizione, raggruppate per argomento.

Le formule possono essere scritte utilizzando un insieme di funzioni predefinite che Excel mette a disposizione, raggruppate per argomento. Excel: le funzioni Le formule possono essere scritte utilizzando un insieme di funzioni predefinite che Excel mette a disposizione, raggruppate per argomento. DEFINIZIONE: Le funzioni sono dei procedimenti

Dettagli

FAQ per il corso di Informatica

FAQ per il corso di Informatica FAQ per il corso di Informatica Per i Corsi di Laurea in Biotecnologie e in Scienze Biologiche della Facoltà di Bioscienze e Biotecnologie Università di Modena e Reggio Emilia a.a. 2008-2009 (Prof. Sergio

Dettagli

Corso di Informatica Generale (C. L. Economia e Commercio) Ing. Valerio Lacagnina Rappresentazione in virgola mobile

Corso di Informatica Generale (C. L. Economia e Commercio) Ing. Valerio Lacagnina Rappresentazione in virgola mobile Problemi connessi all utilizzo di un numero di bit limitato Abbiamo visto quali sono i vantaggi dell utilizzo della rappresentazione in complemento alla base: corrispondenza biunivoca fra rappresentazione

Dettagli

Utilizzo del linguaggio Basic utilizzando l interfaccia di Excel Silvia Patacchini

Utilizzo del linguaggio Basic utilizzando l interfaccia di Excel Silvia Patacchini Introduzione all utilizzo di Visual Basic for Application Utilizzo del linguaggio Basic utilizzando l interfaccia di Excel Silvia Patacchini PROGRAMMAZIONE Insieme delle attività da svolgersi per creare

Dettagli

Rapida Introduzione all uso del Matlab Ottobre 2002

Rapida Introduzione all uso del Matlab Ottobre 2002 Rapida Introduzione all uso del Matlab Ottobre 2002 Tutti i tipi di dato utilizzati dal Matlab sono in forma di array. I vettori sono array monodimensionali, e così possono essere viste le serie temporali,

Dettagli

22 Introduzione all uso di MatLab

22 Introduzione all uso di MatLab 22 Introduzione all uso di MatLab INTERFACCIA UTENTE E STRINGHE Per visualizzare su schermo il valore di una variabile a senza farla precedere dalla scritta a=, si usa il comando disp (abbreviazione di

Dettagli

L INNOVAZIONE SCIENTIFICO-TECNOLOGICA NEI PROCESSI PRODUTTIVI

L INNOVAZIONE SCIENTIFICO-TECNOLOGICA NEI PROCESSI PRODUTTIVI L INNOVAZIONE SCIENTIFICO-TECNOLOGICA NEI PROCESSI PRODUTTIVI Scienza ed industria hanno oggi costituito legami molto forti di collaborazione che hanno portato innovazione tecnologica sia a livello organizzativo-amministrativo

Dettagli

Corso di Matematica per la Chimica

Corso di Matematica per la Chimica Dott.ssa Maria Carmela De Bonis a.a. 203-4 I sistemi lineari Generalità sui sistemi lineari Molti problemi dell ingegneria, della fisica, della chimica, dell informatica e dell economia, si modellizzano

Dettagli

Rappresentazione delle informazioni

Rappresentazione delle informazioni Rappresentazione delle informazioni Rappresentazione delle informazioni L informatica si occupa di rappresentare ed elaborare informazioni diverse: numeri caratteri audio immagini video I caratteri: ASCII

Dettagli

Gli algoritmi. Gli algoritmi. Analisi e programmazione

Gli algoritmi. Gli algoritmi. Analisi e programmazione Gli algoritmi Analisi e programmazione Gli algoritmi Proprietà ed esempi Costanti e variabili, assegnazione, istruzioni, proposizioni e predicati Vettori e matrici I diagrammi a blocchi Analisi strutturata

Dettagli

Esercitazione Informatica I AA 2012-2013. Nicola Paoletti

Esercitazione Informatica I AA 2012-2013. Nicola Paoletti Esercitazione Informatica I AA 2012-2013 Nicola Paoletti 4 Gigno 2013 2 Conversioni Effettuare le seguenti conversioni, tenendo conto del numero di bit con cui si rappresenta il numero da convertire/convertito.

Dettagli

La velocità di una carovana

La velocità di una carovana Programmazione A.A. 2002-03 I linguaggio Java ( Lezione X, Parte I ) Il primo programma Prof. Giovanni Gallo Dr. Gianluca Cincotti Dipartimento di Matematica e Informatica Università di Catania e-mail

Dettagli

Da una a più variabili: derivate

Da una a più variabili: derivate Da una a più variabili: derivate ( ) 5 gennaio 2011 Scopo di questo articolo è di evidenziare le analogie e le differenze, relativamente al calcolo differenziale, fra le funzioni di una variabile reale

Dettagli

esame di stato 2014 seconda prova scritta per i licei scientifici di ordinamento

esame di stato 2014 seconda prova scritta per i licei scientifici di ordinamento ARTICOLO Archimede 4 4 esame di stato 4 seconda prova scritta per i licei scientifici di ordinamento Il candidato risolva uno dei due problemi e risponda a 5 quesiti del questionario. PROBLEMA Nella figura

Dettagli

1 Grafico di una funzione reale 1. 2 Funzioni elementari 2 2.1 Funzione potenza... 2 2.2 Funzione esponenziale... 3 2.3 Funzione logaritmica...

1 Grafico di una funzione reale 1. 2 Funzioni elementari 2 2.1 Funzione potenza... 2 2.2 Funzione esponenziale... 3 2.3 Funzione logaritmica... UNIVR Facoltà di Economia Sede di Vicenza Corso di Matematica Funzioni reali di variabile reale Indice Grafico di una funzione reale 2 Funzioni elementari 2 2. Funzione potenza................................................

Dettagli

Generalità sulle funzioni

Generalità sulle funzioni Capitolo Concetto di funzione Generalità sulle funzioni Definizione di funzione Definizione Dato un sottoinsieme non vuoto D di R, si chiama funzione reale di variabile reale, una relazione che ad ogni

Dettagli

Connessione ad internet

Connessione ad internet Introduzione al C++ Connessione ad internet Istruzioni per la connessione internet: - una volta connessi, aprire un browser (firefox) - in Modifica/preferenze/avanzate/rete/impostazioni - attivare la modalità

Dettagli

9 Metodi diretti per la risoluzione di sistemi lineari: fattorizzazione P A = LU

9 Metodi diretti per la risoluzione di sistemi lineari: fattorizzazione P A = LU 9 Metodi diretti per la risoluzione di sistemi lineari: fattorizzazione P A LU 9.1 Il metodo di Gauss Come si è visto nella sezione 3.3, per la risoluzione di un sistema lineare si può considerare al posto

Dettagli

www.wlascuola.4000.it

www.wlascuola.4000.it 1 Cenni di programmazione Risolvere un problema significa trovare un procedimento che consenta di produrre i risultati, a partire dai dati iniziali, attraverso un processo di elaborazione. La metodologia

Dettagli

Visual Basic for Applications (VBA) Francesco Brun Fondamenti di Informatica a.a. 2014/2015

Visual Basic for Applications (VBA) Francesco Brun Fondamenti di Informatica a.a. 2014/2015 Francesco Brun Fondamenti di Informatica a.a. 2014/2015 Scopo di questo approfondimento Lo scopo di questo approfondimento è rispondere alla domanda: e se nella vita mi troverò a dover utilizzare un linguaggio

Dettagli

Lab. 1 - Introduzione a Matlab

Lab. 1 - Introduzione a Matlab Lab. 1 - Introduzione a Matlab Alcune informazioni su Matlab Matlab è uno strumento per il calcolo scientifico utilizzabile a più livelli, dalla calcolatrice tascabile, alla simulazione ed analisi di sistemi

Dettagli

ALGEBRA BOOLEANA FONDAMENTI DI INFORMATICA 1. Algebra di Boole. Definizione NOT, AND, OR

ALGEBRA BOOLEANA FONDAMENTI DI INFORMATICA 1. Algebra di Boole. Definizione NOT, AND, OR Università degli Studi di Cagliari Corso di Laurea in Ingegneria Biomedica, Chimica, Elettrica e Meccanica FONDAMENTI DI INFORMATICA 1 http://www.diee.unica.it/~marcialis/fi1 A.A. 2010/2011 Docente: Gian

Dettagli

if t>=0 x=1; else x=0; end fornisce, nella variabile x, il valore della funzione gradino a tempi continui, calcolata in t.

if t>=0 x=1; else x=0; end fornisce, nella variabile x, il valore della funzione gradino a tempi continui, calcolata in t. Il programma MATLAB In queste pagine si introduce in maniera molto breve il programma di simulazione MAT- LAB (una abbreviazione di MATrix LABoratory). Introduzione MATLAB è un programma interattivo di

Dettagli

Convertitori numerici in Excel

Convertitori numerici in Excel ISTITUTO DI ISTRUZIONE SUPERIORE G. M. ANGIOY CARBONIA Convertitori numerici in Excel Prof. G. Ciaschetti Come attività di laboratorio, vogliamo realizzare dei convertitori numerici con Microsoft Excel

Dettagli

Università di Pisa Dipartimento di Informatica Programmazione in JavaScript

Università di Pisa Dipartimento di Informatica Programmazione in JavaScript Università di Pisa Dipartimento di Informatica Programmazione in JavaScript Vincenzo Ambriola Versione 3.2 ~~~ 30 gennaio 2013 Prefazione Per chi si avvicina alla programmazione gli ostacoli da superare

Dettagli

Documentazione esterna al software matematico sviluppato con MatLab

Documentazione esterna al software matematico sviluppato con MatLab Documentazione esterna al software matematico sviluppato con MatLab Algoritmi Metodo di Gauss-Seidel con sovrarilassamento Metodo delle Secanti Metodo di Newton Studente Amelio Francesco 556/00699 Anno

Dettagli

Tipo intero. Esempio. Tipo intero: operatori. Programma PortaMonete.java. Tipi base o primitivi

Tipo intero. Esempio. Tipo intero: operatori. Programma PortaMonete.java. Tipi base o primitivi Tipo intero Tipi base o primitivi Tipi interi: int, byte, short, long Tipi float: float, double Caratteri: char Tipo booleano: boolean Operatori numerici e logici La parola chiave int definisce una variabile

Dettagli

DAL DIAGRAMMA AL CODICE

DAL DIAGRAMMA AL CODICE DAL DIAGRAMMA AL CODICE Un diagramma di flusso Appare, come un insieme di blocchi di forme diverse che contengono le istruzioni da eseguire, collegati fra loro da linee orientate che specificano la sequenza

Dettagli

Politecnico di Milano. Facoltà di Ingegneria Industriale. Corso di Analisi e Geometria 2. Sezione D-G. (Docente: Federico Lastaria).

Politecnico di Milano. Facoltà di Ingegneria Industriale. Corso di Analisi e Geometria 2. Sezione D-G. (Docente: Federico Lastaria). Politecnico di Milano. Facoltà di Ingegneria Industriale. Corso di Analisi e Geometria 2. Sezione D-G. (Docente: Federico Lastaria). Aprile 20 Indice Serie numeriche. Serie convergenti, divergenti, indeterminate.....................

Dettagli

Corso di Informatica Generale (C. L. Economia e Commercio) Ing. Valerio Lacagnina Rappresentazione dell informazione negli elaboratori

Corso di Informatica Generale (C. L. Economia e Commercio) Ing. Valerio Lacagnina Rappresentazione dell informazione negli elaboratori Informazione e computer Si può rappresentare l informazione attraverso varie forme: Numeri Testi Suoni Immagini 0001010010100101010 Computer Cerchiamo di capire come tutte queste informazioni possano essere

Dettagli

MODULO 1 Le grandezze fisiche

MODULO 1 Le grandezze fisiche MODULO 1 Le grandezze fisiche Quante volte, ogni giorno, utilizziamo il metro, i secondi, i kilogrammi Ma forse non sappiamo quante menti di uomini ingegnosi hanno dato un senso a quei simboli per noi

Dettagli

Algoritmo euclideo, massimo comun divisore ed equazioni diofantee

Algoritmo euclideo, massimo comun divisore ed equazioni diofantee Algoritmo euclideo, massimo comun divisore ed equazioni diofantee Se a e b sono numeri interi, si dice che a divide b, in simboli: a b, se e solo se esiste c Z tale che b = ac. Si può subito notare che:

Dettagli

Appunti di Informatica 1. Gianluca Rossi

Appunti di Informatica 1. Gianluca Rossi Appunti di Informatica 1 Gianluca Rossi Versione maggio 2011 Indice 1 Algoritmi, macchine e linguaggi di programmazione 3 1.1 La macchina di Von Neumann........................ 5 1.2 Dal linguaggio macchina

Dettagli

90.1 Sistemi di numerazione. 90.1.1 Sistema decimale. 605 Capitolo 90 Dai sistemi di numerazione all organizzazione della memoria

90.1 Sistemi di numerazione. 90.1.1 Sistema decimale. 605 Capitolo 90 Dai sistemi di numerazione all organizzazione della memoria 605 Capitolo 90 Dai sistemi di numerazione all organizzazione della memoria 90.1 Sistemi di numerazione.................................................... 605 90.1.1 Sistema decimale..................................................

Dettagli

Note di matematica per microeconomia

Note di matematica per microeconomia Note di matematica per microeconomia Luigi Balletta Funzioni di una variabile (richiami) Una funzione di variabile reale ha come insieme di partenza un sottoinsieme di R e come insieme di arrivo un sottoinsieme

Dettagli

Analisi 2. Argomenti. Raffaele D. Facendola

Analisi 2. Argomenti. Raffaele D. Facendola Analisi 2 Argomenti Successioni di funzioni Definizione Convergenza puntuale Proprietà della convergenza puntuale Convergenza uniforme Continuità e limitatezza Teorema della continuità del limite Teorema

Dettagli

Arduino: Programmazione

Arduino: Programmazione Programmazione formalmente ispirata al linguaggio C da cui deriva. I programmi in ARDUINO sono chiamati Sketch. Un programma è una serie di istruzioni che vengono lette dall alto verso il basso e convertite

Dettagli

Appunti di Excel Macro Convalida Filtri Cerca.vert ---------------------------- Giuseppe Quaggiotto. Macro con Excel

Appunti di Excel Macro Convalida Filtri Cerca.vert ---------------------------- Giuseppe Quaggiotto. Macro con Excel Macro con Excel Le macro sono un insieme di comandi (istruzioni) per eseguire semplici e ripetitivie sequenze di operazioni. Le macro sono costruite con un linguaggio di programmazione detto Visual Basic

Dettagli

Serie numeriche e serie di potenze

Serie numeriche e serie di potenze Serie numeriche e serie di potenze Sommare un numero finito di numeri reali è senza dubbio un operazione che non può riservare molte sorprese Cosa succede però se ne sommiamo un numero infinito? Prima

Dettagli

Prof. F. Rota 2002-2003 ISS Romero Albino (Bg) Materiale di supporto alle lezioni ERRORI NELLE MISURE ERRORI NELLE MISURE

Prof. F. Rota 2002-2003 ISS Romero Albino (Bg) Materiale di supporto alle lezioni ERRORI NELLE MISURE ERRORI NELLE MISURE LA MATEMATICA E LA FISICA Sia la matematica che la fisica hanno a che fare con i numeri. Non lo fanno però allo stesso modo. Se pensiamo, per esempio, all'espressione 1 1 5 ( + ) 1 2 3 il risultato vale

Dettagli

Alcune note sulle serie di potenze 1

Alcune note sulle serie di potenze 1 Alcune note sulle serie di potenze Contents G. Falqui Preliminari 2 Serie di potenze 3 3 Rappresentazione di funzioni mediante serie di potenze 7 3. Esempi notevoli........................... 9 3.2 Formula

Dettagli

Elementi di Informatica

Elementi di Informatica Università degli Studi di Udine Facoltà di Ingegneria CORSO DI LAUREA IN SCIENZE dell ARCHITETTURA Elementi di Informatica Algoritmi, e Programmi D. Gubiani 29 marzo 2010 D. Gubiani Algoritmi, e Programmi

Dettagli

Matlab: Strutture di Controllo. Informatica B

Matlab: Strutture di Controllo. Informatica B Matlab: Strutture di Controllo Informatica B Tipo di dato logico È un tipo di dato che può avere solo due valori true (vero) 1 false (falso) 0 I valori di questo tipo possono essere generati direttamente

Dettagli

Richiesta pagina PHP (es: index.php)

Richiesta pagina PHP (es: index.php) PHP PHP = personal home page SERVER Richiesta pagina PHP (es: index.php) Server Web (Apache) in ascolto sulla porta 80, si accorge che la pagina richiesta è una pagina PHP in base all'estensione o con

Dettagli

Guida rapida - versione Web e Tablet

Guida rapida - versione Web e Tablet Guida rapida - versione Web e Tablet Cos è GeoGebra? Un pacchetto completo di software di matematica dinamica Dedicato all apprendimento e all insegnamento a qualsiasi livello scolastico Gestisce interattivamente

Dettagli

Algoritmo = Dati e Azioni Sistema numerico binario Rappresentazioni di numeri binari Rappresentazione in modulo e segno

Algoritmo = Dati e Azioni Sistema numerico binario Rappresentazioni di numeri binari Rappresentazione in modulo e segno Algoritmo = Dati e Azioni Dati: Numeri (naturali, interi, reali, ) Caratteri alfanumerici (a, b, c, ) Dati logici (vero, falso) Vettori di elementi, matrici, ([1,2,3], [[1,1],[1,2], ]) Azioni o istruzioni:

Dettagli

Esercizi di Algoritmi e Strutture Dati

Esercizi di Algoritmi e Strutture Dati Esercizi di Algoritmi e Strutture Dati Moreno Marzolla marzolla@cs.unibo.it 18 marzo 2011 Problema basato su 10.5 del libro di testo La CINA (Compagnia Italiana per il Noleggio di Automobili) dispone di

Dettagli

excel La cartella di lavoro Il foglio di lavoro

excel La cartella di lavoro Il foglio di lavoro excel Fogli Elettronici Un foglio elettronico (o spreadsheet) e` un software applicativo nato dall esigenza di organizzare insiemi di dati tramite tabelle, schemi, grafici, etc. effettuare calcoli di natura

Dettagli

Aurora Martina Angelo Raffaele Meo Clotilde Moro Mario Scovazzi. Passo dopo passo impariamo a programmare con PYTHON

Aurora Martina Angelo Raffaele Meo Clotilde Moro Mario Scovazzi. Passo dopo passo impariamo a programmare con PYTHON Aurora Martina Angelo Raffaele Meo Clotilde Moro Mario Scovazzi Passo dopo passo impariamo a programmare con PYTHON Usare Python come calcolatrice Sul tuo computer clicca su: start, programmi, Python,

Dettagli

Corso di Informatica Generale (C. L. Economia e Commercio) Ing. Valerio Lacagnina Fondamenti di calcolo booleano

Corso di Informatica Generale (C. L. Economia e Commercio) Ing. Valerio Lacagnina Fondamenti di calcolo booleano Breve introduzione storica Nel 1854, il prof. Boole pubblica un trattato ormai famosissimo: Le leggi del pensiero. Obiettivo finale del trattato è di far nascere la matematica dell intelletto umano, un

Dettagli

Laboratorio di Informatica

Laboratorio di Informatica Laboratorio di Informatica Pacchetti Applicativi Excel CdL Economia A.A. 2012/2013 Domenica Sileo Università degli Studi della Basilicata Pacchetti Applicativi: Excel >> Sommario Sommario 2 n Excel n Area

Dettagli

1 introdurre le monete per l importo necessario. 2 selezionare la quantità di zucchero. 3 selezionare la bevanda desiderata

1 introdurre le monete per l importo necessario. 2 selezionare la quantità di zucchero. 3 selezionare la bevanda desiderata Esempi di Problema: Prendere un Caffè al Distributore Università degli Studi di Udine Facoltà di Ingegneria CORSO DI LAUREA IN SCIENZE dell ARCHITETTURA Elementi di Informatica, e Programmi D. Gubiani

Dettagli

GUIDA PRATICA ALLA CONFIGURAZIONE ED

GUIDA PRATICA ALLA CONFIGURAZIONE ED GUIDA ALL UTILIZZO DI MICROSOFT EXCEL 2000 GUIDA PRATICA ALLA CONFIGURAZIONE ED ALL UTILIZZO DEL FOGLIO ELETTRONICO MICROSOFT EXCEL 2000 A CURA DI FABIO SOLARINO dott. Fabio Solarino -- Servizio web della

Dettagli

Metodi diretti per la soluzione di sistemi lineari

Metodi diretti per la soluzione di sistemi lineari Metodi diretti per la soluzione di sistemi lineari N Del Buono 1 Introduzione Consideriamo un sistema di n equazioni in n incognite a 11 x 1 + a 12 x 2 + a 13 x 3 + + a 1n x n = b 1, a 21 x 1 + a 22 x

Dettagli

Abbiamo visto due definizioni del valore medio e della deviazione standard di una grandezza casuale, in funzione dalle informazioni disponibili:

Abbiamo visto due definizioni del valore medio e della deviazione standard di una grandezza casuale, in funzione dalle informazioni disponibili: Incertezze di misura Argomenti: classificazione delle incertezze; definizione di incertezza tipo e schemi di calcolo; schemi per il calcolo dell incertezza di grandezze combinate; confronto di misure affette

Dettagli

1 Organizzazione dell unità in virgola mobile (FPU)

1 Organizzazione dell unità in virgola mobile (FPU) 1 Organizzazione dell unità in virgola mobile (FPU) Il processore può maneggiare anche numeri reali, attraverso un modulo detto Floating-Point Unit (FPU). Storicamente, tale circuiteria è stata inizialmente

Dettagli

Parte 3. Rango e teorema di Rouché-Capelli

Parte 3. Rango e teorema di Rouché-Capelli Parte 3. Rango e teorema di Rouché-Capelli A. Savo Appunti del Corso di Geometria 203-4 Indice delle sezioni Rango di una matrice, 2 Teorema degli orlati, 3 3 Calcolo con l algoritmo di Gauss, 6 4 Matrici

Dettagli

b) Il luogo degli estremanti in forma cartesiana è:

b) Il luogo degli estremanti in forma cartesiana è: Soluzione della simulazione di prova del 9/5/ PROBLEMA È data la funzione di equazione: k f( ). a) Determinare i valori di k per cui la funzione ammette punti di massimo e minimo relativi. b) Scrivere

Dettagli

Sistemi di Numerazione Binaria NB.1

Sistemi di Numerazione Binaria NB.1 Sistemi di Numerazione Binaria NB.1 Numeri e numerali Numero: entità astratta Numerale : stringa di caratteri che rappresenta un numero in un dato sistema di numerazione Lo stesso numero è rappresentato

Dettagli

FONDAMENTI di INFORMATICA Prof. Lorenzo Mezzalira

FONDAMENTI di INFORMATICA Prof. Lorenzo Mezzalira FONDAMENTI di INFORMATICA Prof. Lorenzo Mezzalira Appunti del corso 1 Introduzione all informatica: algoritmi, linguaggi e programmi Indice 1. Introduzione 2. Risoluzione automatica di problemi - Algoritmi

Dettagli

4. Operazioni elementari per righe e colonne

4. Operazioni elementari per righe e colonne 4. Operazioni elementari per righe e colonne Sia K un campo, e sia A una matrice m n a elementi in K. Una operazione elementare per righe sulla matrice A è una operazione di uno dei seguenti tre tipi:

Dettagli

Lezione2 Ricerca di zeri. http://idefix.mi.infn.it/~palombo/didattica/lab-tnds/corsolab/lezionifrontali. Fernando Palombo

Lezione2 Ricerca di zeri. http://idefix.mi.infn.it/~palombo/didattica/lab-tnds/corsolab/lezionifrontali. Fernando Palombo Lezione2 Ricerca di zeri http://idefix.mi.infn.it/~palombo/didattica/lab-tnds/corsolab/lezionifrontali Fernando Palombo Aritmetica Finita nel Computer Nel computer l aritmetica è a precisione finita cioè

Dettagli

B. Vogliamo determinare l equazione della retta

B. Vogliamo determinare l equazione della retta Risoluzione quesiti ordinamento Quesito N.1 Indicata con α la misura dell angolo CAB, si ha che: 1 Area ( ABC ) = AC AB sinα = 3 sinα π 3 sinα = 3 sinα = 1 α = Il triangolo è quindi retto in A. La misura

Dettagli

ALGEBRA: LEZIONI DAL 13 OTTOBRE AL 3 NOVEMBRE

ALGEBRA: LEZIONI DAL 13 OTTOBRE AL 3 NOVEMBRE ALGEBRA: LEZIONI DAL 13 OTTOBRE AL 3 NOVEMBRE 1 DIPENDENZA E INDIPENDENZA LINEARE Se ho alcuni vettori v 1, v 2,, v n in uno spazio vettoriale V, il sottospazio 1 W = v 1,, v n di V da loro generato è

Dettagli

EXCEL. Marco Bertini Università degli Studi di Firenze

EXCEL. Marco Bertini Università degli Studi di Firenze EXCEL Marco Bertini Università degli Studi di Firenze 1 Cos è un foglio di calcolo Un "foglio di calcolo" (spreadsheet) è un oggetto di un programma costituito da un insieme di celle, organizzate in righe

Dettagli

Corso di Geometria e Algebra Lineare - Sezione di Metodi Numerici

Corso di Geometria e Algebra Lineare - Sezione di Metodi Numerici Corso di Geometria e Algebra Lineare - Sezione di Metodi Numerici C. Vergara 3. Metodo della fattorizzazione LU per la risoluzione di un sistema lineare Errori di arrotondamento. Prima di affrontare la

Dettagli

09 - Funzioni reali di due variabili reali

09 - Funzioni reali di due variabili reali Università degli Studi di Palermo Facoltà di Economia CdS Sviluppo Economico e Cooperazione Internazionale Appunti del corso di Matematica 09 - Funzioni reali di due variabili reali Anno Accademico 2013/2014

Dettagli

Dispensa del corso di Informatica

Dispensa del corso di Informatica Dispensa 6-Boolean 1 Algebra Booleana Dispensa del corso di Informatica La logica George Boole (1815 1864) è stato un matematico e logico britannico, ed è considerato il padre fondatore della logica matematica.

Dettagli

Libreria standard Java possiede un enorme libreria di classi standard organizzata in vari package che raccolgono le classi secondo un organizzazione

Libreria standard Java possiede un enorme libreria di classi standard organizzata in vari package che raccolgono le classi secondo un organizzazione Libreria standard Java possiede un enorme libreria di classi standard organizzata in vari package che raccolgono le classi secondo un organizzazione basata sul campo d utilizzo. I principali package sono:

Dettagli

BOZZA Introduzione a MATLAB

BOZZA Introduzione a MATLAB BOZZA Introduzione a MATLAB BOZZA BOZZA Matlab sta per Matrix Laboratory ed è un ambiente interattivo e un linguaggio di calcolo tecnico di alto livello per lo sviluppo di algoritmi, la rappresentazione

Dettagli

CAPITOLO PRIMO IL CONCETTO DI ALGORITMO 1

CAPITOLO PRIMO IL CONCETTO DI ALGORITMO 1 1.1 Che cos è un algoritmo CAPITOLO PRIMO IL CONCETTO DI ALGORITMO 1 Gli algoritmi sono metodi per la soluzione di problemi. Possiamo caratterizzare un problema mediante i dati di cui si dispone all inizio

Dettagli

CALCOLATRICE GRAFICO SIMBOLICA TI - 89. Angela Solera - IPIA Corni di Modena - e-mail: splash72@libero.it

CALCOLATRICE GRAFICO SIMBOLICA TI - 89. Angela Solera - IPIA Corni di Modena - e-mail: splash72@libero.it LA CALCOLATRICE GRAFICO SIMBOLICA TI - 89 Angela Solera - IPIA Corni di Modena - e-mail: splash72@libero.it INDICE Introduzione SCHEDA 1 Pag. 1 Pag. 2 SCHEDA 2 SCHEDA 3 Verifica Osservazioni conclusive

Dettagli

CS. Cinematica dei sistemi

CS. Cinematica dei sistemi CS. Cinematica dei sistemi Dopo aver esaminato la cinematica del punto e del corpo rigido, che sono gli schemi più semplificati con cui si possa rappresentare un corpo, ci occupiamo ora dei sistemi vincolati.

Dettagli

Codifica binaria e algebra di Boole

Codifica binaria e algebra di Boole Codifica binaria e algebra di Boole Corso di Programmazione A.A. 2008/09 G. Cibinetto Contenuti della lezione Codifica binaria dell informazione Numeri naturali, interi, frazionari, in virgola mobile Base

Dettagli

Unità 1 Introduzione al sistema MAPLE

Unità 1 Introduzione al sistema MAPLE Unità 1 Introduzione al sistema MAPLE MAPLE come una calcolatrice > 1+2; > 1+1: 2+32; # Il simbolo : inibisce l'output Attenzione! > 7*8 > 7*8; 8/4; > sqrt(25); # sqrt = radice quadrata; > sqrt(%); Il

Dettagli

Dispense di Informatica per l ITG Valadier

Dispense di Informatica per l ITG Valadier La notazione binaria Dispense di Informatica per l ITG Valadier Le informazioni dentro il computer All interno di un calcolatore tutte le informazioni sono memorizzate sottoforma di lunghe sequenze di

Dettagli

Dimensione di uno Spazio vettoriale

Dimensione di uno Spazio vettoriale Capitolo 4 Dimensione di uno Spazio vettoriale 4.1 Introduzione Dedichiamo questo capitolo ad un concetto fondamentale in algebra lineare: la dimensione di uno spazio vettoriale. Daremo una definizione

Dettagli