FORTRAN FORTRAN. Tipi definiti dal linguaggio per ora solo i tipiatomici

Dimensione: px
Iniziare la visualizzazioe della pagina:

Download "FORTRAN FORTRAN. Tipi definiti dal linguaggio per ora solo i tipiatomici"

Transcript

1 Tipi definiti dal linguaggio per ora solo i tipiatomici INTERO INTEGER FORTRAN costituito da numeri interi compresi tra -2 (N-1) a 2 (N-1) - 1 dove N è il numero di bit usato per rappresentare un numero intero (valori tipici sono 16 e 32). Principali operatori (interni) del tipo somma + sottrazione - moltiplicazione * divisione (intera) / (il risultato è un numero intero - con troncamento) elevazione a potenza ** 1 FORTRAN REALE REAL costituito dal sottoinsieme dei numeri reali rappresentabile dall elaboratore (valori tipici: minimo = 1,2 * massimo = 3,4 * ) Principali operatori (interni) del tipo somma + sottrazione - moltiplicazione * divisione / elevazione a potenza ** Doppia Precisione DOUBLE PRECISION costituito dal sottoinsieme dei numeri reali rappresentabile dall elaboratore ma con una precisione maggiore del REAL (maggior numero di cifre significative) (valori tipici: minimo = 2,23 * massimo = 1,79 * ) 2 1

2 FORTRAN CARATTERE CHARACTER costituito dall insieme dei caratteri di stampa. In realtà, in FORTRAN è assunto come tipo carattere il codice ASCII con cui sono codificati i caratteri. Un carattere è denotato racchiudendolo tra apici: a M LOGICO LOGICAL I valori del tipo sono:.false. e.true. Gli operatori logici sono:.not..or..and. 3 FORTRAN Nomi degli identificatori devono iniziare con un carattere alfabetico (una lettera) seguito da altre lettere o cifre (il carattere _ è considerato una lettera); non possono contenere il carattere <spazio> né altri caratteri. Lo standard prevede una lunghezza massima di 6 caratteri (i caratteri oltre il sesto sono ignorati) I nomi di identificatori non possono essere uguali a parele chiavi del linguaggio Deve essere indicato il tipo di ogni variabile prima di un utilizzo della stessa <nome tipo> <lista variabili>; Es. REAL areatr, latotriangolo (N.B. per latotriangolo è considerato solo latotr) INTEGER nrostd, orelez CHARACTER sigla DOUBLE PRECISION radicequazione 4 2

3 Operatori Aritmetici somma + sottrazione - moltiplicazione * divisione / elevazione a potenza ** assegnazione = Relazionali uguaglianza =.EQ. diverso <>.NE. maggiore >.GT. minore <.LT. maggiore o uguale >=.GE. minore o uguale <=.LE. FORTRAN Alcune funzioni Aritmetiche valore assoluto abs(n) resto divisione intera mod(m, n) Trigonometriche seno sin(x) coseno cos(x) Esponenziali e logaritmiche e elevato alla x log. in base e di x Altre radice quadrata di x exp(x) log(x) sqrt(x) 5 FORTRAN Operazioni di calcoloe assegnazione <identificatore> = <espressione>; Es. perimq = latoq * 4; 6 3

4 Operazioni di ingressoe uscita Operazioni di ingresso FORTRAN READ ( <unità input>, <formato input>) <lista interna> lista interna: lista dei nomi delle variabili, ciascuno separato da una virgola unità input: un identificativo che individua l unità da cui leggere i dati in input il carattere * indica l unità di input standard (la tastiera) formato input: indicazione per immettere i dati secondo una loro prefissata formattazione il carattere * indica un formato libero guidato dalla lista interna ES: READ (*,*) latoq, coeffa, coeffb READ (5, (I4, I4, I4) ) latoq, coeffa, coeffb 7 Operazioni di ingressoe uscita Operazioni di uscita FORTRAN WRITE (<unità output>, <formato output>) <lista interna> lista interna: lista dei nomi delle variabili, ciascuno separato da una virgola unità output: un identificativo che individua l unità su cui scrivere i dati in output il carattere * indica l unità di output standard (il video) formato output: indicazione per visualizzare i dati secondo una loro prefissata formattazione il carattere * indica un formato libero guidato dalla lista interna ES: WRITE (*,*) latoq, coeffa, coeffb WRITE (6, (I4, I4, I4) ) latoq, coeffa, coeffb 8 4

5 Sequenza o blocco <istruzioni> FORTRAN - Strutture di controllo. Non esistono delle parole chiavi (es. begin - end) per indicare l inizio e la fine di una sequenza Selezione if <condizione> then endif <istruzione/i> se la condizione è vera viene eseguita la/le <istruzione/i> ES: if endif a.ne.b then a=a-b c=3*a 9 FORTRAN - Strutture di controllo Selezione a due vie if <condizione> then endif ES: if endif else a.ge.b then <istruzione/i 1> <istruzione/i2> a=a-b c=3*a else a=a+b c=c/b 10 5

6 Selezione a più vie FORTRAN - Strutture di controllo if <condizione1> then <istruzione/i 1> else if <condizione2> <istruzione/i2> else if <condizionen> <istruzione/in> else <istruzione/i> endif 11 FORTRAN - Strutture di controllo Selezione if logico Se quando <condizione> è vera deve essere eseguita una sola istruzione la struttura di controllo può essere la seguente if <condizione> <istruzione> ES: if a.ge.b a=a -b 12 6

7 FORTRAN - Il foglio di scrittura del programma Suddiviso in 80 colonne: una sola istruzione per rigo istruzioni nelle colonne da 7 a 72 colonne da 1 a 5 possono contenere label (etichette) il carattere C in 1 colonna indica che quella riga contiene un commento un qualsiasi carattere in 6 colonna (ad es. -) indica che quella riga è la continuazione della riga precedente 13 FORTRAN - Strutture di controllo Ciclo Ripetitivo do <label_fine _ciclo > <vc> = <ei>, <ef> [,<step>] <istruzione> label_fine _ciclo continue <vc>: è la variabile di controllo del ciclo <ei>: è l espressione usata per inizializzare la variabile vc <ef>: è l espressione usata indicante il valore di terminazione del ciclo <step>: è l espressione usata per determinare il passo di incremento della variabile di controllo Es: do 100 i=1, vmax 100 continue a=b*i 14 7

8 FORTRAN - Istruzione con label (etichetta) Strutture di controllo <label> continue Ciclo repeat-until PDL repeat until R S FORTRAN <label> continue S if E goto <label> S: blocco di istruzioni E: espressione logica E corrisponde alla R nello schema del repeat-until, ma il valore è il negato di R: E = not R 15 Ciclo repeat-until Esempio FORTRAN - Strutture di controllo PDL repeat S until A=30 FORTRAN 200 continue S if A.NE. 30 goto

9 Ciclo while-do FORTRAN - Strutture di controllo PDL while R do S; FORTRAN <label1> <label2> continue if E goto <label2> S goto <label1> continue S: blocco di istruzioni E: espressione logica E corrisponde alla R nello schema del while-do, ma il valore è il negato di R: E = not R 17 Ciclo while-do esempio FORTRAN - Strutture di controllo PDL while A>15 do S; FORTRAN 150 continue 250 continue if A.LE. 15 goto 250 S goto

10 FORTRAN - Selezione a più vie: goto calcolato Strutture di controllo <lb1> <lb2> <lbn> <lbf> goto (<lb1>,< lb2>,.,< lbn>), I continue S1 goto <lbf> continue S2 goto <lbf>.. continue Sn goto <lbf> continue S I: espressione di tipo INTEGER che può assumere i valori tra 1 e n lb1,, lbn: etichette Si: blocco di istruzioni Se I=1 è eseguito S1 Se I=2 è eseguito S2... Se I=n è eseguito Sn dopo l esecuzione di un blocco Si è eseguito S 19 FORTRAN - Selezione a più vie: goto calcolato - esempio read(*,*) I goto (100, 200, 300), I 100 continue A=A+I goto continue A=A*I goto continue A=A-I goto continue S Strutture di controllo 20 10

