• Non ci sono risultati.

Fondamenti di Informatica

N/A
N/A
Protected

Academic year: 2021

Condividi "Fondamenti di Informatica"

Copied!
26
0
0

Testo completo

(1)

Fondamenti di Informatica

AlgoBuild: Introduzione agli Array

Pro f. M a rco Lo mb a rd i

(2)

Un array è una variabile in cui è possibile memorizzare più valori dello stesso tipo

Un array monodimensionale (o vettore) può essere immaginato come un contenitore suddiviso in tanti "scomparti", uno per ciascun valore che si intende memorizzare

Un array bidimensionale è noto come matrice

ARRAY:

(3)

Un array è una variabile in cui è possibile memorizzare più valori dello stesso tipo

Un array monodimensionale (o vettore) può essere immaginato come un contenitore suddiviso in tanti "scomparti", uno per ciascun valore che si intende memorizzare

Un array bidimensionale è noto come matrice

Ciascuno scomparto, detto elemento del vettore, contiene un unico valore ed è individuato mediante un numero progressivo, detto indice, che specifica la posizione dell’elemento all’interno del vettore stesso

Il numero complessivo degli elementi del vettore viene detto lunghezza

AlgoBuild: Introduzione agli Array

ARRAY:

(4)

Un array è una variabile in cui è possibile memorizzare più valori dello stesso tipo

Un array monodimensionale (o vettore) può essere immaginato come un contenitore suddiviso in tanti "scomparti", uno per ciascun valore che si intende memorizzare

Un array bidimensionale è noto come matrice

Ciascuno scomparto, detto elemento del vettore, contiene un unico valore ed è individuato mediante un numero progressivo, detto indice, che specifica la posizione dell’elemento all’interno del vettore stesso

Il numero complessivo degli elementi del vettore viene detto lunghezza

Indice i 0 1 2 3 4 5 6 7 8 9

a 32 15 8 5 12 9 63 3 102 1

Nome array

ARRAY:

(5)

Un array è una variabile in cui è possibile memorizzare più valori dello stesso tipo

Un array monodimensionale (o vettore) può essere immaginato come un contenitore suddiviso in tanti "scomparti", uno per ciascun valore che si intende memorizzare

Un array bidimensionale è noto come matrice

Ciascuno scomparto, detto elemento del vettore, contiene un unico valore ed è individuato mediante un numero progressivo, detto indice, che specifica la posizione dell’elemento all’interno del vettore stesso

Il numero complessivo degli elementi del vettore viene detto lunghezza

AlgoBuild: Introduzione agli Array

Indice i 0 1 2 3 4 5 6 7 8 9

a 32 15 8 5 12 9 63 3 102 1

Nome array

L’array a ha lunghezza pari a 10

ARRAY:

(6)

In AlgoBuild, per accedere ad un singolo elemento di un array, si deve

specificare il nome dell’array

seguito dall’

indice dell’elemento

posto tra

parentesi quadre:

a

[i]

Es:

a

[1] restituisce l’elemento 15,

a

[3] restituisce l’elemento 5

Indice i 0 1 2 3 4 5 6 7 8 9

a 32 15 8 5 12 9 63 3 102 1

Nome array

(7)

Esempio 1 – 1/2:

Input degli elementi in un Array

Vediamo come inserire gli elementi (valori) in un vettore di lunghezza 10

Indice i 0 1 2 3 4 5 6 7 8 9

a

Nome array

(8)

Esempio 2/2:

Input degli elementi in un Array

Indice i 0 1 2 3 4 5 6 7 8 9

a

Nome array

(9)
(10)

Scomponiamo il problema in due sotto-problemi

1.

Input

Inserimento degli elementi nell’array a di 10 elementi

Primo ciclo FOR

Ad ogni iterazione viene richiesto in input l’elemento in

posizione i-esima dell’array a

2.

Output

Mostra gli elementi dell’array a di 10 elementi

Secondo ciclo FOR

Ad ogni iterazione viene mostrato in output l’elemento in

posizione i-esima dell’array a

Esempio 2 – 1/3:

Input degli elementi in un Array e successiva

stampa in Output

(11)

Diagramma di Flusso

AlgoBuild: Introduzione agli Array

Esempio 2 – 2/3 (diagramma):

Input degli elementi in un Array e successiva

stampa in Output

(12)

Diagramma di Flusso

1. Input

