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

Documenti analoghi
Paolo Bison. Fondamenti di Informatica A.A. 2006/07 Università di Padova

Linguaggio F. a le produzioni relative al linguaggio F presenti in questi appunti sono tratte da. Basic Fortran, Paolo Bison, FI08, p.

Operazioni di input e output in Fortran 90

Breve guida al linguaggio FORTRAN 77

Operazioni di Input/Output

(prof. Claudio Maccherani, Perugia, 2009)

Fondamenti di Informatica 6. Algoritmi e pseudocodifica

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

Costrutti condizionali e iterativi

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

Sviluppare un programma in FORTRAN

Paolo Bison. Fondamenti di Informatica Ingegneria Meccanica Università di Padova A.A. 2008/09

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

Tipi strutturati. tipi strutturati. Paolo Bison

Breve storia del FORTRAN

PRIVATE elementi condivisi solamente tra gli elementi del modulo sottoprogrammi subroutines (procedure) functions (funzioni)

L utility Unix awk [Aho-Weinberger-Kernighan]

Fortran per Ingegneri

Paolo Bison. Fondamenti di Informatica Ingegneria Meccanica Università di Padova A.A. 2008/09

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

Sistemi Operativi Teledidattico

Corso di Fondamenti di Informatica

I file Laboratorio di Linguaggi di Programmazione a.a. 2001/2002

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

Analisi Lessicale. File

Paolo Bison. Fondamenti di Informatica Ingegneria Meccanica Università di Padova A.A. 2008/09

ARRAY. Fortran 90[/95] ARRAY: dichiarazione. Esempio (arraybase.f90) ARRAY: inizializzazione. ARRAY: inizializzazione

Istruzioni condizionali di diramazione in Fortran 90

L utility Unix awk [Aho-Weinberger-Kernighan]

Assembler di Spim. Assembler di SPIM. Struttura di un programma assembler. Direttive

STRUTTURE (O COSTRUTTI) DI CONTROLLO

Fortran. Introduzione.

Vettori e Matrici (array)

Modularizzazione del software

Risposte ai quesiti. Appendice B. Capitolo 1

Almerico Murli - Le variabili strutturate (array) VARIABILI STRUTTURATE (ARRAY)

VARIABILI E COSTANTI

Il sistema operativo LINUX Script di Shell

_TRACCIA DEL PROGETTO _ANALISI DI MASSIMA _TABELLA VARIABILI _DIAGRAMMA A BLOCCHI _PSEUDO-CODIFICA _LISTING DEL PROGRAMMA _CASO PROVA _APPENDICE:

Introduzione alla programmazione in linguaggio C

Gli ARRAY in FORTRAN 90

5 - Istruzioni condizionali

Capitolo 3 Sviluppo di Programmi Strutturati

Istruzioni per il controllo di ciclo - ciclo a condizione generica

3. La sintassi di Java

Programmazione Procedurale in Linguaggio C++

Capitolo 5 - Funzioni

UD 3.2b: Programmazione in Pascal (1)

UD4 - MATLAB. M-file. Efficienza degli algoritmi. Formati d uscita

Algoritmi e Strutture Dati

DOCUMENTAZIONE A SUPPORTO DELLA PREPARAZIONE PER LA PROVA SCRITTA

APPUNTI DEL CORSO DI LABORATORIO DI CALCOLO AVANZATO

Input Output. Massimiliano Guarrasi, CINECA

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

Creazione, eliminazione, lettura e scrittura di file di testo

Laboratorio di Programmazione Laurea in Informatica A.A. 2000/2001 Docente: A. Lanza

Fortran per Ingegneri

Paolo Bison. Fondamenti di Informatica A.A. 2006/07 Università di Padova

Variabili strutturate

Corso di Laurea in INFORMATICA

LabVIEW parte II. Ing. Gianfranco Miele November 3, 2010

Shell: variabili di sistema. Per visualizzare il valore di tutte le variabili d ambiente si usa il comando set