11 Struttura di un programma FORTRAN Unprogramma è tipicamente strutturato nel seguente modo: program <nome_programma> sezione dichiarativa corpo del programma end 21 Array mono-dimensionali in FORTRAN Dichiarazione: <tipo> <nome_array> (<cardinalità>) cardinalità: può essere espressa da un valore di tipo intero, da un espressione di tipo intero, da una coppia di valori (min:max) di tipo intero (dicui il primo è minore delsecondo Esempi: Integer Vett(100) Real Vettore(5:20) ** N.B. cardinalità = max - min +1 = 16 ** Dichiarazione con parametri: integer max parameter max = 20 Integer V(max) ** N. B. cardinalità = 20 ** Uso: <nome_array>(<indice>) < indice> è un espressione di tipo intero il cui valore è minore di <cardinalità> Esempi: Vett(I) Vettore(12) Vettore(b+4) 22 11

12 Array bi-dimensionali in FORTRAN Dichiarazione: <tipo> <nome_array> (<cardinalità1>, <cardinalità2> ) cardinalità: può essere espressa da un valore di tipo intero, da un espressione di tipo intero, da una coppia di valori (min:max) di tipo intero (dicui il primo è minore delsecondo Esempi: Integer Mat (100, 30) Real Vettore(5:30, 40) ** N.B. cardinalità1 = max - min + 1 = 26 ** Dichiarazione con parametri: integer max1, max2 parameter (max1 = 20, max2 = 40) Integer V(max1, max2+10) ** N. B. cardinalità2 = max = 50 ** Uso: <nome_array>(<indice1>, <indice2)) < indice> è un espressione di tipo intero il cui valore è minore di <cardinalità> Esempi: Mat(I,J) Vettore(1,2) Vettore(b+4, 7) 23 Array multi-dimensionali in FORTRAN Dichiarazione: <tipo> <nome_array> (<cardinalità1>, <cardinalità2>,..,<cardinalitàn) ) cardinalità: può essere espressa da un valore di tipo intero, da un espressione di tipo intero, da una coppia di valori (min:max) di tipo intero (dicui il primo è minore delsecondo Esempi: Integer Mat (100, 30,60) Real Vettore(5:30, 40, 50,10) ** N.B. cardinalità1 = max - min + 1 = 26 ** Dichiarazione con parametri: integer max1, max2 parameter (max1 = 20, max2 = 40, max3=15) Integer V(max1, max2+10, max3, 80) Uso: <nome_array>(<indice1>, <indice2>,., <indicen>) < indice> è un espressione di tipo intero il cui valore è minore di <cardinalità> Esempi: Mat(I,J,Z) Vettore(1,2,7,8) Vettore(b+4, 7, 9) 24 12

13 Programma - Max fra tre Program massimo_tra_tre; INT A, B, C, MAX; begin write ( immetti il primo numero A ); read (A); write ( immetti il secondo numero B ); read (B); write ( immetti il terzo numero C ); read (C); MAX:=A; if B>MAX then MAX:=B endif if C>MAX then MAX:=C endif write ( Il valore massimo è, MAX); end. program maxtre integer A, B, C, MAX write(*,*) " immetti il primo numero A " read(*,*) A write(*,*) " immetti il secondo numero B read(*,*) B write(*,*) " immetti il terzo numero C " << " read(*,*) C MAX=A if (B.GT. MAX) MAX=B if (C.GT. MAX) MAX=C write(*,*) " valore massimo =, MAX end 25 Sistema di 2 equazioni e 2 incognite Program sistema2eq real A, B, C, D, E, F,G, X, Y write(*,*) "immetti i coefficienti " write(*,*) "A = read(*,*) A write(*,*) "B = read(*,*) B write(*,*) "C = read(*,*) C write(*,*) "D = read(*,*) D write(*,*) "E = read(*,*) E write(*,*) "F = read(*,*) F G=(A*D)-(B*C) if (G.NE.0) X=((E*D)-(F*B))/G Y=((A*F)-(C*E))/G write(*,*) "le soluzioni sono X=, X, " Y =, Y } else write(*,*) "Sistema Impossibile" end 26 13

14 Programma - Max in sequenza Program massimo_sequenza; INT Num, MAX; begin write ( immetti un numero ); read (Num); MAX:=Num; while Num<>0 do begin read (Num); if Num>MAX then MAX:=Num endif end endwhile write ( Il valore massimo è, MAX); end. program maxseq integer Num, MAX; write(*,*) "immetti un numero" read(*,*) Num MAX=Num 100 continue if (Num = 0) goto 200 write(*,*) "immetti un numero" read(*,*) Num if (Num.GT.MAX) MAX=Num goto continue write(*,*) "Il valore massimo è, MAX end 27 Stringhe di caratteri in FORTRAN Il FORTRAN gestisce stringhe di caratteri a lunghezza fissa. La lunghezza sarà compresa tra un valore maggiore di zero ed un valore massimo (il massimo dipende dal compilatore - tipicamente è pari a 255 caratteri). Dichiarazione di variabili di tipo stringa: CHARACTER * <lunghezza_stringa> <lista_variabili> lunghezza_stringa : è un numero intero indicante la lunghezza massima fissata lista_variabili: è la lista dei nomi delle variabili di tipo stringa tutte aventi la lunghezza specificata Esempi: CHARACTER * 8 a,b - sono dichiarate le 2 variabili a e b di lunghezza massima 8 CHARACTER * 20 parola(10) - è dichiarato un array a cardinalità 10 i cui elementi possono, ciascuno, contenere una stringa di caratteri di lunghezza massima

15 Stringhe di caratteri in FORTRAN Una stringa di caratteri è racchiusa tra apici Esempi: calcolatore elettronico programma Quando una stringa è assegnata ad una variabile questa deve avere una lunghezza atta a poter contenere la stringa; se la lunghezza dichiarata per la variabile è minore di quella della stringa la variabile conterrà un valore troncato della stringa Esempio CHARACTER * 11 a CHARACTER * 8 b a= calcolatore b=a - b conterrà il valore calcolat, cioè solo i primi 8 caratteri della stringa Tra le stringhe di caratteri è definito l operatore di concatenazione //: esso accoda tutti i caratteri di una stringa a quelli di un altra, formando una nuova stringa la cui lunghezza è la somma delle lunghezze delle stringhe concatenate 29 Stringhe di caratteri in FORTRAN Tra le stringhe di caratteri è definito l operatore di concatenazione //: esso accoda tutti i caratteri di una stringa a quelli di un altra, formando una nuova stringa la cui lunghezza è la somma delle lunghezze delle stringhe concatenate Esempio: programma per calcolatore // elettronico => programma per calcolatore elettronico La concatenazione può essere effettuata tra variabili di tipo stringa: Esempio CHARACTER * 11 a, b CHARACTER * 22 c a= calcolatore b= elettronico c=a//b - la variabile c conterrà il valore calcolatoreelettronico ma se: CHARACTER * 15 c c=a//b - la variabile c conterrà il valore calcolatoreelet 30 15

16 Stringhe di caratteri in FORTRAN Sottostringhe E possibile identificare ed estrarre da una stringa una parte (una sottostringa) di essa. In FORTRAN l identificazione ed estrazione di una sottostringa è fatta come indicato di seguito: <identificatore_stringa> (<posizione_inizio_sottostringa>:<posizione_fine_sottostringa>) Esempi: CHARACTER * 11 a a= calcolatore write(*,*) a(2:6) - è stampata la sottostringa alcol CHARACTER * 11 a CHARACTER * 8 b a= calcolatore b=a(4:9) - b= colato 31 Stringhe di caratteri in FORTRAN Sottostringhe E possibile assegnare/modificare una sottostringa in una stringa senza modificare il resto della stringa: Esempi: CHARACTER * 11 a CHARACTER * 8 b a= calcolatore a(4:7)= a= cal1234tore 32 16

17 Formati di input/output I formati di input/output possono essere usati nelle istruzioni di input/output (read/write) per immettere/visualizzare i dati secondo una loro prefissata formattazione READ/WRITE (<unità input/output>, <formato input/output>) <lista interna> lista interna: lista dei nomi delle variabili, ciascuno separato da una virgola unità input/output: un identificativo che individua l unità da/su cui leggere/scrivere i dati il carattere * indica l unità di input/output standard (tastiera/video) formato input/output: indicazione per visualizzare i dati secondo una loro prefissata formattazione 33 Formati di input/output Ilformato di input/output può essere descritto in uno dei tre seguenti modi: con un asterisco per indicare un formato libero guidato dalla lista interna con una descrizione diretta delformato mediante una stringa descrivente la lista del formato istruzione dichiarativa FORMAT, la cui label è indicata nell istruzione di READ/WRITE Esempio: READ (*,*) latoq, coeffa, coeffb READ (5, (I4, I4, I4) ) latoq, coeffa, coeffb READ (*, 100) latoq, coeffa, coeffb 100 FORMAT (I4, I4, I4) 34 17

18 Formati di input/output Lista formato di input/output: ( <I elemento lista>, <II elemento lista>,, <N.mo elemento lista>) dove ciascun <elemento lista> ha il seguente formato: < [fattore ripetitivo] <codice formato> <dimensione campo> [. <dimesione parte decimale >]> con <dimensione campo> e e<dimesione parte decimale > espresse in numeri di caratteri I codici formato sono: I per formati numerici di tipo intero F per formati numerici di tipo reale in virgola fissa E per formati numerici di tipo reale in virgola mobile D per formati numerici di tipo doppia precisione G per formati numerici di tipo reale in virgola fissa/mobile L per formati di tipo logico A per formati stringhe di caratteri 35 Formati di input/output Indichiamo con w la <dimensione campo> e con d la <dimesione parte decimale > Il formato Iw indica che un dato numero intero sarà letto/scritto nell ambito di un campo lungo w caratteri allineati a destra Il numero 746 con un formato I7 sarà rappresentato: Dimensione campo = 7 I numeri 1342 e -95 con un formato (I6, I5) saranno rappresentati: Dimensione campo = 6 Dimensione campo = 5 N.B. Per rappresentare un numero intero di n cifre sarà w? n + 1 (per il segno) 36 18

19 Formati di input/output L istruzione: READ(*, (I3, I5,2I2) ) a, b, c, d con a=13 b=764 c=23 d=78 richiede che i dati siano forniti con il seguente formato w = 3 Analogo risultato si ha con l istruzione: READ(*, 100) a, b, c, d 100 FORMAT (I3, I5,2I2) w = 5 w = 2 w = 2 N.B. Se la dimensione del campo è minore del numero di cifre da rappresentare il numero sarà troncato Esempio: READ(*, (I3) ) a con a=3256 il valore effettivamente letto è Formati di input/output Il formato Fw.d indica che un dato numero reale sarà letto/scritto nell ambito di un campo lungo w caratteri di cui d formano la parte decimale (con allineamento a destra) Il numero 8,75 con un formato F5.3 sarà rappresentato: Dimensione campo = 5 I numeri 13,42 e -3,54 con un formato (F5.2, F7.3) saranno rappresentati: Dimensione campo = 5 Dimensione campo = 5 N.B. w? cifre_intere + cifre_decimali + 2 (per il segno e il punto decimale) 38 19

20 Formati di input/output Il formato in virgola mobile (codice E) rappresenta un numero come una potenza di 10. Il numero è formato da una mantissa (parte intera pari a 0) e da un certo numero di cifre significative decimali e dalla lettera E (la base 10) seguita da due cifre (l esponente di 10), più l eventuale segno dell esponente. Esempio: Il numero 367, 14 è rappresentato come 0,36714E03 Il numero 0, è rappresentato come 0,67214E-04 Il formato Ew.d indica che un dato numero reale sarà letto/scritto nell ambito di un campo lungo w caratteri di cui d formano la cifre significative (con allineamento a destra) N.B. w? d + 7 (1 per il segno, 2 per la mantissa, 4 per E-xx) 39 Formati di input/output Il numero 478, 25 con formato E12.5 è rappresentato E 0 3 Dimensione campo = 12 Il numero -0, con formato E12.6 è rappresentato E Dimensione campo =

21 Formati di input/output Il formato Lw indica che un dato di tipo Logico sarà letto/scritto nell ambito di un campo lungo w caratteri di cui solo l ultimo sarà uguale a T o F Esempio: l istruzione WRITE(*, (L3, L4, L1) ) a, b, c con a=.t. b=.f. c=.t. produce T F T 41 Formati di input/output Il formato Aw indica che un dato di tipo stringa caratteri sarà letto/scritto nell ambito di un campo lungo w caratteri Detta N la lunghezza di una stringa S siha: In input: w >= N sono assegnati ad S i w caratteri più a sinistra nel campo (i rimanenti a destra sono riempiti con spazi bianchi) w =< N sono assegnati ad S gli N caratteri più a destra nel campo (sono troncati i caratteri più a sinistra) In output: w >= N sono assegnati ad S i w caratteri più a destra nel campo (i rimanenti a sinistra sono riempiti con spazi bianchi) w =< N sono assegnati ad S gli N caratteri più a destra nel campo (sono troncati i caratteri più a sinistra) T F T 42 21

22 Data la stringa DIFFERENZA In Input formato A11 Formati di input/output D I F F E R E N Z A formato A8 Dimensione campo = 11 F F E R E N Z A Dimensione campo = 8 43 Formati di input/output Codici di controllo tipografico: Inserzione spazi vuoti kx inserzione di k spazi Inserzione di tabulazione Tn spostamento del cursore nella posizione n TRn TLn spostamento relativo del cursore di n posizioni a destra (TR) o sinistra (TL) Spaziatura verticale b salta un rigo prima di stampare 0 salta 2 righi prima di stampare 1 salta alla pagina seguente + stampa sullo stesso rigo 44 22

23 Formati di input/output Quando usare i formati di input: per leggere dati da dispositivi esterni, ad esempio da un file per stampare/visualizzare i dati con un formato più leggibile Per definire i campi di una struttura RECORD 45 File Contenuto su un supporto informatico (disco, nastro,...) Insieme di records Individuato da un nome Caratterizzato da un metodo di accesso ai suoi records -Metodo Sequenziale -Metodo Diretto File di Testo File NON di Testo (binari, eseguibili, ) Un record particolare di EOF (End Of File) 46 23

24 Operazioni su File Assegnazione il nome del file, così come registrato su memoria di massa è associato ad un identificatore (variabile) Apertura il file è predisposto all elaborazione; si è posizionati sul primo record Scrittura sono aggiunti record al file Lettura è letto un record del file Chiusura il file viene rilasciato 47 File Sequenziale I record sono letti scritti in maniera sequenziale In scrittura i record sono accodati per un file già esistente, per aggiungere nuovi record bisogna leggere il file fino alla fine e poi accodare i nuovi record non si possono aggiungere record in mezzo al file; in tal caso il file va riscritto 48 24

25 Operazioni su File in FORTRAN Apertura e Assegnazione OPEN (UNIT=<numero unità file>, FILE= <nome file>, FORM= [ FORMATTED UNFORMATTED ] ) <numero unità file> è un numero intero utilizzato come identificatore del file <nome file> è il nome del file scritto tra apici - sulla memoria di massa [ FORMATTED UNFORMATTED ] indicano, rispettivamente, se in file è di testo o meno l istruzione OPEN ha anche altri specificatori, che tralasciamo 49 Scrittura Operazioni su File in FORTRAN WRITE (<numero unità file>, <formato output>) <lista interna> Lettura READ (<unità unità file >, <formato input>) <lista interna> Chiusura CLOSE (UNIT=<numero unità file>, STATUS= [ KEEP DELETE ] ) [ KEEP DELETE ] indicano, rispettivamente, se alla chisura il file deve essere mantenuto o cancellato 50 25

26 Operazioni su File in FORTRAN Esempio INTEGER A REAL B CHARACTER*6 C 100 FORMAT (I5, F7.2, A6) OPEN (UNIT=3, FILE= fdat, FORM= FORMATTED ) READ(3, 100) a,b,c CLOSE(UNIT=3, STATUS= KEEP ) INTEGER A REAL B CHARACTER*6 C 100 FORMAT (I5, F7.2, A6) OPEN (UNIT=3, FILE= fdat2, FORM= FORMATTED ) WRITE(3, 100) a,b,c CLOSE(UNIT=3,STATUS= KEEP ) 51 26

I tipi di dato del Fortran

I tipi di dato del Fortran I tipi di dato del Fortran In Fortran sono disponibili 5 tipi di dato (tipi primitivi o predefiniti): INTEGER REAL COMPLEX CHARACTER LOGICAL tipi numerici tipi non numerici Non considereremo il tipo COMPLEX

Dettagli

Fondamenti di Informatica 6. Algoritmi e pseudocodifica

Fondamenti di Informatica 6. Algoritmi e pseudocodifica Vettori e matrici #1 Fondamenti di Informatica 6. Algoritmi e pseudocodifica Corso di Laurea in Ingegneria Civile A.A. 2010-2011 1 Semestre Prof. Giovanni Pascoschi Le variabili definite come coppie

Dettagli

Array in Fortran 90. Ing. Luca De Santis. Anno accademico 2006/2007. DIS - Dipartimento di informatica e sistemistica

Array in Fortran 90. Ing. Luca De Santis. Anno accademico 2006/2007. DIS - Dipartimento di informatica e sistemistica Array in Fortran 90 Ing. Luca De Santis DIS - Dipartimento di informatica e sistemistica Anno accademico 2006/2007 Fortran 90: array DIS - Dipartimento di informatica e sistemistica 1 / 25 Cosa vedremo

Dettagli

Caratteristiche di un linguaggio ad alto livello

Caratteristiche di un linguaggio ad alto livello Caratteristiche di un linguaggio ad alto livello Un linguaggio ad alto livello deve offrire degli strumenti per: rappresentare le informazioni di interesse dell algoritmo definire le istruzioni che costituiscono

Dettagli

Breve guida al linguaggio FORTRAN 77

Breve guida al linguaggio FORTRAN 77 Breve guida al linguaggio FORTRAN 77 Variabili (valori di default) Iniziali con lettere da I a N Iniziali con lettere da A a H oppure da O a Z variabili intere, 4 byte in precisione singola variabili reali,

Dettagli

Sviluppare un programma in FORTRAN

Sviluppare un programma in FORTRAN Sviluppare un programma in FORTRAN Scrivere il file sorgente Editor di testo (emacs, vi, notepad, etc) Compilare Compilatore (ifort, gfortran, etc) Eseguire il programma Riga di comando, doppio click,

Dettagli

Algoritmi, Strutture Dati e Programmi. UD 2.b: Programmazione in Pascal

Algoritmi, Strutture Dati e Programmi. UD 2.b: Programmazione in Pascal Algoritmi, Strutture Dati e Programmi : Programmazione in Pascal Prof. Alberto Postiglione AA 2007-2008 Università degli Studi di Salerno Il Linguaggio di Programmazione Pascal Esistono molti linguaggi

Dettagli

Costanti e Variabili

Costanti e Variabili Parte 3 Costanti e Variabili Identificatori Un identificatore è un nome che viene associato a diverse entità (costanti, tipi, variabili, funzioni, ecc.) e serve ad identificare la particolare entità Gli

Dettagli

Corso di Fondamenti di Informatica Il sistema dei tipi in C++

Corso di Fondamenti di Informatica Il sistema dei tipi in C++ Corso di Fondamenti di Informatica Il sistema dei tipi in C++ Anno Accademico Francesco Tortorella Struttura di un programma C++ // Programma semplice in C++ #include int main() { cout

Dettagli

Breve Manuale di Riferimento sulla Sintassi Linguaggi C++ e FORTRAN

Breve Manuale di Riferimento sulla Sintassi Linguaggi C++ e FORTRAN Breve Manuale di Riferimento sulla Sintassi Linguaggi e versione aggiornata al 05/02/2004 Sommario Elementi di Base... 2 Dati, Tipi e Dichiarazioni... 2 Tipi di Dato di Base... 2 Tipi di Dato Strutturati...

Dettagli

Informatica ALGORITMI E LINGUAGGI DI PROGRAMMAZIONE. Francesco Tura. F. Tura

Informatica ALGORITMI E LINGUAGGI DI PROGRAMMAZIONE. Francesco Tura. F. Tura Informatica ALGORITMI E LINGUAGGI DI PROGRAMMAZIONE Francesco Tura francesco.tura@unibo.it 1 Lo strumento dell informatico: ELABORATORE ELETTRONICO [= calcolatore = computer] Macchina multifunzionale Macchina

Dettagli

Evoluzione del FORTRAN 14/03/2016. LABORATORIO DI PROGRAMMAZIONE Corso di laurea in matematica 15 IL LINGUAGGIO FORTRAN

Evoluzione del FORTRAN 14/03/2016. LABORATORIO DI PROGRAMMAZIONE Corso di laurea in matematica 15 IL LINGUAGGIO FORTRAN LABORATORIO DI PROGRAMMAZIONE Corso di laurea in matematica 15 IL LINGUAGGIO FORTRAN Marco Lapegna Dipartimento di Matematica e Applicazioni Universita degli Studi di Napoli Federico II wpage.unina.it/lapegna

Dettagli

Cognome e Nome : Corso e Anno di Immatricolazione: Modalità di Laboratorio (Progetto/Prova) :

Cognome e Nome : Corso e Anno di Immatricolazione: Modalità di Laboratorio (Progetto/Prova) : PROGRAMMAZIONE (Corsi B e C) Pre-appello di Gennaio 2004 (A.A. 2003/2004) PROGRAMMAZIONE (B e C) S. Straordinaria - Appello di Gennaio (A.A. 2002/2003) 22 Gennaio 2004 ore 11 Aula II di Facoltà (Durata:

Dettagli

Tipi elementari, costanti. Tipi di dati. VALORI: un insieme dei valori del tipo OPERAZIONI: per operare su tali valori. Tipi. intero reale carattere

Tipi elementari, costanti. Tipi di dati. VALORI: un insieme dei valori del tipo OPERAZIONI: per operare su tali valori. Tipi. intero reale carattere Tipi elementari, costanti 1 Tipi di dati VALORI: un insieme dei valori del tipo OPERAZIONI: per operare su tali valori Tipi Semplici intero reale carattere Strutturati 2 1 Tipo intero Gli interi servono

Dettagli

FORTRAN 77 FORTRAN 77 FORTRAN 77 FORTRAN 77 FORTRAN 77 FORTRAN 77. Introduzione. Introduzione. PROGRAM {nome} {dichiarazioni}

FORTRAN 77 FORTRAN 77 FORTRAN 77 FORTRAN 77 FORTRAN 77 FORTRAN 77. Introduzione. Introduzione. PROGRAM {nome} {dichiarazioni} Introduzione Introduzione PROGRAM {nome} {istruzioni (statements)} Struttura Esempio 1 col. 01-05 : statement label (opzionale) col. 06 : continuazione linea col. 07-72 : FORTRAN statements col. 73-80

Dettagli

Le basi del linguaggio Java

Le basi del linguaggio Java Le basi del linguaggio Java Compilazione e interpretazione Quando si compila il codice sorgente scritto in Java, il compilatore genera il codice compilato, chiamato bytecode. È un codice generato per una

Dettagli

Introduzione al linguaggio Fortran 90

Introduzione al linguaggio Fortran 90 Introduzione al linguaggio Fortran 90 Ing. Luca De Santis DIS - Dipartimento di informatica e sistemistica Anno accademico 2007/2008 Fortran 90: concetti di base DIS - Dipartimento di informatica e sistemistica

Dettagli

Struttura dei programmi C

Struttura dei programmi C Programmi C Struttura dei Programmi C Dichiarazione delle variabili Operazioni di Ingresso/Uscita Fondamenti di Informatica 1 Struttura dei programmi C Un programma C deve contenere, nell'ordine: una parte

Dettagli

Istruzioni condizionali di diramazione in Fortran 90

Istruzioni condizionali di diramazione in Fortran 90 Istruzioni condizionali di diramazione in Fortran 90 Ing. Luca De Santis DIS - Dipartimento di informatica e sistemistica Anno accademico 2006/2007 Fortran 90: Istruzioni di diramazione DIS - Dipartimento

Dettagli

IL TEOREMA DI BOEHM-JACOPINI

IL TEOREMA DI BOEHM-JACOPINI IL TEOREMA DI BOEHM-JACOPINI Un qualunque algoritmo può essere descritto unicamente attraverso le tre strutture: Sequenza Diramazione Ciclo o iterazione Le tre strutture sono complete. Un qualunque linguaggio

Dettagli

Tipi elementari, costanti. Tipi di dati. VALORI: un insieme dei valori del tipo OPERAZIONI: per operare su tali valori. Tipi. intero reale carattere

Tipi elementari, costanti. Tipi di dati. VALORI: un insieme dei valori del tipo OPERAZIONI: per operare su tali valori. Tipi. intero reale carattere Tipi elementari, costanti 1 Tipi di dati VALORI: un insieme dei valori del tipo OPERAZIONI: per operare su tali valori Tipi Semplici intero reale carattere Strutturati 2 1 Tipo intero Gli interi servono

Dettagli

#include <iostream> // libreria che gestisce flusso di input e output. using namespace std; // uso di librerie standard del C++

#include <iostream> // libreria che gestisce flusso di input e output. using namespace std; // uso di librerie standard del C++ Qualsiasi programma in C++ segue lo schema: #include // libreria che gestisce flusso di input e output using namespace std; // uso di librerie standard del C++ int main() { // dichiarazioni

Dettagli

VBA è un linguaggio di scripting derivato da Visual Basic, da cui prende il nome. Come ogni linguaggio ha le sue regole.

VBA è un linguaggio di scripting derivato da Visual Basic, da cui prende il nome. Come ogni linguaggio ha le sue regole. Excel VBA VBA Visual Basic for Application VBA è un linguaggio di scripting derivato da Visual Basic, da cui prende il nome. Come ogni linguaggio ha le sue regole. 2 Prima di iniziare. Che cos è una variabile?

Dettagli

Introduzione alla programmazione in C(++)

Introduzione alla programmazione in C(++) Testi Testi Consigliati: Introduzione alla programmazione in C(++) A. Kelley & I. Pohl C didattica e programmazione A. Kelley & I. Pohl C didattica e programmazione B.W. Kernighan & D. D. M. M. Ritchie

Dettagli

Progettazione di algoritmi: componenti di base e metodologie di sviluppo. Variabili e costanti. Variabili e costanti A = 2. Algoritmo PASCAL-LIKE

Progettazione di algoritmi: componenti di base e metodologie di sviluppo. Variabili e costanti. Variabili e costanti A = 2. Algoritmo PASCAL-LIKE Progettazione di algoritmi: componenti di base e metodologie di sviluppo Variabili e costanti Variabili e costanti PROBLEMA: calcolo dell area A di un triangolo di base b ed altezza h b h A =.4.5 b =.4,

Dettagli

Il potere espressivo di un linguaggio è caratterizzato da: PROGRAMMA = DATI + CONTROLLO

Il potere espressivo di un linguaggio è caratterizzato da: PROGRAMMA = DATI + CONTROLLO LINGUAGGI DI PROGRAMMAZIONE Il potere espressivo di un linguaggio è caratterizzato da: quali tipi di dati consente di rappresentare (direttamente o tramite definizione dell utente) quali istruzioni di

Dettagli

Tipi di dato primitivi

Tipi di dato primitivi Tipi di dato primitivi (oltre int) Tipi di dato primitivi int (già trattati) Valori logici (ricordati) Valori reali Valori carattere Informatica - A.A. 2009/2010 - Tipi di dato 2 1 Valori logici (il caso

Dettagli

LESSICO E SINTASSI DEL PASCAL

LESSICO E SINTASSI DEL PASCAL LESSICO E SINTASSI DEL PASCAL Il linguaggio di programmazione Pascal è potente e semplice nello stesso tempo; ciò ne giustifica la scelta, inoltre i nuovi compilatori del linguaggio pascal permettono di

Dettagli

LINGUAGGI DI PROGRAMMAZIONE!

LINGUAGGI DI PROGRAMMAZIONE! LINGUAGGI DI PROGRAMMAZIONE! Il potere espressivo di un linguaggio è! caratterizzato da:! quali tipi di dati consente di rappresentare (direttamente o tramite definizione dell utente)! quali istruzioni

Dettagli

Espressione di chiamata di funzione

Espressione di chiamata di funzione Avvertenza Quanto segue NON è un libro, ma è una copia dei lucidi usati a lezione che NON sostituisce i libri di testo adottati e consigliati per l insegnamento di Informatica Generale. Questa copia è

Dettagli

MATLAB I/O. Informatica B - A.A. 2012/2013 ACQUISIZIONE DI INPUT DA TASTIERA

MATLAB I/O. Informatica B - A.A. 2012/2013 ACQUISIZIONE DI INPUT DA TASTIERA MATLAB I/O Informatica B - A.A. 2012/2013 ACQUISIZIONE DI INPUT DA TASTIERA Funzione input valore = input( inserisci un valore ); Matlab stampa a video la stringa inserisci un valore ed aspetta di ricevere

Dettagli

r fattore di ripetizione w ampiezza di campo m numero minimo cifre da visualizzare d numero cifre decimali Print e Read I/O in Fortran sintassi

r fattore di ripetizione w ampiezza di campo m numero minimo cifre da visualizzare d numero cifre decimali Print e Read I/O in Fortran sintassi I/O in Ftran Print e Read Paolo Bison Fondamenti di Infmatica A.A. 2006/07 Università di Padova R911 print-stmt is PRINT fmat [, output-item-list ] R909 read-stmt is READ ( io-control-spec-list ) [ input-item-list

Dettagli

Input/Output di numeri

Input/Output di numeri Input/Output di numeri I/O di numeri Per utilizzare le funzioni di I/O occorre include il file di intestazione (o file header) stdio.h utilizzando all inizio del sorgente la direttiva #include

Dettagli

ESECUZIONE DI PROGRAMMI C SU MACCHINE REALI. Docente: Giorgio Giacinto AA 2008/2009. formalizzazione degli algoritmi in linguaggio C

ESECUZIONE DI PROGRAMMI C SU MACCHINE REALI. Docente: Giorgio Giacinto AA 2008/2009. formalizzazione degli algoritmi in linguaggio C Università degli Studi di Cagliari Corso di Laurea Specialistica in Ingegneria per l Ambiente ed il Territorio Corso di Laurea Specialistica in Ingegneria Civile - Strutture FONDAMENTI DI INFORMATICA 2

Dettagli

Foglio Elettronico Lezione 1

Foglio Elettronico Lezione 1 - Introduzione - Celle e riferimenti - Formule - Approfondimenti - Funzioni logiche Sommario Introduzione - Foglio elettronico o foglio di calcolo - Cos'è? Strumento per raccogliere dati organizzati in

Dettagli

Programmare in C. Maurizio Palesi Salvatore Serrano. Valori. Operazioni. Un insieme di valori del tipo. Per operare su tali valori Tipi

Programmare in C. Maurizio Palesi Salvatore Serrano. Valori. Operazioni. Un insieme di valori del tipo. Per operare su tali valori Tipi MASTER Information Technology Excellence Road (I.T.E.R.) Programmare in C Maurizio Palesi Salvatore Serrano Master ITER Informatica di Base Maurizio Palesi, Salvatore Serrano 1 Tipi di Dati Valori Un insieme

Dettagli

Introduzione al linguaggio Fortran 90

Introduzione al linguaggio Fortran 90 Introduzione al linguaggio Fortran 90 Ing. Luca De Santis DIS - Dipartimento di informatica e sistemistica Anno accademico 2006/2007 Fortran 90: concetti di base DIS - Dipartimento di informatica e sistemistica

Dettagli

VARIABILI E COSTANTI

VARIABILI E COSTANTI VARIABILI E COSTANTI - Variabili e costanti - 1 PROBLEMA: Calcolo dell area di un triangolo di base b e altezza h. area = b ------------ h 2 ESEMPIO: b = 2,4 h = 1,5 area = 2,4 -------------------- 1,5

Dettagli

Linguaggio C - sezione dichiarativa: costanti e variabili

Linguaggio C - sezione dichiarativa: costanti e variabili Dipartimento di Elettronica ed Informazione Politecnico di Milano Informatica e CAD (c.i.) - ICA Prof. Pierluigi Plebani A.A. 2008/2009 Linguaggio C - sezione dichiarativa: costanti e variabili La presente

Dettagli

Introduzione a Matlab

Introduzione a Matlab INFORMATICA B Ingegneria Elettrica Introduzione a Matlab Introduzione a Matlab Matlab (MATrix LABoratory) è uno strumento per il calcolo scientifico ed ingegneristico Matlab facilita lo sviluppo di programmi

Dettagli

Introduzione alla programmazione

Introduzione alla programmazione Introduzione alla programmazione Risolvere un problema Per risolvere un problema si procede innanzitutto all individuazione Delle informazioni, dei dati noti Dei risultati desiderati Il secondo passo consiste

Dettagli

Introduzione alla programmazione Algoritmi e diagrammi di flusso. Sviluppo del software

Introduzione alla programmazione Algoritmi e diagrammi di flusso. Sviluppo del software Introduzione alla programmazione Algoritmi e diagrammi di flusso F. Corno, A. Lioy, M. Rebaudengo Sviluppo del software problema idea (soluzione) algoritmo (soluzione formale) programma (traduzione dell

Dettagli

Per gli esercizi sulla algebra booleana, si consiglia di verificare tramite tabelle di verità le equivalenze logiche proposte sulle dispense.

Per gli esercizi sulla algebra booleana, si consiglia di verificare tramite tabelle di verità le equivalenze logiche proposte sulle dispense. Fondamenti di Informatica - A. Fantechi Raccolta di esercizi Per gli esercizi sulla algebra booleana, si consiglia di verificare tramite tabelle di verità le equivalenze logiche proposte sulle dispense.

Dettagli

Algoritmi e Strutture Dati

Algoritmi e Strutture Dati Algoritmi e Strutture Dati Università di Camerino Corso di Laurea in Informatica (12 CFU) I periodo didattico Emanuela Merelli email:emanuela.merelli@unicam.it Argomenti della lezione Elementi di un linguaggio

Dettagli

Somma di numeri binari

Somma di numeri binari Fondamenti di Informatica: Codifica Binaria dell Informazione 1 Somma di numeri binari 0 + 0 = 0 0 + 1 = 1 1 + 0 = 1 1 + 1 = 10 Esempio: 10011011 + 00101011 = 11000110 in base e una base Fondamenti di

Dettagli

Fortran. Introduzione.

Fortran. Introduzione. Fortran Introduzione http://www.dia.uniroma3.it/~roselli/ roselli@dia.uniroma3.it Credits Materiale a cura del Prof. Franco Milicchio Introduzione Esistono molti linguaggi di programmazione usati in vari

Dettagli

(prof. Claudio Maccherani, Perugia, 2009)

(prof. Claudio Maccherani, Perugia, 2009) (prof. Claudio Maccherani, Perugia, 2009) Il Fortran può essere considerato il primo linguaggio di programmazione ad alto livello. La sua prima implementazione, realizzata da un gruppo di lavoro diretto

Dettagli

Rappresentazione di Numeri Reali. Rappresentazione in virgola fissa (fixed-point) Rappresentazione in virgola fissa (fixed-point)

Rappresentazione di Numeri Reali. Rappresentazione in virgola fissa (fixed-point) Rappresentazione in virgola fissa (fixed-point) Rappresentazione di Numeri Reali Un numero reale è una grandezza continua Può assumere infiniti valori In una rappresentazione di lunghezza limitata, deve di solito essere approssimato. Esistono due forme

Dettagli

La programmazione nel linguaggio C

La programmazione nel linguaggio C 3 La programmazione nel linguaggio C 3.0 La programmazione nel linguaggio C c Diego Calvanese Fondamenti di Informatica Corso di Laurea in Ingegneria Elettronica A.A. 2001/2002 3.0 0 Introduzione ai programmi

Dettagli

Dispense di Informatica Anno Scolastico 2008/2009 Classe 3APS. Dall'Algoritmo al Programma

Dispense di Informatica Anno Scolastico 2008/2009 Classe 3APS. Dall'Algoritmo al Programma Istituto Tecnico Statale Commerciale Dante Alighieri Cerignola (FG) Dispense di Informatica Anno Scolastico 2008/2009 Classe 3APS Dall'Algoritmo al Programma Pr.: 002 Ver.:1.0 Autore: prof. Michele Salvemini

Dettagli

Il Modello di von Neumann (2) Prevede 3 entità logiche:

Il Modello di von Neumann (2) Prevede 3 entità logiche: Introduzione all Architettura degli Elaboratori Sommario Macchina di von Neumann Esecuzione dei programmi Rappresentazione dei dati Dati numerici Dati alfabetici 1 2 Il Modello di von Neumann (1) L architettura

Dettagli

PASCAL standard. Il linguaggio PASCAL nasce come evoluzione del linguaggio ALGOL60 (ALGOrithmic Language) nel 1968 ad opera di N. Wirth.

PASCAL standard. Il linguaggio PASCAL nasce come evoluzione del linguaggio ALGOL60 (ALGOrithmic Language) nel 1968 ad opera di N. Wirth. PASCAL standard Il linguaggio PASCAL nasce come evoluzione del linguaggio ALGOL60 (ALGOrithmic Language) nel 1968 ad opera di N. Wirth. Nb: primi linguaggi furono: Fortran, Algol, Ada, Cobol (cfr testo)

Dettagli

Rappresentazione degli algoritmi

Rappresentazione degli algoritmi Rappresentazione degli algoritmi Universitá di Ferrara Ultima Modifica: 21 ottobre 2014 1 1 Diagramma di flusso Utilizzare il diagramma di flusso per rappresentare gli algoritmi che risolvono i seguenti

Dettagli

Fortran per Ingegneri

Fortran per Ingegneri Fortran per Ingegneri Lezione 4 A.A. 2014/2015 Marco Redolfi marco.redolfi@unitn.it Simone Zen simone.zen@unitn.it Formati e Formattazione Finora abbiamo letto valori da tastiera e scritto sullo schermo

Dettagli

Linguaggio C Informatica Grafica

Linguaggio C Informatica Grafica Linguaggio C Informatica Grafica Corsi di Informatica Grafica Prof. Manuel Roveri Dipartimento di Elettronica e Informazione roveri@elet.polimi.it Linguaggio C Breve storia Struttura di un programma Variabili

Dettagli

Lezione 6 Introduzione al C++ Mauro Piccolo

Lezione 6 Introduzione al C++ Mauro Piccolo Lezione 6 Introduzione al C++ Mauro Piccolo piccolo@di.unito.it Linguaggi di programmazione Un linguaggio formale disegnato per descrivere la computazione Linguaggi ad alto livello C, C++, Pascal, Java,

Dettagli

ESECUZIONE DI PROGRAMMI C SU MACCHINE REALI. Docente: Giorgio Giacinto AA 2009/2010

ESECUZIONE DI PROGRAMMI C SU MACCHINE REALI. Docente: Giorgio Giacinto AA 2009/2010 Università degli Studi di Cagliari Corso di Laurea Specialistica in Ingegneria per l Ambiente ed il Territorio Corso di Laurea Specialistica in Ingegneria Civile - Strutture FONDAMENTI DI INFORMATICA 2

Dettagli

I costrutti forniti dal linguaggio si dividono in corrispondenti classi di istruzioni

I costrutti forniti dal linguaggio si dividono in corrispondenti classi di istruzioni Classi di istruzioni In maniera simile a quanto fatto per i dati, un linguaggio mette a disposizione dei costrutti per realizzare la parte esecutiva dell algoritmo. Questa consiste di: Leggi i valori di

Dettagli

Algoritmi e basi del C Struttura di un programma

Algoritmi e basi del C Struttura di un programma Algoritmi e basi del C Struttura di un programma Marco D. Santambrogio marco.santambrogio@polimi.it Ver. aggiornata al 17 Marzo 2015 Compitini Compitini di INFO: 24 Aprile 2015 4.15pm @ C.G.1 (Ed. 9) 21

Dettagli

unità didattica 2 Le prime istruzioni notevoli in Pascal

unità didattica 2 Le prime istruzioni notevoli in Pascal unità didattica 2 Le prime istruzioni notevoli in Pascal 1. L operazione di assegnazione Quando si desidera che una certa variabile contenga un determinato valore costante, o un risultato di operazioni

Dettagli

UD 3.2b: Programmazione in Pascal (1)

UD 3.2b: Programmazione in Pascal (1) UD 3.2b: Programmazione in Pascal (1) Il Linguaggio di Programmazione Pascal Esistono molti linguaggi di programmazione. Per motivi didattici utilizzeremo una versione ridotta di un linguaggio di programmazione

Dettagli

Introduzione al linguaggio C

Introduzione al linguaggio C Introduzione al linguaggio C Abbiamo già visto come un programma non sia altro che un algoritmo codificato in un linguaggio di programmazione. Problema: quale linguaggio scegliere per la codifica di un

Dettagli

Lezione 4. Sommario. L artimetica binaria: I numeri relativi e frazionari. I numeri relativi I numeri frazionari

Lezione 4. Sommario. L artimetica binaria: I numeri relativi e frazionari. I numeri relativi I numeri frazionari Lezione 4 L artimetica binaria: I numeri relativi e frazionari Sommario I numeri relativi I numeri frazionari I numeri in virgola fissa I numeri in virgola mobile 1 Cosa sono inumeri relativi? I numeri

Dettagli

Problema: dati i voti di tutti gli studenti di una classe determinare il voto medio della classe.

Problema: dati i voti di tutti gli studenti di una classe determinare il voto medio della classe. Problema: dati i voti di tutti gli studenti di una classe determinare il voto medio della classe. 1) Comprendere il problema 2) Stabilire quali sono le azioni da eseguire per risolverlo 3) Stabilire la

Dettagli

Programmazione Procedurale in Linguaggio C++

Programmazione Procedurale in Linguaggio C++ Programmazione Procedurale in Linguaggio C++ Elementi di Base Parte 3 Istruzioni di Assegnazione G. Mecca M. Samela Università della Basilicata Elementi di Base >> Sommario Sommario Introduzione Istruzioni

Dettagli

Fogli Elettronici. Idoneità Informatica Prof. Mauro Gaspari

Fogli Elettronici. Idoneità Informatica Prof. Mauro Gaspari Fogli Elettronici Idoneità Informatica Prof. Mauro Gaspari Cosa è un foglio elettronico. Strumento per raccogliere dati organizzati in tabelle e farci delle operazioni: Le celle contengono numeri o altri

Dettagli

Università degli studi di Roma Tor Vergata Ingegneria Medica Informatica I Programma del Corso

Università degli studi di Roma Tor Vergata Ingegneria Medica Informatica I Programma del Corso Obiettivi Di seguito vengono riportate una serie di domande che possono essere poste durante la prova formale del corso. Le seguenti domande non sono da ritenersi esaustive ma esemplificative. 1. Architettura

Dettagli

Qualsiasi programma in C++ segue lo schema:

Qualsiasi programma in C++ segue lo schema: Qualsiasi programma in C++ segue lo schema: #include // libreria che gestisce flusso di input e output using namespace std; // uso di librerie standard del C++ int main() { // dichiarazioni

Dettagli

Strutture dati e loro organizzazione. Gabriella Trucco

Strutture dati e loro organizzazione. Gabriella Trucco Strutture dati e loro organizzazione Gabriella Trucco Introduzione I linguaggi di programmazione di alto livello consentono di far riferimento a posizioni nella memoria principale tramite nomi descrittivi

Dettagli

Introduzione alla programmazione in C++

Introduzione alla programmazione in C++ Introduzione alla programmazione in C++ Fondamenti di Informatica Roberto BASILI Marzo, 2007 La Programmazione Programmare significa: Determinare la natura del problema (analisi) Definire una decomposizione

Dettagli

Informazione binaria: - rappresentazione dei numeri razionali -

Informazione binaria: - rappresentazione dei numeri razionali - Informazione binaria: - rappresentazione dei numeri razionali - Percorso di Preparazione agli Studi di Ingegneria Università degli Studi di Brescia Docente: Massimiliano Giacomin Nel seguito vedremo tipologie

Dettagli

Variabili strutturate

Variabili strutturate Esempio Ordinamento crescente di numeri: 25 7 I passo: 25 7 25 7 7 25 7 25 Variabili strutturate in due scambi 25 è stato portato al suo posto Gli array II passo: 7 25 7 25 7 25 in uno scambio 7 è stato

Dettagli

Scilab. Introduzione a Scilab - Vettori. Corso di Informatica CdL: Chimica. Claudia d'amato.

Scilab. Introduzione a Scilab - Vettori. Corso di Informatica CdL: Chimica. Claudia d'amato. Scilab Corso di Informatica CdL: Chimica Introduzione a Scilab - Vettori Claudia d'amato claudia.damato@di.uniba.it Scilab Introduzione Ambiente matematico e di simulazione numerica sviluppato per la realizzazione

Dettagli

MATLAB Elementi di grafica Costrutti di programmazione

MATLAB Elementi di grafica Costrutti di programmazione MATLAB Elementi di grafica Costrutti di programmazione Operazioni punto Le operazioni punto agiscono su array che abbiano le stesse dimensioni:.* prodotto elemento per elemento./ divisione elemento per

Dettagli

Unità aritmetica e logica

Unità aritmetica e logica Aritmetica del calcolatore Capitolo 9 Unità aritmetica e logica n Esegue le operazioni aritmetiche e logiche n Ogni altra componente nel calcolatore serve questa unità n Gestisce gli interi n Può gestire

Dettagli

Tipi di dato. Il concetto di tipo di dato viene introdotto per raggiungere due obiettivi:

Tipi di dato. Il concetto di tipo di dato viene introdotto per raggiungere due obiettivi: Tipi di dato Il concetto di tipo di dato viene introdotto per raggiungere due obiettivi: esprimere in modo sintetico la loro rappresentazione in memoria, e un insieme di operazioni ammissibili permettere

Dettagli

STRUTTURE (O COSTRUTTI) DI CONTROLLO

STRUTTURE (O COSTRUTTI) DI CONTROLLO Le strutture di controllo Le strutture di controllo STRUTTURE (O COSTRUTTI) DI CONTROLLO determinano l ordine con cui devono essere eseguite le istruzioni sono indipendenti dalla natura delle istruzioni

Dettagli

Esercitazione 4. Comandi iterativi for, while, do-while

Esercitazione 4. Comandi iterativi for, while, do-while Esercitazione 4 Comandi iterativi for, while, do-while Comando for for (istr1; cond; istr2) istr3; Le istruzioni vengono eseguite nel seguente ordine: 1) esegui istr1 2) se cond è vera vai al passo 3 altrimenti

