• Non ci sono risultati.

Fondamenti di Informatica

N/A
N/A
Protected

Academic year: 2021

Condividi "Fondamenti di Informatica"

Copied!
29
0
0

Testo completo

(1)

Fondamenti di Informatica

ESERCIZI: ALGORITMI

Prof. Marco Lombardi – [email protected]

(2)

Esercizio 1: Pseudocodice + Diagramma

(3)

Soluzione 1: pseudocodice

INIZIO Area Rettangolo

LEGGI base b LEGGI altezza h area S = b ∙ h SCRIVI S

FINE Area Rettangolo

(4)
(5)

Soluzione 1: AlgoBuild (ver 0.75)

(6)
(7)

Esercizio 2: Pseudocodice + Diagramma

Dati due numeri a e b (input), calcola il maggiore (output)

(8)
(9)

Soluzione 2: AlgoBuild (ver 0.75)

(10)
(11)

Esercizio 2.1: Pseudocodice + Diagramma

Dati tre numeri a, b e c, calcola il maggiore

Trovare due differenti soluzioni.

(12)

Esercizio 2.1: pseudocodice

SOLUZIONE 1 begin Algorithm input a, b, c; if a>b then if a>c then max=a; # print a; else max=c; # print c; end; else if b>c then max=b; # print b; else max=c; # print c; end; end if; print max; end. SOLUZIONE 2 begin Algorithm input a, b, c; max=a; if max<b then max=b; end if; if max<c then max=c; end if; print max; end.

(13)

Esercizio 2.1: diagramma (1/2)

Esercitazione ALGORITMI START a b c a>b b>c END max=c max=b max a>c max=c max=a o i F V F V F V

(14)

Esercizio 2.1: diagramma (2/2)

START a b c max o i max=a max<b max=b F V max<c max=c F V

(15)

Esercizio 2.1: AlgoBuild (ver 0.75)

Esercitazione ALGORITMI

(16)

Esercizio 3: Pseudocodice + Diagramma

Calcola la somma dei primi N numeri naturali, senza utilizzare la formula di Gauss

Esempio: input: N = 5 → output: 15 (= 0 + 1 + 2 + 3 + 4 + 5)

Utilizzare almeno due differenti strutture di controllo (suggerimento: ciclo a condizione iniziale e

(17)

Soluzione 3 (1)

Esercitazione ALGORITMI

Iterazione indefinita pre-condizionale (o iterazione per vero):

il controllo per l’arresto

dell’iterazione è posto prima del gruppo di istruzioni da ripetere.

(18)

Soluzione 3 (2)

Iterazione indefinita post-condizionale (o iterazione per falso):

se il controllo per l’arresto dell’iterazione è posto dopo del gruppo di istruzioni da ripetere.

DO, WHILE

(19)

Soluzione 3 (3)

Esercitazione ALGORITMI

Iterazione definita enumerativa

➢ Ripeti istruzioni N volte

(20)

Soluzione 3: AlgoBuild (ver 0.75)

(21)

Soluzione 3: AlgoBuild

Esercitazione ALGORITMI N=0

(22)
(23)

Esercizio 4: Pseudocodice + Diagramma

Dati due numeri A e B, calcola il prodotto dei due numeri utilizzando solo l’operazione di addizione

(24)
(25)

Soluzione 4: AlgoBuild (ver 0.75)

(26)

Esercizio 5: Pseudocodice + Diagramma

Prese in input due variabili A e B, scambiare il contenuto delle due variabili.

Esempio: A=3; B=5;

SCAMBIO

(27)

Soluzione 5: pseudocodice

begin Switch input A; input B; TEMP=A; A=B; B=TEMP; print A,B; end Switch Esercitazione ALGORITMI

(28)

Soluzione 5: diagramma

START A B END i TEMP=A A=B A B o B=TEMP

(29)

Soluzione 5: AlgoBuild (ver 0.75)

Riferimenti

Documenti correlati

• Scrivere una funzione chiamata media_maggiore che prenda in input la matrice C (cinema) e l’array B (costo dei biglietti), e restituisca l’indice del cinema con

• Indicare quale fra i seguenti numeri rappresentati in sistema decimale corrisponde al numero 10101 C2 espresso in complemento a due su 5 bit:. a) -12 10 b) -11 10 c) +10 10 d)

b) Scrivere una funzione MATLAB (basata strutture di controllo selettive ed iterative), che prende in input un generico numero di mesi k e restituisce in output quante coppie