IL TEOREMA DI BOEHM-JACOPINI

Corso di Laboratorio di Sistemi Operativi

Capitolo 7 I puntatori in C

Manipolazioni elementari di flussi di testo strutturati

Input/Output. Console e File.

Fortran - Ripasso. Un programma in fortran e caratterizzato dalla seguente struttura:

Parte I - Concetti Base ESEMPIO

Introduzione al linguaggio Fortran 90

Scrittura formattata - printf

MATLAB. Caratteristiche. Dati. Esempio di programma MATLAB. a = [1 2 3; 4 5 6; 7 8 9]; b = [1 2 3] ; c = a*b; c

Fortran per Ingegneri

Fortran per Ingegneri

Creazione, eliminazione, lettura e scrittura di file di testo

Realizzare un programma che legga da input tre numeri interi e stampi a video la loro somma e la media.

Yet Another Compiler-Compiler. Generazione automatica di analizzatori sintattici

VBA Principali Comandi

Sistemi Operativi 1. Mattia Monga. a.a. 2012/13. Dip. di Informatica Università degli Studi di Milano, Italia

I file di dati. Unità didattica D1 1

Esercitazioni di Informatica (CIV)

Progettazione di Sistemi Informatici

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

Come trattare il risultato di un comando SQL (relazioni) che

Costrutti per il controllo del flusso di esecuzione

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

Introduzione alla programmazione in C++

Espressioni. Espressione = meccanismo fondamentale per esprimere computazioni in un LP importante comprenderne la semantica!

Documentazione Metodi v0.6

Sommario. Manipolazione sequenziale di file in C Funzioni di base per I/O di file

Introduzione alla logica matematica

Algoritmi, Strutture Dati e Programmi. UD 1.d: Dati e Tipi di Dato

Gocce di Java. Gocce di Java. Selezione e ripetizione. Pierluigi Crescenzi. Università degli Studi di Firenze

INFORMATICA. Strutture iterative

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

PASCAL - Record. Il linguaggio PASCAL consente l utilizzo dei RECORD

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

Programmazione su Fortran

Lezione 25: File Mercoledì 18 Novembre 2009

Un esempio di compilatore realizzato con flex e bison

Transcript:

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 ] READ fmat [, input-item-list ] R913 fmat is char-expr * I/O in Ftran, Paolo Bison, FI06, 2007-02-16 p.1 I/O in Ftran, Paolo Bison, FI06, 2007-02-16 p.2 Fmato di I/O specificazione del fmato di scrittura/lettura stringa costante/variabile di tipo character "fmat-specification" R1002 fmat-specification is ( [ fmat-item-list ] ) R1003 fmat-item is [ r ] data-edit-desc control-edit-desc [ r ] ( fmat-item-list ) R1005 data-edit-desc is I w [. m ] F w. d ES w. d E w. d L w A [ w ] R1010 control-edit-desc is n X is T c [ r ] / I/O in Ftran, Paolo Bison, FI06, 2007-02-16 p.3 Parametri dei descritti r fatte di ripetizione w ampiezza di campo m numero minimo cifre da visualizzare d numero cifre decimali I/O in Ftran, Paolo Bison, FI06, 2007-02-16 p.4

Descritti dati Iw [.m] vale intero Fw.d vale reale in notazione decimale ESw.d e Ew.d vale reale in notazione scientifica m 10 e ES: 1.0 m < 10.0 E: 0.1 m < 1.0 Lw vale logico Aw stringhe di caratteri Descritti di controllo nx salta n spazi Tc avanza alla posizione c della riga / va a nuova linea chars stampa i caratteri chars esempio d uso dei descritti io_test.f90 I/O in Ftran, Paolo Bison, FI06, 2007-02-16 p.5 I/O in Ftran, Paolo Bison, FI06, 2007-02-16 p.6 I/O su file istruzioni su file Open associazione tra un file ed un numero di unità R216 action-stmt is... open-stmt read-stmt write-stmt close-stmt... R904 R905 open-stmt is OPEN ( connect-spec-list ) is connect-spec UNIT = file-unit IOSTAT = int-variable FILE = file-name-expr STATUS = scalar-char-expr ACTION = scalar-char-expr I/O in Ftran, Paolo Bison, FI06, 2007-02-16 p.7 I/O in Ftran, Paolo Bison, FI06, 2007-02-16 p.8

