Anteprima
Vedrai una selezione di 3 pagine su 7
Bigino Matlab informatica B   Pag. 1 Bigino Matlab informatica B   Pag. 2
Anteprima di 3 pagg. su 7.
Scarica il documento per vederlo tutto.
Bigino Matlab informatica B   Pag. 6
1 su 7
D/illustrazione/soddisfatti o rimborsati
Disdici quando
vuoi
Acquista con carta
o PayPal
Scarica i documenti
tutte le volte che vuoi
Estratto del documento

Modalità di apertura del flusso di comunicazione

Il parametro "r" apre un file esistente in lettura.

Il parametro "w" apre un file esistente o crea un nuovo file in scrittura.

Il parametro "a" apre un file esistente o crea un nuovo file in scrittura, posizionando il cursore alla fine del file.

Quanto già presente nel file viene mantenuto, ma in modalità testuale.

Per diagrammi a tre dimensioni con z = una funzione, si utilizza il comando "plot3(x, y, z)".

Per diagrammi di superfici con z = f(x, y), si utilizza il comando "mesh(xx, yy, zz)" dove xx e yy sono variabili indipendenti da x e y.

La sintassi per la sequenza di comandi è la seguente:

comando1
comando2
comando3
...

Un comando può avere un nome, può essere invocato (cioè può essere richiesto l'esecuzione) e può ricevere dei parametri che ne influenzano il risultato.

Sono matrici e si ottengono mediante la funzione nome(input1, input2, ...).

Come ma in modalità testuale 'wt': 'w' mediante la funzione testata().

Come ma in modalità testuale 'at': 'a' e come ma si può anche scrivere nel file 'r+' o 'rt+': 'r'/'rt'

[xx, yy] = meshgrid(x, y), a partire dai vettori, x e y, che... corpo è la parte eseguibile.

Come ma si può anche leggere dal 'w+' o 'wt+': 'w'/'wt' contengono i valori delle ascisse e delle ordinate.

Come 'at+': 'a'/'at' ma si può anche leggere dal file 'a+' per memorizzare una funzione per ottenere zz.

status = fclose(fid) determina la chiusura del flusso di output.

La lista dei risultati della funzione, il nome è

Il nome della comunicazione con il file identificato da fid della funzione e l'input è la variabile in ingresso. Se ho z=f(x,y) restituisce 0 se la chiusura è avvenuta senza errori. Il valore input serve per trasferire dati alla funzione dal workspace-1. In caso di problemi corrente, le variabili del workspace non sono disponibili. status = fclose('all') chiude tutti i file zz=f(xx,yy) all'interno di funzione, deve essere importato tutto ciò che cont = fwrite(fid, array, 'formato') serve. Per più input: 1) separati da virgole 2) l'ordine è cont che indica il numero di valori effettivamente scritti nel file. Sostituisco xx a x e yy a y nella funzione importante. fid è l'identificatore del file su cui scrivere (NB: il file deve essere stato in precedenza aperto in scrittura ('w' o 'a'). L'output è utilizzato per restituire al workspace i risultati della funzione. Output multipli: 1) separati da virgola dentro

hold on disegnare i grafici successivi sopra l'ultimo...)) quadre (ovvero in un array di output) 2) l'ordine èarray: arry contenete i dati da salvare importante 3) le variabili di output devono essere assegnateformato: specifica il formato in cui verranno slavati i dati [output1 output2 = nome(input1, input2,...] ...) FORMATI PRINCIPALI eseguire una funzione memorizzata e assegnarla ad unachar, int8, int16, int32, int64, float32, float64 ESERCIZIO PARTICLOAREvariabile(i numeri indicano il numero di bit usati per rappresentare i valori) individuare e disegnare in verde la porzione di parabola peseguita da MATLAB® è necessario salvarla nella stessa che ha valori maggiori della retta r; utilizzare il comandocartella dello script principale. Il nome del file con cui si[array cont] = fread(fid, size, formato) plot(x(p>r), y(p>r), 'g', 'LineWidth', 3); per