Dettagli

Programmazione Procedurale in Linguaggio C++

Programmazione Procedurale in Linguaggio C++ Programmazione Procedurale in Linguaggio C++ Elementi di Base Parte 6 Il FORTRAN versione 2.0 Questolavoroè concessoin uso secondoi termini di unalicenzacreative Commons (vedi ultima pagina) G. Mecca Università

Dettagli

L intero è o il valore zero o una stringa di cifre che inizia con una cifra diversa sa zero.

L intero è o il valore zero o una stringa di cifre che inizia con una cifra diversa sa zero. ANALISI SINTATTICA Data un linguaggio scrivere una grammatica che lo generi ESERCIZIO 1 Definire una grammatica per il linguaggio L = {ww w appartiene a (a, b)*} ESERCIZIO 2 Dato l alfabeto T=[0,1,2,3,4,5,6,7,8,9,/}

Dettagli

Scrittura formattata - printf

Scrittura formattata - printf Esercizi su Input/Output con formato FormattedIO 1 Scrittura formattata - printf Funzione printf int printf ( , ) La funzione restituisce un valore intero uguale ai caratteri

Dettagli

Programmazione con il linguaggio LibreOffice Basic

Programmazione con il linguaggio LibreOffice Basic Programmazione con il linguaggio LibreOffice Basic L ambiente di programmazione Il software LibreOffice possiede un ambiente di programmazione in linguaggio Basic, che consente di creare procedure software

