Elementi di Informatica

Slides:



Advertisements
Presentazioni simili
I Linguaggi di programmazione
Advertisements

Software di base: Linguaggi di Programmazione
Analisi e progettazione
Analisi – Progettazione - Programmazione
Linguaggi algoritmici
Selezione A. Ferrari.
I DATI LE ISTRUZIONI LE STRUTTURE FONDAMENTALI
ALGORITMI Un algoritmo (detto anche procedura, prescrizione, processo, routine, metodo) è un insieme di regole (dette anche direttive o istruzioni) che,
Algoritmi e Programmazione
Informatica Generale Marzia Buscemi
Informatica Generale Susanna Pelagatti
Corso di Laurea in Biotecnologie corso di Informatica Paolo Mereghetti DISCo – Dipartimento di Informatica, Sistemistica e Comunicazione.
Fondamenti di Informatica
1 Istruzioni, algoritmi, linguaggi. 2 Algoritmo per il calcolo delle radici reali di unequazione di 2 o grado Data lequazione ax 2 +bx+c=0, quali sono.
Iterazione enumerativa (for)
Informatica Problema Algoritmo Programma
Informatica di base A.A. 2003/2004 Algoritmi e programmi
Università degli Studi di Bergamo Facoltà di Lingue e Letterature Straniere Facoltà di Lettere e Filosofia A.A Informatica generale 1 Appunti.
Informatica 2. Concetti fondamentali di programmazione Programmare vuol dire scrivere un algoritmo in un linguaggio che faccia funzionare un calcolatore.
1 Corso di Laurea in Biotecnologie Informatica (Programmazione) Problemi e algoritmi Anno Accademico 2009/2010.
Definizione di Algoritmo
Programmazione Un programma descrive al computer, in estremo dettaglio, la sequenza di passi necessari a svolgere un particolare compito L’attività di.
DAL PROBLEMA ALL'ALGORITMO Problemi e Programmi Paolo Amico
ALGORITMI E PROGRAMMAZIONE STRUTTURATA
Gli algoritmi AA 2003/04 © Alberti Programmazione 2. Algoritmi.
Unità Didattica 1 Algoritmi
Strutture di controllo in C -- Flow Chart --
Fondamenti di Informatica Algoritmi
Algoritmi e Programmazione (in C) Stefano Cagnoni e Monica Mordonini
Gli algoritmi.
DIAGRAMMI DI FLUSSO Notazione grafica usata per descrivere in modo intuitivo le azioni di cui è fatto un algoritmo. Viene usata per descrivere i passi.
Algoritmi e diagrammi di flusso
Elementi di Informatica
Da Problema a Programmazione
Esercizio Questo esercizio riguarda i MODELLI di COMUNICAZIONE ed è stato proposto dal Prof. Mussio, docente di Fondamenti di comunicazione digitale, durante.
Dall’algoritmo al programma.
ELEMENTI DI PROGRAMMAZIONE
Algoritmi e Programmazione strutturata
INFORMATICA MATTEO CRISTANI.
PROGRAMMAZIONE: linguaggi
Lezione 1 Linguaggi di programmazione – Algoritmi –Istruzioni
Lezione 6 Strutture di controllo Il condizionale
ECDL Patente europea del computer
Linguaggi per COMUNICARE
Ripasso : Algoritmi.
COME RAGIONA UN COMPUTER
DIVERTIRSI CON SCRATCH
Dal problema all’ algoritmo
ALGORITMI Un algoritmo (detto anche procedura, prescrizione, processo, routine, metodo) è un insieme di regole (dette anche direttive o istruzioni) che,
Rappresentazione degli algoritmi
1 Parte 2 Fondamenti di programmazione. 2 Definizione intuitiva di algoritmo Elenco finito di istruzioni che specificano una serie di operazioni, eseguendo.
Tecnologie Informatiche ed Elettroniche per le Produzioni Animali
Algoritmi.
Realizzazione software
1 Informatica Generale Marzia Buscemi Ricevimento: Giovedì ore , Dipartimento di Informatica, stanza 306-PS o per posta.
L’ELABORATORE ELETTRONICO uno strumento in grado di eseguire insiemi di azioni (“mosse”) elementari le azioni vengono eseguite su oggetti (dati) per produrre.
Algoritmi e Programmazione (in C) Stefano Cagnoni e Monica Mordonini
Diagrammi a blocchi.
Informatica e Informatica di Base
Problemi, algoritmi e programmazione
ALGORITMI Dal problema al programma Definizione di algoritmo
Il computer ragiona? Problemi e algoritmi. Paola Pianegonda2 Cos’è un problema?  Problema è qualsiasi situazione della quale non conosciamo la soluzione.
Programmazione dei Calcolatori Elettronici
Dal problema al programma
Strutture di controllo
GLI ALGORITMI Appunti preparati dalla prof.ssa Maria D’Angelo.
Unità di apprendimento 6 Dal problema al programma.
Istruzioni e algoritmi. Istruzioni Operative I passi elementari che compongono l’algoritmo sono le istruzioni. Distinguiamo: Istruzioni di input Istruzioni.
Unità di apprendimento 6
ALGORITMI, LINGUAGGI E PROGRAMMI Facoltà di Lingue e Letterature Straniere Corso di laurea in Relazioni Pubbliche.
Transcript della presentazione:

Elementi di Informatica Claudia Raibulet raibulet@disco.unimib.it

Rappresentazione di un algoritmo Diagrammi di flusso Sono grafici che permettono di esprimere un algoritmo in modo schematico e intuitivo Per rappresentare un algoritmo occorre rappresentare: Passi necessari Loro corretta sequenza I diagrammi di flusso sono una descrizione piu’ efficace e meno ambigua di una descrizione a parole

Diagrammi di flusso Si costruiscono a partire da un certo numero di blocchi base che rappresentano le operazioni elementari ed i costrutti di controllo Operazione I/0 Trasferimento di informazioni STOP START Azione (istruz.) Esecuzione di calcoli Cond. Si No Assunzione di decisioni Sottoalgoritmo I blocchi base vengono collegati tramite “frecce” che collegano un’azione alla successiva all’interno dell’algoritmo

Rappresentazione di un algoritmo START Istruzione 1 Sequenza Istruzione 2 condizione falsa Iterazione condizione vera condizione Istruzione 3 Istruzione 4 Selezione SE condizione allora altrimenti Istruzione 5 Istruzione 6 STOP

Diagrammi di flusso Realizzare i diagrammi di flusso per i seguenti algoritmi: Trovare il massimo fra 2 numeri interi positivi x e y Trovare il massimo fra 3 numeri interi positivi x, y e z Trovare il massimo fra N numeri interi positivi

Massimo fra due numeri interi positivi X e Y START STOP Leggi i valori di X e Y D = X - Y D > 0 Si No Scrivi massimo e’ X Scrivi massimo e’ Y

Massimo fra N numeri interi positivi START Leggi il valore di K Si k > 1 No Non e’ possibile calcolare il massimo k == 0 Si No Leggi il valore di X Il massimo e’ X Leggi i primi due numeri in X e Y M = MAX (X,Y) K = K-2 Si K > 0 No No Leggi un altro numero in X No Il massimo e’ M M = MAX (X,Y) STOP K = K-1

Esercizio Si chiede di realizzare il diagramma di flusso dell’algoritmo che risolve il prodotto di due numeri col metodo delle addizioni successive.

Soluzione Si chiami X il valore del moltiplicando ed Y il valore del moltiplicatore e sia M il risultato. Si inizializza il valore M a 0 Si ripetono le seguenti operazioni fintanto che Y e’ diverso da 0: Si sommi il valore di X al valore di M e si chiami ancora il risultato M (M=M+X) Si sottraga 1 dal valore di Y, e si chiami Y ancora il risultato (Y=Y-1) Sia M il risultato del prodotto

Esercizio Si chiede di rappresentare con un diagramma di flusso l’algoritmo che effettua la somma di N numeri interi.

Origine della parola “algoritmo” Da Muhammad ibn Muza, detto al-Khowarizmi, un matematico arabo-persiano (825 d.c.) a cui è attribuita l’invenzione di un insieme di precise regole di calcolo per le quattro operazioni. In latino Algorismus: una procedura per risolvere un problema matematico in un numero finito di passi che implicano frequenti ripetizioni di un'operazione.

Concetto di algoritmo Algoritmo = sequenza di passi, definiti con precisione, che portano alla realizzazione di un compito. In mathematics and computing, an algorithm is a procedure (a finite set of well-defined instructions) for accomplishing some task which, given an initial state, will terminate in a defined end-state [Wikipedia]. Calcolatori – esecutori di algoritmi

Caratteristiche di un algoritmo Un insieme finito di prescrizioni (istruzioni) che da’ luogo ad una sequenza finita di operazioni Termina dopo un numero finito di passi Opera su input ammissibili per il problema considerato Produce output desiderati che abbiamo una relazione con gli input specificati (siano funzione degli input) Tutte le operazioni dell’algoritmo devono essere elementari (comprensibili all’esecutore) e poter essere eseguite in un tempo finito Osservazione: il concetto di azione elementare e’ relativo all’esecutore!

Concetto di algoritmo: requisiti fondamentali Univocita’ La descrizione è effettuata in un linguaggio comprensibile all’esecutore e mediante un insieme finito di operazioni elementari, note all’esecutore Completezza Tiene conto di tutte le possibili condizioni che si possono verificare durante la sua esecuzione Finitezza In un numero finito di passi il compito viene portato a termine Determinismo Risultati non dipendenti dalla esecuzione Efficienza Minimo di operazioni

Concetto di programma Un linguaggio di programmazione consente di stabilire un dialogo (di comunicare) con lélaboratore. Un lingiaggio di programmazione e’ un linguaggio comprensibile ad un elaboratore, per mezzo del quale si possono esprimere gli algoritmi. Un programma e’la rappresentazione formale di un algoritmo mediante un lingiaggio di programmazione Le istruzioni specificate in un programma possono richiedere dati comunicati dall’utente (dati di input - ingresso) e producono altri dati (dati di output - uscita)

Concetto di programma Il linguaggio macchina e’il linguaggio che l’elaboratore e’ in grado di comprendere Linguaggi di programmazione di alto livello: Piu’ facili da usare, in quanto piu’ comprensibili I programmi scritti in un linguaggio di alto livello sono tradotti da altri programmi in linguaggio macchina Esempi di linguaggi di alto livello: ForTran (Formula Translator) Cobol (Common business oriented language) Pascal C Java …