visualizzare la funzione DEVE essere lo stesso della funzione. Nel la porzione della parabola in verde.nome non possono essere contenuti spazi e DEVE essere per il significato di cont, fid e formato si veda fwrite, i dati diverso dal nome della variabili in uso.vengono memorizzati in array indica il colore ‘g’size è la dimensione dei file da leggere:

  1. N: legge N
  2. B: se l’input viene inserito da tastiera la funzione non ha esattamente N valori (array sarà un vettore colonna parametri di input mesh(xx, yy, zz,’FaceColor’,’lettera per il colore’,contenente questi N valori)
  3. inf: legge fino alla fine del file

function [output1 output2 = nome()…] 0.3);‘EdgeAlpha’,(array sarà un vettore colonna ontenente tutti i valori letti)

  1. [n m]: legge esattamente nxm valori (array sarà una per colorare grafici 3D‘FaceColor’matrice nxm contenente tutti i valori letti) degli

spigoli‘EedgeAlpha’’spessorecont = fprintf(fid, format, val1, val2, ...)

intput DIAGRAMMIformattato, poermette di scrivere all’interno del file aperto 3 indicano lo spessore delle linee‘LineWidth’,con fopen plot(x, y) disegna diagramma cartesiano dei punti chehanno valori delle ascisse in x, delle oridnate in y e li grid on aggiunge una griglia la graficoa parte l’identificatore del file fid, è come la fprintf già vista congiunge con una linea, per dare continuità al grafico figure(N) crea una nuova finestra di immagine ele assegnaxlabel(‘nome’) dare nome all’asse delle ascisse l’identificativo Nii = ii + 1;more = input('vuoi inserire altri valori? (s/n)');ESERICIZI IMPORTANTI endEstrarre tutte le sottomatrici 2x2 di Afor row=1:2:size(A,1)for col=1:2:size(A,2) jj = 1;disp(A(row:row+1, col:col+1))end for ii = 1:length(arch)end % attenzione: la condizione dell’if deve essere

scrittasulla stessa linea…Porre tutti gli elementi di A maggiori o ugualiai corrispondenti elementi di B pari alla differenza tra A e if arch(ii).latitudine >= 10 && arch(ii).latitudine <= 80B; &&indici = A>=B;A(indici) = A(indici)-B(indici) arch(ii).longitudine >= 30 &&arch(ii).longitudine <= 60elemSelez(jj) = arch(ii).altitudine;jj = jj + 1;endenddisp(['la media degli elementi selezionati e` 'num2str(mean(elemSelez))]);

PROGRAMMAZIONESi sviluppi un programma che acquisisca da tastiera i dati relativi a rilievi altimetrici e stampi a In MATLAB, i cicli FOR e WHILE si comportano in manieravideo l’altitudine media di tutti i rilievi che hanno identica al C ma con una sintassi è diversalatitudine compresa tra 10 e 80 e longitudine tra30 e 60 FORfor indice = espressione (ex. 1:n)istruzionimore = input('vuoi inserire valori altimetrici? (s/n)'); endii = 1; WHILEwhile more == 's' while

condizionearch(ii).altitudine = input('altitudine: '); istruzioniendarch(ii).longitudine = input('longitudine: '); IF ELSEarch(ii).latitudine = input('latitudine: '); If condizione A or A and B = A – quanto vale, approssimativamente, 2^17 risposta: "128 mila" istruzioni legge dell'elemento 1:  infatti 2^17 =2^(7+10)=2^7 +×2^10 = 128 K elseif condizione not A or A = 1 NB: l'approssimazione è per difetto (ha sempre un erroreistruzioni <10%) amche su valori molto grandi else ARITMETICA DEL CALCOLATORE istruzioni numeri binari con n bit codificano 2^n numeri da 0 a (2^n)- Conversioni rapide bin decend 1 10^n = 2^(10*n/3)conversione bin dec:ALGEBRA DI BOOLE ED ELEMENTI DI Σ b(i)*2^i (con i da 0 a n-1) ex. 11101 = 1*2^4 + 1*2^3 + ex. 10^9 = 2^(10*9/3) = 2^301*2^2 + 0*2^1 + 1*2^0 = 29LOGICA aumento e riduzione dei bit in binconversione dec bin:a b a AND b a OR b NOT a a XOR b aumento dei bit:aggiungendp in