Dettagli

Introduzione agli Algoritmi

Introduzione agli Algoritmi Introduzione agli Algoritmi Informatica Sara Zuppiroli A.A. 2012-2013 Informatica () Introduzione agli Algoritmi A.A. 2012-2013 1 / 25 Risoluzione dei problemi Dalla descrizione del problema all individuazione

Dettagli

Gestione di files Motivazioni

Gestione di files Motivazioni Gestione di files Motivazioni Un programma in esecuzione legge (sequenzialmente) una sequenza di caratteri prodotti "al volo" dall'utente (tramite tastiera) il programma in esecuzione scrive (sequenzialmente)

Dettagli

Elementi lessicali. Lezione 4. La parole chiave. Elementi lessicali. Elementi lessicali e espressioni logiche. Linguaggi di Programmazione I

Elementi lessicali. Lezione 4. La parole chiave. Elementi lessicali. Elementi lessicali e espressioni logiche. Linguaggi di Programmazione I Lezione 4 Elementi lessicali e espressioni logiche Matricole 2-3 Elementi lessicali il linguaggio C ha un suo vocabolario di base i cui elementi sono detti token esistono 6 tipi di token: parole chiave

Dettagli

Esercizi Programmazione I

Esercizi Programmazione I Esercizi Programmazione I 9 Novembre 201 Esercizio 1 Valutare e dare il tipo delle seguenti espressioni condizionali. 1 char a= a, b= b ; // a ha v a l o r e decimale 97 2 i n t i= 1, j= 2 ; 3 double x=

