Sei sulla pagina 1di 4

Metodologia adottata

Introduzione

L’obiettivo della dispensa è definire la metodologia da utilizzare per risolvere un problema mediante l’ausilio del calcolatore. Quando, nella vita di tutti i giorni, ci troviamo nella necessità di risolvere un problema, seguiamo generalmente e inconsapevolmente una sequenza di passi abbastanza costante. Quando il problema è relativamente semplice, il processo di risoluzione può essere diviso in 3 fasi.

- Nella prima fase si definisce il problema, cercando di descrivere i dati che abbiamo a disposizione e i risultati attesi.

- Nella seconda fase deve essere definito il procedimento risolutivo, cioè l’esatta sequenza delle azioni da compiere per raggiungere i risultati attesi a partire da quelli a disposizione.

- Nella terza fase si procede all’esecuzione delle azioni definite nella fase

precedente.

Passi analoghi devono essere seguiti quando si utilizzano le risorse di

elaborazione automatica dei dati.

Fasi del processo

Le fasi che occorre seguire per risolvere calcolatore sono:

un problema

con

l’ausilio

di

un

1. Analisi del problema mediante individuazione

a. dei dai iniziali

b. dei risultati attesi

c. del procedimento risolutivo (algoritmo)

2. Formalizzazione dell’analisi, cioè rappresentazione dell’algoritmo mediante un

diagramma di flusso

3. Codifica nel linguaggio di programmazione scelto (scrittura del programma)

4. Verifica della correttezza del programma

Analisi del problema

a. I dati iniziali sono i dati noti del problema. Essi devono essere acquisiti in un qualche modo (solitamente attraverso l’immissione da tastiera) e, pertanto, sono detti dati di ingresso, o più comunemente dati di input.

b. I risultati di una elaborazione sono solitamente comunicati a chi li ha richiesti mediante opportuni dispositivi, quali monitor e/o stampanti e , pertanto sono detti dati di uscita, o più comunemente dati di output.

c. Il procedimento risolutivo (detto algoritmo) consiste di una sequenza di passi che permettono di ottenere i dati di output, a partire dai dati di input.

Autore: Cinzia Bocchi Ultimo aggiornamento: 08/08/11

1

Esempio Consideriamo il seguente problema: “Dati due numeri interi, determinare la loro somma”. L’analisi del problema conduce ai seguenti risultati intermedi:

a. I dati di input sono i due numeri dati, che chiameremo num1 e num2.

b. Il dato di output è la loro somma.

c. Il procedimento risolutivo consiste nella seguente sequenza di passi:

1. acquisisco in input il primo numero, num1

2. acquisisco in input il secondo numero, num2

3. eseguo l’addizione num1+num2

4. salvo il risultato (nella memoria del computer)

5. produco in output il risultato

Formalizzazione dell’analisi

Per formalizzare i risultati ottenuti con l’analisi del problema, utilizzeremo una tabella dati e un diagramma di flusso. La tabella dati è una tabella che contiene (almeno per il momento) 4 colonne e tante righe quante sono le variabili di I/O individuate.

ID

Descrizione

I/O

Tipo

……………………………

…………………………….

………………………………

………………………………

Fig.1 Tabella Dati

La colonna ID contiene i nomi dei dati o identificatori (da qui l’uso dell’etichetta ID). La colonna Descrizione contiene una breve descrizione del dato, se necessaria. La colonna I/O contiene I se il dato è di input, O se è di output. La colonna Tipo specifica il tipo del dato, cioè l’insieme dei valori che il dato può

assumere.

Esempio

ID

Descrizione

I/O

Tipo

num1

Primo addendo

I

numero intero

num2

Secondo addendo

I

numero intero

somma

Somma dei due addendi

O

numero intero

Il diagramma di flusso è una rappresentazione grafica dell’algoritmo. Esso fa uso di speciali simboli e archi orientati (frecce) per indicare i passi del procedimento risolutivo e l’ordine di esecuzione degli stessi. I simboli utilizzati per disegnare un diagramma di flusso sono rappresentati nella figura seguente.

Autore: Cinzia Bocchi Ultimo aggiornamento: 08/08/11

2

(c) (a) (b) (e) (d) Fig.2 Simboli diagrammi di flusso Start input (num1) input (num2)
(c)
(a)
(b)
(e)
(d)
Fig.2 Simboli diagrammi di flusso
Start
input (num1)
input (num2)
somma= num1+num2
output (somma)
End
End

Il rettangolo (d) ha una freccia entrante e una freccia uscente. Esso è utilizzato per contenere istruzioni di assegnazione. Più avanti sarà chiarito il significato di assegnazione.

Il parallelogramma (c), anch’esso con una freccia entrante e una uscente, è destinato a contenere istruzioni di input/output.

I due ovali (a,b) individuano l’inizio del diagramma di flusso (quello con la sola freccia uscente) e la fine (quello con la sola freccia entrante).

Il rombo contiene espressioni logiche, cioè espressioni che quando sono valutate, restituiscono vero/falso.

I simboli possono essere combinati per rappresentare graficamente l’algoritmo.

Esempio

Autore: Cinzia Bocchi Ultimo aggiornamento: 08/08/11

3

Scrittura del programma e verifica della sua correttezza

Dopo aver svolto le precedenti fasi e aver scelto il linguaggio di programmazione, si passa alla realizzazione del programma e la sua messa a punto. L’argomento sarà ripreso più avanti, quando inizierete a conoscere il linguaggio di programmazione Java.

Quest'opera è stata rilasciata con licenza Creative Commons Attribution-ShareAlike 3.0 Unported. Per leggere una copia della licenza visita il sito web http://creativecommons.org/licenses/by-sa/3.0/ o spedisci una lettera a Creative Commons, 171 Second Street, Suite 300, San Francisco, California, 94105, USA.

Autore: Cinzia Bocchi Ultimo aggiornamento: 08/08/11

4