modo progressivo un bit 0metodo dei resti:0 0 0 0 1 0 a sinistra il valore del numero non muta0 1 0 1 1 1 1. decidere se il numero è pari (resto 0) oppure dispari riduzione dei bit: cancellando in modo progressivo un bit 01 0 0 1 0 1 (resto 1), e annotare il resto a sinistra, il valore del numero non cambia, ma bisogna1 1 1 1 0 0 arrestarsi quando si trova un bit 12. dimezzare il numero (N r)/2– numeri binari interi (positivi e negativi) in modulo ePrecedenza: l’operatore NOT precede l’operatore AND, che a 3. ripartire dal punto 1. fino a ottenere 0 come risultato della segno (m&s) il primo bit asua volta precede l’operatore OR divisione sinistra rappresenta il segno del numero (bit disegno), i bitrimanenti rappresentano il valoreA and not B or B and C = (A and (not B)) or (B and C) 4. il numero in binario sarà la sequenza di numeri ottenuta 0 per il segno positivo 1 per il segnoPer ricordarlo, si pensi OR come (più), AND

come "+"  e "x" letta in senso contrario a partire da 1:2 fino a N:2 negativo (per) e NOT come "−" (cambia segno) ex. 19:2 1 → (In modulo e segno, il numero zero ha due rappresentazioni equivalenti (00..0, 10..0)) 9:2 1 → tautologia: espressione logica sempre vera, per qualunque combinazione di valori delle variabili ex. a OR NOT a 4:2 0 → 2:2 0 → contraddizione: espressione logica sempre falsa per ex. con n = 9 (8 bit + un bit per il segno) 1:2 1 → qualunque combinazione di valori delle variabili ex. a AND 0 NOT a 100001000 m&s = −1*2^3 = −8 dec due espressioni logiche si dicono equivalenti (e si indica con 19 in binario è: 10011 NB: il bit di segno non ha significato numerico e se ⇔) se hanno la medesima tabella di verità distaccato i bit rimanenti rappresentano il valore assoluto conversioni rapide bin dec → del numero PROPRIETA' DELL'ALGEBRA DI BOOLE In binario si definisce una notazione abbreviata.

sullaleggi di De Morgan falsariga del sistema metrico-decimale: COMPLEMENTO A 2 (C2)not (A and B) = not A or not B (1a legge) K = 2^10 = 1.024 ≈ 10^3 (Kilo) il C2 è un sistema binario, ma il primo bit (quello a sinistra, ilnot (A or B) = not A and not B (2a legge) M = 2^20 = 1.048.576 ≈ 10^6 (Mega) più significativo) ha peso negativo, solo il primo bit, mentrePROPRIETA’ SIMILI ALL’ALGEBRA TRADIZIONALE tutti gli altri bit hanno peso positivoG = 2^30 = 1.073.741.824 ≈ 10^9 (Giga) Il bit più a sinistra è ancora chiamato bit di segno ma faproprietà associativa: T = 2^40 = 1.099.511.627.776 ≈ 10^12 (Tera) • parte dei n bit (ex C2 a 8 bit ha 8 numeri non 9 come nelA or (B or C) = (A or B) or C (idem per AND) In base 2 hanno valori molto prossimi ai corrispondenti segno pre

Dettagli
Publisher
A.A. 2022-2023
7 pagine
SSD Scienze matematiche e informatiche INF/01 Informatica

I contenuti di questa pagina costituiscono rielaborazioni personali del Publisher enrico56643 di informazioni apprese con la frequenza delle lezioni di Informatica b e studio autonomo di eventuali libri di riferimento in preparazione dell'esame finale o della tesi. Non devono intendersi come materiale ufficiale dell'università Politecnico di Milano o del prof Masseroli Marco.