Dettagli

Linguaggio C. Tipi predefiniti e operatori. Università degli Studi di Brescia. Docente: Massimiliano Giacomin

Linguaggio C. Tipi predefiniti e operatori. Università degli Studi di Brescia. Docente: Massimiliano Giacomin Linguaggio C Tipi predefiniti e operatori Università degli Studi di Brescia Docente: Massimiliano Giacomin Elementi di Informatica e Programmazione Università di Brescia 1 RICHIAMI char 8 bit Valori interi

Dettagli

Dalla prima lezione. LABORATORIO DI PROGRAMMAZIONE Corso di laurea in matematica 7 VARIABILI E COSTANTI 28/02/2016. Concetto di algoritmo

Dalla prima lezione. LABORATORIO DI PROGRAMMAZIONE Corso di laurea in matematica 7 VARIABILI E COSTANTI 28/02/2016. Concetto di algoritmo LABORATORIO DI PROGRAMMAZIONE Corso di laurea in matematica 7 VARIABILI E COSTANTI Marco Lapegna Dipartimento di Matematica e Applicazioni Universita degli Studi di Napoli Federico II wpage.unina.it/lapegna

Dettagli

Aritmetica dei Calcolatori Elettronici

Aritmetica dei Calcolatori Elettronici Aritmetica dei Calcolatori Elettronici Prof. Orazio Mirabella L informazione Analogica Segnale analogico: variabile continua assume un numero infinito di valori entro l intervallo di variazione intervallo

