Documenti di Didattica
Documenti di Professioni
Documenti di Cultura
Introduzione al corso
Ing. Simona Colucci
Sistemi Informativi
DEE - Politecnico di Bari
Informazioni utili
Mercoled 11:30/13:30
Sistemi Informativi
DEE - Politecnico di Bari
Modalit desame
Prova scritta: - Composta di una parte teorica e di una applicativa - Obbligatoria per il superamento dellesame - Sostituibile dal superamento di entrambe le prove di esonero dallo scritto da tenersi durante il corso Prova orale: - Facoltativa con il superamento della prova scritta
Sistemi Informativi
DEE - Politecnico di Bari
Argomenti teorici di base - oggetto delle lezioni in aula - verificati tramite quesiti ed esercizi della prova scritta Programmazione in linguaggio C - oggetto delle lezioni e delle esercitazioni in aula - verificata tramite problemi della prova scritta
Sistemi Informativi
DEE - Politecnico di Bari
Libri di testo
2008 Bellini, Guidi. Linguaggio C. Mc-Graw-Hill, 2006 Kerningham, Ritchie. Linguaggio C. Jackson Libri, 1989
Sistemi Informativi
DEE - Politecnico di Bari
Programma
Sistemi Informativi
DEE - Politecnico di Bari
Informatica
Definizione Scienza della rappresentazione e dellelaborazione dellinformazione Definizione Association of Computing Machinery(ACM) Studio sistematico degli algoritmi(sequenze precise di operazioni comprensibili e perci eseguibili da uno strumento automatico) che descrivono e trasformano linformazione: la loro teoria, analisi, progetto, efficienza, realizzazione e applicazione
Sistemi Informativi
DEE - Politecnico di Bari
Concetto di algoritmo
Sequenza di passi, definiti con precisione, che portano alla realizzazione di un compito. E essenziale che un algoritmo sia comprensibile al suo esecutore:es. il calcolatore(privo di buon senso) esegue algoritmi prodotti e codificati dagli informatici in programmi Propriet degli algoritmi: - correttezza: capacit di arrivare alla soluzione del compito cui preposto, senza difettare di alcun passo fondamentale - efficienza: capacit di arrivare alla soluzione del compito cui preposto nel modo pi veloce possibile e/o usando la minima quantit di risorse fisiche, compatibilmente con la sua correttezza
Sistemi Informativi
DEE - Politecnico di Bari
Esempi di algoritmi
1. Lavaggio di capi resistenti in lavatrice 2. Calcolo dellimposta IRPEF relativa a un contribuente, dato il reddito lordo e la tabella delle aliquote 3. Calcolo della somma algebrica tra due numeri relativi utilizzando le operazioni di somma e differenza tra numeri senza segno 4. Calcolo del Massimo Comun Divisore(M.C.D.)
Sistemi Informativi
DEE - Politecnico di Bari
Esempio 1
Problema: Lavaggio di capi resistenti in lavatrice Soluzione informale: lavatrice + programma cotone 90 Algoritmo: Esecuzione in stretta sequenza dei seguenti passi:
-lavatrice
-ammollo -prelavaggio -lavaggio -candeggio -risciacquo -ammorbidente -centrifuga
Sistemi Informativi
DEE - Politecnico di Bari
Esempio 2
Problema: Calcolo dellimposta IRPEF relativa a un contribuente, dato il reddito lordo e la tabella delle aliquote Soluzione informale: data la tabella delle aliquote relative alle fasce di reddito e dato il reddito lordo, si applicano progressivamente le aliquote al reddito Algoritmo: - acquisire reddito lordo Inizio-fascia() Fine_fascia () Aliquota (%) - I=10% di R O 3600 10 - Se R>3600 I=I+12%(R-3600) 3600.01 7200 22 - Se R>7200 I=I+5%(R-7200) 7200.01 15000 27 - Se R>15000 I=I+7%(R-15000) 15000.01 30000 34 - Se R>30000 I=I+7%(R-30000) 30000.01 75.000 41 - Se R>75000 I=I+5%(R-75000) 75000.01 150000 46 - Se R>150000 I=I+5%(R-150000) 150000 51 - I limposta risultante
Sistemi Informativi
DEE - Politecnico di Bari
Esempio 3
Problema: Calcolo della somma algebrica tra due numeri relativi utilizzando le operazioni di somma e differenza tra numeri senza segno Soluzione informale: si confrontano i segni dei due operandi; nel caso di numeri concordi si effettua la somma dei moduli e il risultato concorde con gli addendi; nel caso di numeri discordi si effettua la differenza tra modulo maggiore e minore e il risultato concorde con laddendo di modulo maggiore. Algoritmo: - acquisizione dei due numeri a,b - se a,b sono concordi |s|=|a|+|b| - se a,b sono discordi - se |a|<|b| si scambiano i valori di a e b - |s|=|a|-|b| - la somma ha il segno di a e modulo |s|
Sistemi Informativi
DEE - Politecnico di Bari
Esempio 4
Problema: Calcolo del Massimo Comun Divisore tra due numeri a,b : MCD(a,b) Soluzione di Euclide: ogni divisore comune di a e b divisore di a, b e del resto r della divisione tra a e b (a mod b), se questo non nullo Algoritmo: 1. acquisire due numeri a,b 2. se b>a scambiare a con b 3. se b= 0 MCD(a,b)=a a andare al passo 6 4. r= a mod b 5. sostituire a con b, b con r ed andare al passo 2 6. Fine
Sistemi Informativi
DEE - Politecnico di Bari
Flusso di controllo
Lordine di esecuzione delle operazioni elementari determinante per la soluzione del problema Le operazioni elementari(passi di algoritmi) vengono chiamate istruzioni nel linguaggio dei calcolatori e possono essere classificate in : - istruzioni non condizionate - istruzioni condizionate: lesecuzione dipende da una condizione - istruzioni di controllo: esprimono le condizioni da cui dipende lesecuzione delle istruzioni condizionate(dette pseudo-istruzioni perch controllano solo il flusso delle operazioni) Le istruzioni possono essere composte in blocchi o sequenze che risolvono sottoproblemi del problema principale e sono viste come unistruzione elementare
Sistemi Informativi
DEE - Politecnico di Bari
Costrutto
Insieme di istruzioni di controllo e controllate: - costrutto condizionale: insieme di condizione e istruzioni condizionate - costrutto iterativo: insieme di istruzioni la cui esecuzione viene ripetuta sotto il controllo di opportune istruzioni di controllo
Sistemi Informativi
DEE - Politecnico di Bari
Diagrammi di flusso
FLOW CHART: Formalismo grafico per rappresentare la sequenza(flusso)di istruzioni o operazioni elementari di un algoritmo: -operazioni(semplici o composte, condizionate o non condizionate) con rettangoli -condizioni(scelta tra due possibilit) con rombi
vero
Condizione?
falso
-flusso (sequenza di esecuzione o controllo) con segmenti orientati che uniscono i blocchi -inizio e fine dellesecuzione con ellissi
Sistemi Informativi
DEE - Politecnico di Bari
Linguaggi di Programmazione
Linguaggi per la codifica di algoritmi: scrittura sotto forma di programmi che possano essere compresi da un elaboratore Dal linguaggio della macchina ai linguaggi di alto livello: sforzo di traduzione da linguaggio naturale a linguaggio macchina sempre pi affidato alla macchina stessa
Sistemi Informativi
DEE - Politecnico di Bari
Sistema Informatico
Oggetto complesso,che pu assumere nature molto differenti, costituito da molte parti che interagiscono tra loro per eseguire algoritmi Classificazione a livello generico delle componenti:
Hardware: componenti fisici del sistema Software: programmi eseguiti dal sistema Il confine tra HW e SW piuttosto sfumato se si pensa che le stesse funzioni possono essere svolte a seconda dei casi da circuiti e dispositivi HW o da particolari microprogrammi(firmware) definiti dal costruttore del calcolatore
Sistemi Informativi
DEE - Politecnico di Bari
Hardware
Bus di sistema:
Unit periferiche:
Sistemi Informativi
DEE - Politecnico di Bari
Sistemi Informativi
DEE - Politecnico di Bari
Software
SW di base
SISTEMA OPERATIVO Sistema di gestione di basi di dati Protocolli di comunicazione: garantiscono la corretta comunicazione sui canali di trasmissione che trasportano segnali(tipicamente elettrici), garantendo la trasmissione dei dati tra elaboratore e terminali o tra elaboratori collegati in rete
SW applicativo:
dedicato alla realizzazione di specifiche esigenze applicative utilizza linguaggi di alto livello opera al di sopra del SW di base non risente delle caratteristiche architetturali del sistema informatico:trasportabile
Sistemi Informativi
DEE - Politecnico di Bari
Sistema Operativo
Funzioni:
Interpreta ed esegue comandi elementari Organizza le risorse della macchina Gestisce laccesso alla rete
Sia che sia venduto dal costruttore del sistema informatico che realizzato da ditte di SW, il SO non pu essere modificato dallutente nelle sue istruzioni ed necessario come tramite duso tra la macchina fisica e lutente Complessit crescente con quella del sistema informatico:
In sistemi multi-utente il SO distribuisce le parti del calcolatore tra i vari utenti in maniera apparentemente dedicata
Fondamenti di Informatica CDL in Ingegneria Gestionale (B)- A.A. 2010-2011