Parametri dell open UNIT vale intero da associare al file IOSTAT variabile intera per il codice d erre 0 operazione OK, 0 operazione errata Close chiude il file associato ad un vale di unità R907 close-stmt is CLOSE ( close-spec-list ) STATUS una tra "old", "new", "scratch", "replace" R908 is close-spec UNIT = external-file-unit ACTION una tra "read", "write", "readwrite" IOSTAT = int-variable STATUS = char-expr STATUS una tra "keep", "delete" I/O in Ftran, Paolo Bison, FI06, 2007-02-16 p.9 I/O in Ftran, Paolo Bison, FI06, 2007-02-16 p.10 Read e write R909 read-stmt is READ ( io-control-spec-list ) [ input-item-list ] R910 write-stmt is WRITE ( io-control-spec-list ) [ output-item-list ] R912 io-control-spec is UNIT = io-unit FMT = fmat IOSTAT = scalar-default-int-variable * vale default equivalenze write_file.f90 program write_file integer :: i,err,n_min,n_max,n integer :: rand_int real :: rnd character (len=50) :: f_name print *,"file name" read *,f_name print *,"n_min n_max" read *,n_min,n_max print *,"n" read *,n print *,items write (*,*) items write (unit=*,fmt=*) items read *,items read (*,*) items read (unit=*,fmt=*) items I/O in Ftran, Paolo Bison, FI06, 2007-02-16 p.11 I/O in Ftran, Paolo Bison, FI06, 2007-02-16 p.12

write_file.f90! inizializza generate numeri casuali call random_seed()! open(unit=8,file=trim(f_name), & iostat=err,status="replace",action="write") if (err/=0) then print *,"impossibile creare un file"; stop do i = 1,n! ritna un vale reale tra 0 e 1 call random_number(rnd) rand_int = int((n_max - n_min + 1)*rnd) + n_min write (unit=8,fmt=*,iostat=err)rand_int end do close(unit=8) end program write_file I/O in Ftran, Paolo Bison, FI06, 2007-02-16 p.13 read_file.f90 somma=0 do read(unit=8,fmt=*,iostat=err)num if (err/=0) then! fine file exit somma = somma+num end do close(unit=8) print *,somma end program read_file read_file.f90 program read_file integer :: err,num integer :: somma character (len=50) :: f_name print *,"file name" read *,f_name open(unit=8,file=trim(f_name), & iostat=err,status="old",action="read") if (err/=0) then print *,"file non esiste" stop Do implicito ciclo iterativo come argomento di istruzioni I/O R434 R435 R436 esempi ac-implied-do is ( ac-value-list, ac-implied-do-control ) ac-implied-do-control is ac-do-variable = int-expr, int-expr [,int-expr ] ac-do-variable is int-variable print "(10( a=,i3,/))",(a(i),i=10,1,-1) print "(10(I2, a=,i3, b=,i3,/))", & (i,a(i),b(i),i=10,1,-1) I/O in Ftran, Paolo Bison, FI06, 2007-02-16 p.14 I/O in Ftran, Paolo Bison, FI06, 2007-02-16 p.15 I/O in Ftran, Paolo Bison, FI06, 2007-02-16 p.16

Nmalizzazione di vali dato un insieme di vali memizzati in file creare un file contenente i crispondenti vali nmalizzati tra -1 e 1 max(abs(x)) = 1 file nm_file.f90 I/O in Ftran, Paolo Bison, FI06, 2007-02-16 p.17