Dettagli

Variabili. Unità 2. Domenico Daniele Bloisi. Corso di Fondamenti di Informatica Ingegneria delle Comunicazioni BCOR Ingegneria Elettronica BELR

Variabili. Unità 2. Domenico Daniele Bloisi. Corso di Fondamenti di Informatica Ingegneria delle Comunicazioni BCOR Ingegneria Elettronica BELR Corso di Fondamenti di Informatica Ingegneria delle Comunicazioni BCOR Ingegneria Elettronica BELR Domenico Daniele Bloisi Docenti Parte I prof. Silvio Salza salza@dis.uniroma1.it http://www.dis.uniroma1.it/~salza/fondamenti.htm

Dettagli

1-Rappresentazione dell informazione

1-Rappresentazione dell informazione 1-Rappresentazione dell informazione Informazioni: testi, numeri, immagini, suoni, etc.; Come viene rappresentata l informazione in un calcolatore? Uso di tecnologia digitale: tutto ciò che viene rappresentato

Dettagli

Costrutti condizionali e iterativi

Costrutti condizionali e iterativi Costrutti condizionali e iterativi Introduction to Fortran 90 Paolo Ramieri, CINECA Aprile 2014 Strutture di controllo Le strutture di controllo permettono di alterare la sequenza di esecuzione delle istruzioni