Inserimento degli elementi

nell’array a di 10 elementi

(Primo ciclo FOR)

Esempio 2 – 2/3:

Input degli elementi in un Array e successiva

stampa in Output

(13)

Diagramma di Flusso

2. Output

Mostra gli elementi

dell’array a di 10 elementi

(Secondo ciclo FOR)

AlgoBuild: Introduzione agli Array

Esempio 2 – 2/3:

Input degli elementi in un Array e successiva

stampa in Output

(14)

Diagramma di Flusso

Pseudo-Codice

Esempio 2 – 3/3 (pseudocodice):

Input degli elementi in un Array e successiva

stampa in Output

(15)

AlgoBuild: Introduzione agli Array

Esempio 2 – 3/3:

Input degli elementi in un Array e successiva

stampa in Output

(16)

Esempio 2 – 3/3:

Input degli elementi in un Array e successiva

stampa in Output

(17)

Es

em

p

io

2

: D

em

o

(18)

Scomponiamo il problema in tre sotto-problemi

1.

Input

(uguale all’Esempio 2)

2.

Ricerca del Massimo

3.

Output del Massimo

Esempio 3 – 1/3:

Determinare il massimo in un Array, i cui

elementi sono presi in Input

(19)

Scomponiamo il problema in tre sotto-problemi

1.

Input

(uguale all’Esempio 2)

2.

Ricerca del Massimo

1. Assumo che l’elemento massimo sia in posizione 0 (prima posizione) dell’array a

max = a[0]

2. Scorro gli elementi di a dalla posizione 1 alla posizione 9 (ultima posizione)

Secondo Ciclo FOR (il primo ciclo è relativo alla fase di Input)

Ad ogni iterazione del ciclo, verifico se l’elemento all’i-esima posizione è maggiore di max

In caso affermativo, il nuovo massimo è l’elemento alla i-esima posizione di a

max = a[i]

3.

Output del Massimo

AlgoBuild: Introduzione agli Array

Esempio 3 – 1/3:

Determinare il massimo in un Array, i cui

elementi sono presi in Input

(20)

Esempio 3 – 2/3 (diagramma):

Determinare il massimo in un Array, i cui

elementi sono presi in Input

(21)

AlgoBuild: Introduzione agli Array

1. Input

Esempio 3 – 2/3:

Determinare il massimo in un Array, i cui

elementi sono presi in Input

(22)

2. Ricerca del Massimo

Esempio 3 – 2/3:

Determinare il massimo in un Array, i cui

elementi sono presi in Input

(23)

AlgoBuild: Introduzione agli Array

2. Ricerca del Massimo

Il ciclo FOR inizia con la

posizione 1

Esempio 3 – 2/3:

Determinare il massimo in un Array, i cui

elementi sono presi in Input

(24)

3. Output del Massimo

Esempio 3 – 2/3:

Determinare il massimo in un Array, i cui

elementi sono presi in Input

(25)

AlgoBuild: Introduzione agli Array

Pseudo-Codice

Diagramma di Flusso

Esempio 3 – 3/3 (pseudocodice):

Determinare il massimo in un Array, i cui

elementi sono presi in Input

(26)

Es

em

p

io

3

: D

em

o

Figura

Diagramma di Flusso Pseudo-Codice
Diagramma di Flusso
Diagramma di Flusso
Diagramma di Flusso
+4

Riferimenti

Documenti correlati

Dai grafici relativi alle prove di primo tipo si può notare che, fissati a e z , il numero di o termini necessario per raggiungere la convergenza nel dominio trasformato è

[r]

Figura 7-22Provino posto

Anziché rispondere, l'insegnante divide la classe in due gruppi, maschi e femmine, e chiede di decidere tra loro se computer dovesse essere maschile o femminile.. A ciascun gruppo

 Evitare l'uso di array paralleli trasformandoli in array Evitare l'uso di array paralleli trasformandoli in array di oggetti:.

=⇒ Non serve specificare la dimensione del vettore nel parametro formale ( `e un puntatore al tipo degli elementi del vettore).. Quando passiamo una matrice ad una funzione, per

• tutte le variabili di un array hanno lo stesso tipo di dato (il tipo dell tipo dell ’array ’ array), e si chiamano anche..

455 del 25/09/2017 Questo documento è stato firmato da:. ATTO SOTTOSCRITTO DIGITALMENTE AI SENSI