Fortran in pillole : prima parte
|
|
|
- Filomena Lazzari
- 9 anni fa
- Просмотров:
Транскрипт
1 Fortran in pillole : prima parte Annamaria Mazzia Dipartimento di Metodi e Modelli Matematici per le Scienze Applicate Corso di Metodi Numerici per l Ingegneria
2 Introduzione al Fortran Un libro consigliato per imparare il Fortran: Flavio Sartoretto e Mario Putti Introduzione alla Programmazione per Elaborazioni Numeriche Edizioni Libreria Progetto Padova 2008 Il materiale di queste lezioni verrà messo di volta in volta in rete su andare poi alla voce Mazzia o Gambolati e poi sul corso di metodi numerici per la laurea specialistica in Ing. Meccanica e Ing. dell Energia A. Mazzia (DMMMSA) Fortran a.a. 2008/ / 12
3 Come si scrive e si esegue un programma in FORTRAN? si scrive il programma sorgente in un file (con un editor di testo e gli si dà un nome con l estensione.f se lavoriamo in FORTRAN77 o.f90 se lavoriamo in FORTRAN90... ) il programma deve essere compilato, deve cioè essere tradotto in linguaggio macchina se il nostro programma chiama altri programmi (per esempio programmi di libreria) allora bisogna collegarli tra loro - linkarli si ha in questo modo il programma eseguibile si può eseguire il programma e ottenere i risultati Per semplicità spiegheremo il FORTRAN77 - ma il passaggio dal FORTRAN77 al FORTRAN90 diventa semplice, per chi vuole, se si sa bene il FORTRAN77. A. Mazzia (DMMMSA) Fortran a.a. 2008/ / 12
4 Il FORTRAN sul proprio computer Per chi ha un sistema operativo Linux sul proprio computer, - Debian, Ubuntu, etc - ci si può installare un compilatore FORTRAN sul proprio computer molto facilmente - per esempio il gfortran. Per chi ha Windows, ci sono compilatori free che si possono scaricare dalla rete, per esempio su cygwin.com c è il compilatore g77. Oppure, da un altro sito si può scaricare il Fortran Force Tutti i dettagli sono messi sul sito delle dispense. Per poter compilare ed eseguire un programma FORTRAN, abbiamo quindi bisogno di un compilatore - sia esso gfortran o g77 o f77 o altro ancora. A. Mazzia (DMMMSA) Fortran a.a. 2008/ / 12
5 Supposto di aver scritto il programma prova.f - mediante un editor di testo - per rendere eseguibile il programma, lanceremo il comando su una finestra di shell (in ambiente linux o tramite cygwin) o interattivamente con il Force Nel caso in cui i comandi vanno lanciati mediante una finestra di shell, si ha - per esempio: $ g77 -o esegui prova.f Chiamamo esegui il file eseguibile creato durante la compilazione. A questo punto possiamo eseguire il programma con il comando: $ esegui Oppure - a seconda della macchina - $./esegui Vediamo un esempio di programma prova.f A. Mazzia (DMMMSA) Fortran a.a. 2008/ / 12
6 Primi comandi In FORTRAN77 tutte le istruzioni vanno scritte tra la 7-ima e la 72-sima colonna. le colonne da 1 a 6 hanno un significato particolare. Per ora ci interessa sapere che sulla colonna 1 si mette una C o! o un altro simbolo se poi si vuole scrivere un commento sulla colonna 6 si mette un carattere qualsiasi (meglio lettere dell alfabeto) se l istruzione che si è scritta sulla riga precedente è troppo lunga e si deve andare a capo. Esempio. Torniamo al programma prova.f A. Mazzia (DMMMSA) Fortran a.a. 2008/ / 12
7 Istruzioni program e end Il programma che abbiamo scritto inizia con program prova. Stiamo scrivendo un programma e diamo ad esso un nome. Il programma termina con l istruzione end. Tutti i programmi devono iniziare con l istruzione program e finire con l istruzione end A. Mazzia (DMMMSA) Fortran a.a. 2008/ / 12
8 Operare con le variabili Vogliamo scrivere un programma che trasforma un angolo da gradi a radianti. Abbiamo bisogno dell angolo espresso in gradi, primi e secondi e dobbiamo restituire il valore in radianti. A tal fine abbiamo bisogno di 4 variabili, che chiamiamo xgradi, xprimi, xsecondi, xradianti. Ciascuna di queste variabili occuperà un posto - o locazione - di memoria nel calcolatore. A seconda che la variabile sia dichiarata poi intera, reale o complessa, cambia il tipo di locazione di memoria che tale variabile occuperà. Nel nostro caso, dichiariamo come intere le variabili relative all angolo in grado e come reale la xradianti. Siccome vogliamo i risultati in doppia precisione, scriveremo real*8. Vediamo il programma. A. Mazzia (DMMMSA) Fortran a.a. 2008/ / 12
9 Osservazioni L istruzione implicit none dice che nessuna variabile può essere dichiarata implicitamente. Quindi dobbiamo dichiarare tutte le variabili, altrimenti avremo un messaggio di errore durante la compilazione. É importante dichiarare tutte le variabili per evitare errori - per esempio se una variabile é dichiarata come xold e poi scriviamo x0ld, con l implicit none ci viene segnalato l errore. Senza implicit none non ci viene segnalato l errore ma i risultati che avremo saranno inattendibili perchè non possiamo sapere quale valore sarà stato dato alla variabile x0ld. I valori delle variabili sono date mediante i comandi di write e di read - mediante terminale, da tastiera. Il risultato è stampato sulla finestra di shell. A. Mazzia (DMMMSA) Fortran a.a. 2008/ / 12
10 Osserviamo che le frasi che vogliamo mostrare sulla finestra di terminale sono scritte tra apici (usare il simbolo dell apostrofo ). Vedremo che sarà molto più utile leggere i dati di input da un file esterno e scrivere i dati di output su un file. Per scrivere π = utilizziamo la formula 2.0d0*dasin(1.0d0) dove dasin è una funzione intrinseca del FORTRAN che fornisce l arcoseno in doppia precisione. Tutti i numeri interi li abbiamo scritti con l estensione.0d0 quando il risultato deve essere in doppia precisione, in modo da avere risultati più accurati. A. Mazzia (DMMMSA) Fortran a.a. 2008/ / 12
11 I tipi di dati Le variabili possono essere intere, reali, logiche (il risultato può essere solo vero o falso), complesse, di carattere (stringhe di caratteri). Al momento ci interessa: integer variabile intera real real*8 double precision logical variabile reale in precisione semplice variabile reale in doppia precisione occupa esattamente 8 byte di memoria variabile reale in doppia precisione accuratezza diversa a seconda della macchina usata variabile logica A. Mazzia (DMMMSA) Fortran a.a. 2008/ / 12
12 Espressioni aritmetiche elevamento a potenza moltiplicazione / divisione + addizione sottrazione Prima si fanno gli elevamenti a potenza, poi le moltiplicazioni e divisioni, alla fine le addizioni e sottrazioni. Quando due operatori hanno la stessa priorità vengono eseguite le operazioni partendo da sinistra e andando verso destra. Tuttavia, quando le espressioni sono abbastanza complicate e c è il rischio di non capire bene quali operazioni vanno fatte prima e quali dopo, conviene mettere sempre le parentesi. A. Mazzia (DMMMSA) Fortran a.a. 2008/ / 12
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,
II Esercitazione: S.O. & Fortran 77
II Esercitazione: S.O. & Fortran 77 Francesco Battista Corso di Calcolo Numerico 1 DIMA, Sapienza University of Rome, Italy February 9, 2014 Argomenti trattati 1 Brevi cenni sulle architetture informatiche
EXCEL software Excel .xlxs, La cella intestazione della colonna intestazione di righe l indirizzo della cella testo numeri formule
EXCEL Il software Excel appartiene alla categoria dei fogli elettronici. Ogni foglio è composto da 1.048.576 righe per 16.384 colonne suddivise in celle che è possibile collegare tra loro: in tal modo
L AMBIENTE CODE BLOCKS E L IO
L AMBIENTE CODE BLOCKS E L IO Il primo programma in C++ #include using namespace std; main() { cout
L AMBIENTE CODE BLOCKS E L IO
L AMBIENTE CODE BLOCKS E L IO Il primo programma #include main() { printf("ciao Mondo!"); } Il file deve essere salvato con estensione.c Il primo programma in C++ #include using
Lezione 6 Introduzione al C++ Mauro Piccolo
Lezione 6 Introduzione al C++ Mauro Piccolo [email protected] Linguaggi di programmazione Un linguaggio formale disegnato per descrivere la computazione Linguaggi ad alto livello C, C++, Pascal, Java,
Laboratorio di Calcolo Numerico Laboratorio 2: Primi programmi in Fortran 90
Laboratorio di Calcolo Numerico Laboratorio 2: Primi programmi in Fortran 90 Andrea Franceschini E-mail: [email protected] Dispense: http://www.math.unipd.it/ putti/teaching/calcolo ambientale/index.html
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?
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
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
Programma del corso. Elementi di Programmazione. Introduzione agli algoritmi. Rappresentazione delle Informazioni. Architettura del calcolatore
Programma del corso Introduzione agli algoritmi Rappresentazione delle Informazioni Architettura del calcolatore Reti di Calcolatori Elementi di Programmazione Algoritmi e programmi Algoritmo Sequenza
Introduzione alla programmazione in linguaggio C
Introduzione alla programmazione in linguaggio C Il primo programma in C commento Header della libreria Funzione principale Ogni istruzione in C va terminata con un ; Corso di Informatica AA. 2007-2008
Annamaria Mazzia. Corso di Metodi Numerici per l Ingegneria dispense e altro materiale su
Soluzione di un sistema non lineare con la Regula Falsi generalizzata per la determinazione degli angoli conico di taglio ed elicoidale di taglio di una cremagliera Annamaria Mazzia Dipartimento di Metodi
Appunti di SISTEMI OPERATIVI
Appunti di SISTEMI OPERATIVI AVVERTENZE Questi appunti non vogliono essere degni sostituti di un buon libro di testo e hanno il solo scopo di aiutare gli studenti dei corsi di informatica che affrontano
INTRODUZIONE AL LINGUAGGIO DI PROGRAMMAZIONE PASCAL. Per iniziare lo studio del linguaggio di programmazione pascal, consideriamo il seguente esempio.
INTRODUZIONE AL LINGUAGGIO DI PROGRAMMAZIONE PASCAL Per iniziare lo studio del linguaggio di programmazione pascal, consideriamo il seguente esempio. ESERCIZIO: realizzare un algoritmo (in linguaggio di
Fortran per Ingegneri
Fortran per Ingegneri Lezione 1 A.A. 2013/2014 Ing. Davide Vanzo [email protected] Ing. Simone Zen [email protected] ufficio: Laboratorio didattico di modellistica ambientale (2 piano) Tel interno:
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,
Modularizzazione del software
Modularizzazione del software Ing. Luca De Santis DIS - Dipartimento di informatica e sistemistica Anno accademico 2006/2007 Fortran 90: Subroutine e function DIS - Dipartimento di informatica e sistemistica
Linguaggi, Traduttori e le Basi della Programmazione
Corso di Laurea in Ingegneria Civile Politecnico di Bari Sede di Foggia Fondamenti di Informatica Anno Accademico 2011/2012 docente: Prof. Ing. Michele Salvemini Sommario Il Linguaggio I Linguaggi di Linguaggi
Corso di Matematica per la Chimica. Dott.ssa Maria Carmela De Bonis a.a
Dott.ssa Maria Carmela De Bonis a.a. 2013-14 Programmi Un elaboratore riceve dei dati in ingresso, li elabora secondo una sequenza predefinita di operazioni e infine restituisce il risultato sotto forma
Prof. Pagani Corrado INTRODUZIONE AL LINGUAGGIO C
Prof. Pagani Corrado INTRODUZIONE AL LINGUAGGIO C IL LINGUAGGIO C Nel 1972 Dennis Ritchie nei Bell Laboratories progettò il linguaggio C Il linguaggio possiede tutti i costrutti di controllo dei linguaggi
Primi passi col linguaggio C
Andrea Marin Università Ca Foscari Venezia Laurea in Informatica Corso di Programmazione part-time a.a. 2011/2012 Come introdurre un linguaggio di programmazione? Obiettivi: Introduciamo una macchina astratta
LEZIONE 11 IMPARIAMO A PROGRAMMARE: I DATI E LE VARIABILI Laboratorio di Informatica per l Educazione A. A. 2014/2015
1 LEZIONE 11 IMPARIAMO A PROGRAMMARE: I DATI E LE VARIABILI A. A. 2014/2015 PRIMI PASSI La più semplice sequenza di istruzioni che possiamo scrivere è quella costituita da un solo comando. come si fa a
Il calcolatore. Architettura di un calcolatore (Hardware)
Il calcolatore Prima parlare della programmazione, e' bene fare una brevissima introduzione su come sono strutturati i calcolatori elettronici. I calcolatori elettronici sono stati progettati e costruiti
Informatica ALGORITMI E LINGUAGGI DI PROGRAMMAZIONE. Francesco Tura. F. Tura
Informatica ALGORITMI E LINGUAGGI DI PROGRAMMAZIONE Francesco Tura [email protected] 1 Lo strumento dell informatico: ELABORATORE ELETTRONICO [= calcolatore = computer] Macchina multifunzionale Macchina
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
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
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
Fondamenti di Informatica T-1
Fondamenti di Informatica T-1 Introduzione al linguaggio Java - Input/Output, Variabili, Tipi Tutor: Allegra De Filippo [email protected] a.a. 2015/2016 Fondamenti di Informatica T-1 Allegra De
STRUTTURA E LOGICA DI FUNZIONAMENTO DEL COMPUTER
1 STRUTTURA E LOGICA DI FUNZIONAMENTO DEL COMPUTER Un computer e una macchina che riceve in ingresso delle informazioni, le elabora secondo un determinato procedimento e produce dei risultati che vengono
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
Fondamenti di informatica T-1 (A K) Esercitazione 2 Basi del linguaggio Java
Fondamenti di informatica T-1 (A K) Esercitazione 2 Basi del linguaggio Java AA 2018/2019 Tutor Lorenzo Rosa [email protected] 2 Programma Introduzione al calcolatore e Java Linguaggio Java, basi e
Introduzione al Linguaggio C Corso di Informatica Laurea in Fisica
Introduzione al Linguaggio C Corso di Informatica Laurea in Fisica prof. ing. Corrado Santoro A.A. 2009-10 Dai flow-chart ai linguaggi... Abbiamo imparato ad usare uno strumento formale i flowchart per
Come ragiona il computer. Problemi e algoritmi
Come ragiona il computer Problemi e algoritmi Il problema Abbiamo un problema quando ci poniamo un obiettivo da raggiungere e per raggiungerlo dobbiamo mettere a punto una strategia Per risolvere il problema
La programmazione in linguaggio C
FONDAMENTI DI INFORMATICA Prof. PIER LUCA MONTESSORO Ing. DAVIDE PIERATTONI Facoltà di Ingegneria Università degli Studi di Udine La programmazione in linguaggio C 2001 Pier Luca Montessoro - Davide Pierattoni
Introduzione alla compilazione ed esecuzione di programmi C con IDE Dev-C++
Introduzione alla compilazione ed esecuzione di programmi C con IDE Dev-C++ Università degli Studi di Brescia Elementi di Informatica e Programmazione Università di Brescia 1 Sviluppo di un programma C
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
LA CODIFICA DELL INFORMAZIONE
LA CODIFICA DELL INFORMAZIONE Prof. Enrico Terrone A. S: 20/2 Lo schema di Tanenbaum Il livello al quale ci interessiamo in questa lezione è il linguaggio macchina, l unico dove le informazioni e istruzioni
Elementi di Base. Introduzione a Python.
Elementi di Base Introduzione a Python http://www.dia.uniroma3.it/~roselli/ [email protected] Credits Materiale a cura del Prof. Franco Milicchio Panoramica Elementi di base della sintassi (struttura,
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
A.A Laboratorio n 1 Ing. Gian Enrico Conti. Milano, XX mese 20XX
Informatica Titolo ed Elementi presentazione di Informatica Medica sottotitolo A.A. 2018-19 Laboratorio n 1 Ing. Gian Enrico Conti Milano, XX mese 20XX Info Logistiche Contatti: [email protected]
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
Corso sul linguaggio C
Corso sul linguaggio C Modulo 1 1.1 Istruzioni semplici 1 Prerequisiti Saper progettare algoritmi Saper descrivere algoritmi (NLS, ddf) Conoscere il concetto di espressione 2 1 Introduzione In questa lezione