Dettagli

Funzioni di I/O per numeri. Input e output di valori numerici. Input formattato scanf. Stream preesistenti

Funzioni di I/O per numeri. Input e output di valori numerici. Input formattato scanf. Stream preesistenti Funzioni di I/O per numeri 2 Input e output di valori numerici Ver. 2.4.2 2012 - Claudio Fornaro - Corso di programmazione in C Per utilizzare le funzioni di Input/Output bisogna includere il file di intestazione

Dettagli

Operazioni di input e output in Fortran 90

Operazioni di input e output in Fortran 90 Operazioni di input e output in Fortran 90 Ing. Luca De Santis DIS - Dipartimento di informatica e sistemistica Anno accademico 2006/2007 Fortran 90: file e formattazione DIS - Dipartimento di informatica

Dettagli

Algoritmi e basi del C

Algoritmi e basi del C Algoritmi e basi del C Marco D. Santambrogio marco.santambrogio@polimi.it Ver. aggiornata al 3 O/obre 2013 Installation Party Dove: L.06 Quando: Sabato 12 Ottobre 9.00am - 12.00pm 2 WAT Il docente ha messo

Dettagli

Linguaggio C. Tipi predefiniti. Università degli Studi di Brescia. Prof. Massimiliano Giacomin. Prof. M. Giacomin

