• Non ci sono risultati.

Programmazione Procedurale in Linguaggio C++

N/A
N/A
Protected

Academic year: 2021

Condividi "Programmazione Procedurale in Linguaggio C++"

Copied!
7
0
0

Testo completo

(1)

G. Mecca – Università della Basilicata – [email protected]

Programmazione Procedurale in Linguaggio C++

Tipi Strutturati Parte 6 Il FORTRAN

versione 2.0

Questo lavoro è concesso in uso secondo i termini di una licenza Creative Commons (vedi ultima pagina)

Sommario

m

Un Altro Esempio: il FORTRAN

ðArray in FORTRAN

ðRappresentazione Multiarray in FORTRAN

Tipi Strutturati: Conclusioni >> Sommario

(2)

G. Mecca - Programmazione Procedurale in Linguaggio C++ 3

m

Tipi strutturati in FORTRAN

ðin FORTRAN 77 esistono gli array ðviceversa, non esistono i record

(introdotti in FORTRAN 90)

m

Differenze fondamentali con il C++

ðil sistema di indici è a base 1

ðsintatticamente, si usano le parentesi tonde al posto delle parentesi quadre

>> temperature1f.for

4

Dichiarazione di Array

m

Sintassi

<tipo> <nomeArray> (<dim>)

m

Dove

ð<tipo> è uno dei tipi di dato del linguaggio ð<nomeArray> è un identificatore

ð<dim> è un valore costante intero positivo (costante numerica o simbolica o

espressione costante, ovvero espressione in cui gli operandi sono costanti)

Tipi Strutturati: Conclusioni >> FORTRAN

(3)

G. Mecca - Programmazione Procedurale in Linguaggio C++ 5

Dichiarazione di Array

m

Semantica

ðla dichiarazione ha l’effetto di dichiarare

<dim> variabili del tipo specificato

ðnomi delle variabili costituiti di due parti:

ðl’identificatore dell’array <nomeArray>

ðun indice intero che va da 1 a <dim>

m

Utilizzo degli array

<nomeArray>(<espressione>)

Esempio: Temperature

program temp implicit none

integer posizioneMax, posizioneMin integer N

parameter (N=12) real temperature(N) integer posMax, posMin call leggi(temperature) call stampa(temperature)

posMax = posizioneMax(temperature) posMin = posizioneMin(temperature)

call stampaRisultato(temperature, posMax, posMin) stop

end

Tipi Strutturati: Conclusioni >> FORTRAN

dichiarazione dell’array

(4)

G. Mecca - Programmazione Procedurale in Linguaggio C++ 7

subroutine leggi(temperature) implicit none

integer N

parameter (N=12) integer temperature(N) integer i

write(*,*) 'Immetti le temperature medie mensili' do i=1,N

read(*,*) temperature(i) end do

return

end utilizzo dell’array

costante locale

ciclo for da 1 a N

8

Dichiarazione di Array

m

Come in C++

ðesiste il problema dello sconfinamento al di fuori dei limiti dell’array

ðè possibile utilizzare array bidimensionali

m

Sintassi

<tipo> <nomeArray> (<dim1>, <dim2>);

m

Utilizzo

<nomeArray>(<espr1>, <espr2>)

Tipi Strutturati: Conclusioni >> FORTRAN

(5)

G. Mecca - Programmazione Procedurale in Linguaggio C++ 9

Dichiarazione di Array

m

Esempio

integer matrice(3, 2) integer i, j

do i=1,3 do j=1, 2

read(*,*) matrice(i, j) end do

end do

Rappresentazione Multiarray

m

A differenza del C++

ðin FORTRAN 77 non esistono i record

ðdi conseguenza, dati con struttura complessa vanno rappresentati con variabili distinte

m

Collezioni di dati complessi

ðsi utilizza la rappresentazione multi-array ðvari array per la collezione, uno per ciascun

attributo

Tipi Strutturati: Conclusioni >> FORTRAN

>> partite1f.for

(6)

G. Mecca - Programmazione Procedurale in Linguaggio C++ 11

Juventus Milan 4 1

Lazio Chievo 1 2 Roma Inter 2 2 Como Brescia 1 4 Perugia Reggina 2 1 Parma Modena 1 0 Torino Atalanta 0 0 Bologna Udinese 3 0 Piacenza Empoli 1 3

character*10 sqTrasf(N) integer gCasa(N)

integer gTrasf(N)

12

Riassumendo

m

Un Altro Esempio: il FORTRAN

ðArray in FORTRAN

ðRappresentazione Multiarray in FORTRAN

Tipi Strutturati: Conclusioni >> Sommario

(7)

G. Mecca - Programmazione Procedurale in Linguaggio C++ 13

Termini della Licenza

m This work is licensed under the Creative Commons Attribution- ShareAlike License. To view a copy of this license, visit

http://creativecommons.org/licenses/by-sa/1.0/ or send a letter to Creative Commons, 559 Nathan Abbott Way, Stanford, California 94305, USA.

m Questo lavoro viene concesso in uso secondo i termini della licenza “Attribution-ShareAlike” di Creative Commons. Per ottenere una copia della licenza, è possibile visitare

http://creativecommons.org/licenses/by-sa/1.0/ oppure inviare una lettera all’indirizzo Creative Commons, 559 Nathan Abbott Way, Stanford, California 94305, USA.

Riferimenti

Documenti correlati

m Questo lavoro viene concesso in uso secondo i termini della licenza “Attribution-ShareAlike” di Creative Commons. Per ottenere una copia della licenza, è

ðDefinizione di Funzioni ðDefinizione di Procedure ðChiamata di Funzioni ðChiamata di Procedure ðPassaggio dei Parametri ðProgrammazione Modulare. Termini

m Questo lavoro viene concesso in uso secondo i termini della licenza “Attribution-ShareAlike” di Creative Commons. Per ottenere una copia della licenza, è

Strutture di Dati: Lista &gt;&gt; Rappresentazione con Record e Array. ATTENZIONE ai

m Questo lavoro viene concesso in uso secondo i termini della licenza “Attribution-ShareAlike” di Creative Commons. Per ottenere una copia della licenza, è

Non sono stato sempre così, come ora?. E le lagrime mi rigano

We were using Forest Inventory and Analysis (FIA) data to validate the diameter engine of the Forest Vegetation Simulator (FVS) by species. We’d love to have used the paired

Una soluzione si dice DILUITA quando la quantità di soluto è molto inferiore alla saturazione della soluzione (ovvero si può ancora pensare di poter sciogliere