informatica e informazione - Digilander

INFORMATICA E INFORMAZIONE
INFORMATICA = INFORMAZIONE + AUTOMAZIONE
L’INFORMATICA è una scienza che abbraccia molteplici discipline
scientifiche e tecnologiche ed usa il COMPUTER come strumento per:
•
•
•
TRASMETTERE
TRASFORMARE
CONSERVARE
L’ INFORMAZIONE
1
INFORMATICA E INFORMAZIONE
Il COMPUTER è uno strumento in grado di eseguire un insieme di azioni
che a partire da una INFORMAZIONE (o DATO) iniziale producono
una INFORMAZIONE finale o RISULTATO con lo scopo di risolvere
un problema.
Dati
Risultati
COMPUTER
INPUT
OUTPUT
2
I PROBLEMI
Che cos’è un PROBLEMA? E’ un quesito che attende una soluzione
Esempi: - Risolvere un equazione di primo grado
- Calcolare il m.c.m tra due numeri
- Dato un elenco di nomi e numeri di telefono relativi trovare il
numero di una determinata persona
Non tutti i problemi hanno una soluzione.
Noi comunque ci concentreremo sui problemi risolvibili (funzioni calcolabili)
Il COMPUTER è il supporto per esprimere la soluzione dei problemi, NON
per risolverli
L’ ATTIVITA’ dell’uomo consiste nell’individuare la “sequenza di ordini
giusti” da dare al COMPUTER per arrivare alla soluzione del problema.
3
RISOLUZIONE dei PROBLEMI
RISOLVERE UN PROBLEMA
soluzione
Stato
Stato
iniziale
finale
o
O
DATI
INGRESSO
RISULTATO
verifica
4
RISOLUZIONE dei PROBLEMI
RISOLVERE UN PROBLEMA significa trovare un procedimento
risolutivo, ovvero una sequenza di azioni che espresse tramite un
elenco di istruzioni e interpretate da un esecutore portino da
informazioni iniziali a produrre dei risultati che non siano in
contraddizione con i dati iniziali, soddisfacendo quindi un criterio di
verifica
risolutore
Dati iniziali
Processo
risolutivo
Esecutore
(parametri)
Dati finali
(risultati)
Criterio di verifica
Le istruzioni devono essere impartite in un LINGUAGGIO noto
all’esecutore in modo che sia in grado di interpretarle
5
RISOLUZIONE dei PROBLEMI
Problema “ben formulato”:
Un problema si dice ben formulato quando:
•
•
•
•
non è evidente apriori che non esistono soluzioni
il criterio di verifica è univoco ed è noto come applicarlo
l’insieme dei dati iniziali è completo
a partire dallo stesso insieme di dati iniziali si ottengono sempre gli
stessi risultati
6
Dal problema all’algoritmo
Ogni azione è descritta da una procedura o algoritmo che contiene
l’elenco delle istruzioni per la soluzione di un problema.
La descrizione delle istruzioni di un algoritmo dipende da diversi fattori:
•i dati di ingresso a disposizione
•le capacità dell’esecutore
(capacità, mezzi e possibilità di comunicazione con l’esterno)
•il linguaggio compresso dall’esecutore
7
Algoritmo
Def.: l’ algoritmo è una sequenza finita di passi per risolvere una
classe di problemi in un tempo finito
Metodo risolutivo
(algoritmo)
Esecutore
Dati
capace di eseguire le
azioni descritte
dall’algoritmo
Risultati
Tanto più le capacità dell’esecutore sono limitate
tanto più le istruzioni impartite devono essere dettagliate
8
Algoritmo
Proprietà (1)
• Eseguibilità
ogni azione deve essere
eseguita in un tempo finito
Proprietà (2)
l’algoritmo deve essere:
•
• Non- Ambiguità
ogni azione deve essere
interpretata in modo univoco
dall’esecutore
• Finitezza
il numero di azioni che
compongono l’algoritmo deve
essere finito
•
•
applicabile a qualsiasi insieme
dei dati d’ingresso
appartenenti al dominio di
definizione.
costituito da operazioni
elementari
costituito da regole non
ambigue che possano essere
interpretate in modo univoco
da qualsiasi esecutore
9
Algoritmi e Programmi
La formulazione di un algoritmo in linguaggio comprensibile all’esecutore
è detta programma.
problema
algoritmo
Metodo
risolutivo
programma
Linguaggio di
programmazione
Due algoritmi si dicono equivalenti quando a partire dagli stessi dati
d’ingresso producono gli stessi risultati pur avendo diversa efficienza ed
essendo formulati in modo completamente diverso.
10