Linguaggio C. Tipi predefiniti. Università degli Studi di Brescia. Prof. Massimiliano Giacomin. Prof. M. Giacomin Linguaggio C Tipi predefiniti Università degli Studi di Brescia Prof. Massimiliano Giacomin Elementi di Informatica e Programmazione Università di Brescia 1 Il concetto di tipo (reprise) Nome che indica

Dettagli

Problema: calcolare il massimo tra K numeri

Problema: calcolare il massimo tra K numeri Problema: calcolare il massimo tra K numeri Scrivere un algoritmo che fornisca in input ad un programma un numero K e K interi positivi. L algoritmo deve restituire il valore massimo tra quelli introdotti

Dettagli

Introduzione alla programmazione Esercizi risolti

Introduzione alla programmazione Esercizi risolti Esercizi risolti 1 Esercizio Si determini se il diagramma di flusso rappresentato in Figura 1 è strutturato. A B C D F E Figura 1: Diagramma di flusso strutturato? Soluzione Per determinare se il diagramma

Dettagli

Cenni alla rappresentazione dei tipi dato primitivi

Cenni alla rappresentazione dei tipi dato primitivi Cenni alla rappresentazione dei tipi dato primitivi Fondamenti di Informatica R. Basili a.a. 2006-7 Numeri Naturali Alfabeto, A Un insieme finito di B simboli, A={a, b,. } Sequenze o Stringhe in A, A *

Dettagli

Fortran in pillole : prima parte

Fortran in pillole : prima parte Fortran in pillole : prima parte Annamaria Mazzia Dipartimento di Metodi e Modelli Matematici per le Scienze Applicate Corso di Metodi Numerici per l Ingegneria Introduzione al Fortran Un libro consigliato

Dettagli