Programmazione. Informatica. Risoluzione dei Problemi
|
|
|
- Rachele Sacchi
- 9 anni fa
- Просмотров:
Транскрипт
1 Cos è l INFORMATICA?? Il termine "informatica" ha un' accezione molto ampia. Risoluzione automatica di problemi: gli Algoritmi Esistono varie definizioni: l'informatica è la scienza che si occupa della conservazione, dell'elaborazione e della rappresentazione dell'informazione. Scienza dei calcolatori elettronici (Computer Science) Scienza dell informazione Definizione proposta nell'ambito di questo corso: Scienza della rappresentazione e dell elaborazione automatica dell informazione. Informatica Informazione: e` tutto ciò che può essere rappresentato all interno di un computer è informazione: Numeri Caratteri, parole e testi Immagini Suoni Filmati comandi (istruzioni) e sequenze di comandi (programmi) che il calcolatore deve eseguire Le modalita` di rappresentazione dipendono dalle caratteristiche dell'elaboratore. Programmazione E` l'attivita` con cui si predispone l'elaboratore ad eseguire un particolare insieme di azioni su particolari informazioni (dati), allo scopo di risolvere un certo problema. DATI istruzioni Calcolatore Elettronico RISULTATI Elaboratore Elettronico (computer): e` lo strumento per la rappresentazione e l elaborazione delle informazioni. I Problemi da risolvere I problemi che siamo interessati a risolvere con l'elaboratore sono di natura molto varia. Ad esempio: Somma di due numeri interi Dati a e b, risolvere l'equazione ax+b=0 Calcolare il massimo comun divisore fra due numeri dati. Dato un insieme di parole, metterle in ordine alfabetico. Calcolare l'intersezione di due insiemi. Dato un elenco di nomi e relativi numeri di telefono trovare il numero di telefono di una determinata persona Dati gli archivi dei dipendenti di un azienda, calcolare lo stipendio medio del dipendente dell azienda. Data l'immagine satellitare di un'area geografica, calcolare le previsioni del tempo per domani.... Risoluzione dei Problemi La descrizione del problema non fornisce (in genere) un metodo per calcolare il risultato. Non tutti i problemi sono risolvibili attraverso l'uso del calcolatore. In particolare esistono classi di problemi per le quali la soluzione automatica non e` proponibile. Ad esempio: se il problema presenta infinite soluzioni per alcuni dei problemi non e` stato trovato un metodo risolutivo. per alcuni problemi e'stato dimostrato che non esiste un metodo risolutivo automatizzabile Noi ci concentreremo sui problemi che, ragionevolmente, ammettono un metodo risolutivo (esprimibile mediante una funzione calcolabile). 1
2 Risoluzione di un problema Con questo termine si indica il processo che: dato un problema, e individuato un metodo risolutivo trasforma i dati iniziali nei corrispondenti risultati finali. Affinche` la risoluzione di un problema possa essere realizzata attraverso l uso del calcolatore, tale processo deve poter essere definito come sequenza di azioni elementari, esprimibili mediante istruzioni. ALGORITMO e` l'insieme ordinato delle azioni che risolve un dato problema P. l algoritmo descrive un metodo risolutivo attraverso un insieme ordinato di azioni. l'esecuzione dell'algoritmo e` affidata ad un generico "esecutore", cioe` una macchina astratta (non necessariamente un calcolatore!) in grado di interpretare ed eseguire ogni azione specificata nell'ordine indicato. DATI di P Esecutore Algoritmo risolutivo di P RISULTATI di P Esecutore e istruzioni primitive Ad un generico esecutore e` implicitamente associato un insieme di istruzioni primitive (set di istruzioni): sono le sole istruzioni che e` in grado di interpretare ed eseguire. Esempio: la preparazione del caffe` Esecutore: essere umano corredato di caffettiera "moka", cucina a gas e macina-caffe`; Algoritmo: 1. svitare la caffettiera; 2. se si dispone di caffe` macinato: riempire il filtro con il caffe` macinato, altrimenti se si dispone di caffe` in chicchi: macinarlo e ripetere il punto 2; altrimenti terminare (il caffe` non si puo` fare..). 3. riempire la parte inferiore della caffettiera con acqua; 4. inserire il filtro nella macchina; 5. avvitare la caffettiera; 6. accendere il fuoco a gas; 7. collocare la moka sul fuoco; 8. attendere l'uscita del caffe`; 9. spegnere il fuoco; 10. fine (il caffe` e` pronto). Esempio: la preparazione del caffe` Esecutore: essere umano corredato di caffettiera "moka", cucina a gas e macinacaffe`; Set di istruzioni: operazioni fondamentali sulla caffettiera: svitare avvitare riempire il filtro riempire con acqua operazioni fondamentali sulla cucina a gas: accendere spegnere operazioni fondamentali sul macina-caffe`: macinare altre operazioni: verifica di condizioni ripetizione di operazioni attesa.. Proprieta` fondamentali dell Algoritmo 1. Eseguibilita`: ogni istruzione deve essere eseguibile da parte dell esecutore dell algoritmo; 2. Non Ambiguita`: ogni istruzione deve essere univocamente interpretabile dall'esecutore 3. Finitezza: il numero totale di azioni da eseguire, per ogni insieme di dati di ingresso, e' finito. se almeno una delle 3 proprieta` non e` soddisfatta, la sequenza non e` un algoritmo. Altre proprieta` desiderabili: generalita`: corretto funzionamento dell'algoritmo anche variando alcuni aspetti del problema (ad esempio, la dimensione dell'insieme dei dati, il tipo dei dati, ecc.) efficienza: tanto minore e` il numero di azioni eseguite per la risoluzione del problema, tanto maggiore e` l'efficienza. determinismo: possibilita` di prevedere esattamente prima dell'esecuzione la sequenza di azioni che verranno eseguite, per ogni insieme di dati.... 2
3 Algoritmi e Programmi Se l'esecutore e` un elaboratore elettronico: 1. e` necessario conoscere l'insieme di istruzioni che e` in grado di interpretare 2. e` necessario conoscere quali tipi di informazioni (dati) e` in grado di rappresentare Gli aspetti 1. e 2. sono peculiari del formalismo scelto per esprimere l'algoritmo all'interno del sistema di elaborazione, cioe` del Linguaggio di Programmazione Algoritmi e Programmi Quindi: Dato un problema P, la sua soluzione puo` essere ottenuta mediante l uso del calcolatore, compiendo i seguenti passi: 1. individuazione di un metodo risolutivo 2. scomposizione del procedimento in insieme ordinato di azioni: algoritmo 3. rappresentazione dei dati e dell'algoritmo attraverso un formalismo comprensibile per l elaboratore (il linguaggio di programmazione). Si ottiene cosi` il PROGRAMMA, che potra` essere eseguito dall'elaboratore per risolvere automaticamente ogni istanza del problema P. problema algoritmo programma metodo risolutivo linguaggio di programmazione Algoritmi equivalenti Due algoritmi si dicono equivalenti quando: hanno lo stesso dominio dei dati (dominio di ingresso); hanno lo stesso dominio dei risultati (dominio di uscita); in corrispondenza degli stessi valori nel dominio di ingresso producono gli stessi valori nel dominio di uscita Due algoritmi equivalenti: forniscono lo stesso risultato possono essere profondamente diversi Algoritmi Equivalenti: Calcolo del massimo comun divisore Dati due interi m ed n, calcolare il massimo comune divisore di essi. Algoritmo a: 1. Calcola l'insieme I dei divisori di m 2. Calcola l'insieme J dei divisori di n 3. Calcola l'insieme K dei divisori comuni: K = I J 4. Calcola il massimo in K: questo e' il risultato possono avere differente efficienza Algoritmi Equivalenti: Calcolo del massimo comun divisore Algoritmo b:si basa sul metodo di Euclide: detta mcd la funzione che calcola la soluzione del problema, la sua definizione e` data come segue: mcd(m,n) = m (oppure n) se m=n mcd(m,n) = mcd(m-n, n) se m>n mcd(m,n) = mcd(m, n-m) se m<n Quindi l'algoritmo b si puo` esprimere cosi`: 1. Finche' m e` diverso da n ripeti le seguenti azioni: se m>n sostituisci a m il valore (m-n) altrimenti sostituisci a n il valore (n-m) 2. Il massimo comun divisore e' n Rappresentazione di Algoritmi: Diagrammi di flusso E' un formalismo che consente di rappresentare graficamente gli algoritmi. un diagramma di flusso descrive le azioni da eseguire ed il loro ordine di esecuzione. ad ogni tipo di azione corrisponde un simbolo grafico (blocco) diverso. ogni blocco ha un ramo in ingresso ed uno o piu` rami in uscita; collegando tra loro i vari blocchi attraverso i rami, si ottiene un diagramma di flusso un diagramma di flusso appare, quindi, come un insieme di blocchi, collegati fra loro da linee orientate che specificano la sequenza in cui i blocchi devono essere eseguiti (flusso del controllo di esecuzione). Gli algoritmi a e b sono equivalenti. 3
4 Esempio start No A<- 0 i<-1 i>10 Si A A<- A+i i<-i+1 stop Diagrammi di Flusso Dati: Variabile: Rappresenta un dato ed e` individuata da un nome simbolico cui e` assegnato un valore che puo` cambiare durante l'esecuzione dell'algoritmo. Costante: e` una grandezza nota a priori, il cui valore non cambia durante l'esecuzione. Blocco(o istruzione): rappresenta una operazione mediante un simbolo grafico Blocco semplice: esecuzione di una singola operazione elementare sui dati Blocco condizione: in base al verificarsi di una condizione, permette di differenziare il comportamento dell algoritmo, mediante la scelta tra due alternative. Diagrammi di Flusso Espressioni: sequenze di variabili e costanti combinate fra loro mediante operatori operatori aritmetici: ad esempio {+, -, *, /}: s + 5 producono un risultato aritmetico operatori logici e relazionali: ad esempio {and, or, not} e {<, >, =,,, } not (C > B) producono un risultato logico {vero, falso} Inizio e fine esecuzione (start e stop): marcano inizio e fine di un algoritmo Inizio e` il blocco da cui deve iniziare l'esecuzione (uno solo epr ogni algoritmo). Il blocco fine fa terminare l'esecuzione dell'algoritmo (almeno uno). Assegnamento : calcola il valore dell espressione a destra del simbolo := ( o "<-") e lo si attribuisce (lo si assegna) alla variabile indicata a sinistra del simbolo (con eventuale perdita del valore precedente di V) Esempio: Ingresso (lettura, read, input): Si ricevono dal dispositivo di ingresso (per esempio, la tastiera) tanti valori quante sono le variabili specificate all interno del blocco (separate da virgole), e si attribuiscono (si assegnano) nello stesso ordine alle variabili. Ad esempio: V:=E V, W, Z dove V e` il nome di una variabile, E e` una espressione. Significato: " Calcola il valore dell espressione E e assegnalo alla variabile V." N.B. Il valore di V viene, in generale, modificato. Significato: "leggi i tre valori dati in ingresso, ed assegnali rispettivamente alle variabili V, W, e Z. Quindi: durante l'esecuzione, se vengono digitati dalla tastiera i valori: 5, 7, 9, allora la variabile V assumera` il valore 5, W il valore 7 e Z il valore 9. 4
5 Uscita (stampa, print, output): i valori delle espressioni specificati all'interno del blocco vengono calcolati e successivamente trasmessi al dispositivo di uscita (per esempio, il video). Ad esempio: A+B, X Esempio start A,B C:=A+B Significato: "calcola il valore dell'espressione A+B e di X e trasmettili in uscita. Quindi: se A vale 10, B vale 7 e X vale -25, l'esecuzione del blocco provochera` la stampa dei 2 valori: 17 e -25. NB: I valori di A, B e X non vengono alterati dall esecuzione del blocco. C stop Condizione: Si valuta la condizione specificata all interno del blocco: se e` verificata, si prosegue con la linea di flusso contrassegnata da (o ok, vero, true..), altrimenti (se non e` verificata) si prosegue per il ramo etichettato con (falso, false,..). Esempio: Blocco Condizione dove E e` un'espressione relazionale (o logica): ritorna valore vero, oppure falso. Significato: " Calcola il valore dell espressione E: se e` vero, prosegui per il ramo, altrimenti prosegui per il ramo ". E Strutture di controllo Mediante i blocchi fondamentali finora visti, è possibile costruire delle strutture da utilizzare per il controllo del flusso di esecuzione dell algoritmo: Alternativa:esprime la scelta tra due possibili azioni (o sequenze di azioni) mutuamente esclusive. Ripetizione: esprime la ripetizione di una sequenza di istruzioni. NB. Il blocco condizione e` l elemento di base per realizzare alternative e ripetizioni. Strutture: Alternativa Strutture: ripetizione algoritmo che, dati due valori interi A e B, stampa il minore dei due. C:=A A,B A < B C:=B algoritmo che, dato un valore intero positivo N, stampa tutti gli interi >0 e <= N. N I:=1 I > N I ripetizione alternativa C I:=I+1 5
6 Strutture: Ripetizione (o iterazione) Ripetizione Nel caso piu` generale, e` costituita da 4 elementi: Inizializzazione: assegnazione dei valori iniziali alle variabili caratteristiche del ciclo (viene eseguita una sola volta); Corpo: esecuzione delle istruzioni fondamentali del ciclo che devono essere eseguite in modo ripetitivo; Modifica: modifica dei valori delle variabili che controllano l'esecuzione del ciclo (eseguito ad ogni iterazione); Inizializzazione N I:=1 I > N I Controllo Corpo ripetizione Controllo: determina, in base al valore delle variabili che controllano l'esecuzione del ciclo se il ciclo deve essere ripetuto o meno. I:=I+1 Modifica Esempio: Algoritmo che calcola il prodotto come sequenza di somme (si suppone X 0). X,Y,Z variabili X,Y Z:=0 X = 0 lettura (inizializzazione) assegnamento condizione (controllo) X:=X-1 assegnamento (modifica) Z:=Z+Y assegnamento (corpo) stampa Z 6
L ELABORATORE ELETTRONICO
L ELABORATORE ELETTRONICO Il calcolatore elettronico è uno strumento in grado di eseguire insiemi di azioni ( mosse ) elementari le azioni vengono eseguite su oggetti (dati) per produrre altri oggetti
L ELABORATORE ELETTRONICO!
L ELABORATORE ELETTRONICO! Il calcolatore elettronico è uno strumento in grado di eseguire insiemi di azioni ( mosse ) elementari le azioni vengono eseguite su oggetti (dati) per produrre altri oggetti
Nozione di algoritmo. Gabriella Trucco
Nozione di algoritmo Gabriella Trucco Programmazione Attività con cui si predispone l'elaboratore ad eseguire un particolare insieme di azioni su particolari informazioni (dati), allo scopo di risolvere
INFORMATICA. Scienza degli elaboratori elettronici (Computer. informazione
Varie definizioni: INFORMATICA Scienza degli elaboratori elettronici (Computer Science) Scienza dell informazione informazione Definizione proposta: Scienza della rappresentazione e dell elaborazione elaborazione
Cosa è l Informatica?
Cosa è l Informatica? Scienza degli elaboratori elettronici (Computer Science) Scienza dell informazione Scienza della rappresentazione, memorizzazione, elaborazione e trasmissione dell informazione Elaboratore
CORSO DI PROGRAMMAZIONE E INFORMATICA GENERALE 1
CORSO DI PROGRAMMAZIONE E INFORMATICA GENERALE 1 Lezione 1 (Introduzione e Definizioni) Docenti Docente: Prof. Michele Colajanni Lezioni (Aula IV): martedì 10:00-12:45 Esercitazioni (Laboratorio): mercoledì
ALGORITMI: PROPRIETÀ FONDAMENTALI
ALGORITMI: PROPRIETÀ FONDAMENTALI Non si può risolvere un problema senza prima fissare un insieme di azioni, i di mosse elementari possibili per l'esecutore. Bisogna conoscerne le caratteristiche, le mosse
INFORMATICA. Scienza dei calcolatori elettronici (computer science) Scienza dell informazione (information science)
INFORMATICA Cosa è l informatica Scienza dei calcolatori elettronici (computer science) Scienza dell informazione (information science) E una scienza E una tecnologia Cosa può essere automatizzato nell
Algoritmi e Programmi
Algoritmi e Programmi Algoritmi e Programmi Le azioni che si compiono ogni giorno sono finalizzate alla risoluzione di problemi. Problema di elaborazione Insieme dati di partenza Risultato ricerca Algoritmi
Corso di Matematica per la Chimica. Dott.ssa Maria Carmela De Bonis a.a
Dott.ssa Maria Carmela De Bonis a.a. 2013-14 Programmi Un elaboratore riceve dei dati in ingresso, li elabora secondo una sequenza predefinita di operazioni e infine restituisce il risultato sotto forma
Informatica. Come si risolve un problema?
Informatica Elaborazione automatica dell informazione Esempio di elaborazione: rubrica, elenco telefonico. Ogni problema di elaborazione dell informazione è caratterizzato da: un insieme di dati di partenza
Il concetto di calcolatore e di algoritmo
Il concetto di calcolatore e di algoritmo Elementi di Informatica e Programmazione Percorso di Preparazione agli Studi di Ingegneria Università degli Studi di Brescia Docente: Massimiliano Giacomin Informatica
Introduzione alla programmazione
Introduzione alla programmazione Risolvere un problema Per risolvere un problema si procede innanzitutto all individuazione Delle informazioni, dei dati noti Dei risultati desiderati Il secondo passo consiste
Altrimenti, il M.C.D. di a e b è anche divisore di r (e.g. a=15,b=6,r=3 che è il M.C.D.)
Elaboratore Un elaboratore o computer è una macchina digitale, elettronica, automatica capace di effettuare trasformazioni o elaborazioni sui dati digitale l informazione è rappresentata in forma numerica
Corso di Informatica di Base
Corso di Informatica di Base A.A. 2011/2012 Algoritmi e diagrammi di flusso Luca Tornatore Cos è l informatica? Calcolatore: esecutore di ordini o automa Programma: insieme di istruzioni che possono essere
Problemi, algoritmi, calcolatore
Problemi, algoritmi, calcolatore Informatica e Programmazione Ingegneria Meccanica e dei Materiali Università degli Studi di Brescia Prof. Massimiliano Giacomin Problemi, algoritmi, calcolatori Introduzione
Il Concetto Intuitivo di Calcolatore. Esercizio. I Problemi e la loro Soluzione. (esempio)
Il Concetto Intuitivo di Calcolatore Elementi di Informatica e Programmazione Ingegneria Gestionale Università degli Studi di Brescia Docente: Prof. Alfonso Gerevini Variabile di uscita Classe di domande
Corso di Informatica. Problemi ed algoritmi. Ing Pasquale Rota
Corso di Problemi ed algoritmi Ing Pasquale Rota Argomenti Problemi ed algoritmi Proprietà degli algoritmi Pseucodice Diagrammi di flusso Problemi ed algoritmi - Ing. Pasquale Rota 2 Proprietà degli algoritmi
Introduzione agli Algoritmi
Introduzione agli Algoritmi Informatica Sara Zuppiroli A.A. 2012-2013 Informatica () Introduzione agli Algoritmi A.A. 2012-2013 1 / 25 Risoluzione dei problemi Dalla descrizione del problema all individuazione
Risolvere un problema significa individuare un procedimento che permetta di arrivare al risultato partendo dai dati Termine algoritmo da:
Algoritmi Algoritmi Risolvere un problema significa individuare un procedimento che permetta di arrivare al risultato partendo dai dati Termine algoritmo da: http://it.wikipedia.org/wiki/al-khwarizmi Un
Introduzione agli Algoritmi 4. Problemi. Dal Problema alla Soluzione
Sommario Problemi e soluzioni Definizione informale di algoritmo e esempi Proprietà degli algoritmi Input/Output, Variabili Algoritmi senza input o output 1 2 Problema Definizione (dal De Mauro Paravia):
in termini informali: un algoritmo è una sequenza ordinata di operazioni che risolve un problema specifico
Click to edit Algoritmo Master title style algoritmo: un insieme ordinato di operazioni non ambigue ed effettivamente computabili che, quando eseguito, produce un risultato e si arresta in un tempo finito
ALGORITMI. Obiettivo: risolvere problemi mediante l uso di un elaboratore elettronico. Elaboratore elettronico
ALGORITMI Obiettivo: risolvere problemi mediante l uso di un elaboratore elettronico Dati input Elaboratore elettronico Risultati Per risolvere un problema è necessario fornire una descrizione chiara e
PROBLEMI E ALGORITMI VESPIA CATERINA LICEO CLASSICO AGLI ANGELI
PROBLEMI E ALGORITMI prof.ssa VESPIA CATERINA LICEO CLASSICO AGLI ANGELI C O N T E N U T I Problemi. Concetto di algoritmo. Caratteristiche di un algoritmo. Descrizione di algoritmi - Diagrammi di flusso.
Informatica ALGORITMI E LINGUAGGI DI PROGRAMMAZIONE. Francesco Tura. F. Tura
Informatica ALGORITMI E LINGUAGGI DI PROGRAMMAZIONE Francesco Tura [email protected] 1 Lo strumento dell informatico: ELABORATORE ELETTRONICO [= calcolatore = computer] Macchina multifunzionale Macchina
Problema: dati i voti di tutti gli studenti di una classe determinare il voto medio della classe.
Problema: dati i voti di tutti gli studenti di una classe determinare il voto medio della classe. 1) Comprendere il problema 2) Stabilire quali sono le azioni da eseguire per risolverlo 3) Stabilire la
Informatica. Esistono varie definizioni: Scienza dei calcolatori elettronici (Computer Science) Scienza dell informazione
Informatica Esistono varie definizioni: Scienza dei calcolatori elettronici (Computer Science) Scienza dell informazione Scienza della rappresentazione, memorizzazione, ed elaborazione dell informazione.
LA METAFORA DELL UFFICIO
LA METAFORA DELL UFFICIO Lavagna di lavoro Lavagna di programma Sportello utenti Impiegato Capo Ufficio LAVAGNA DI LAVORO Chiamiamo variabili le posizioni sulla lavagna, identificate ognuna da un nome
LA METAFORA DELL UFFICIO
LA METAFORA DELL UFFICIO Lavagna di lavoro Lavagna di programma Sportello utenti Impiegato Capo Ufficio LAVAGNA DI LAVORO Chiamiamo variabili le posizioni sulla lavagna, identificate ognuna da un nome
Informatica Generale Andrea Corradini Gli algoritmi e la risoluzione di problemi
Informatica Generale Andrea Corradini 12 - Gli algoritmi e la risoluzione di problemi Sommario Che significa risolvere un problema? Algoritmi e programmi Rappresentazione di algoritmi Lo pseudocodice Primitive
1 Esercizi in pseudocodice
Questa dispensa propone esercizi sulla scrittura di algoritmi in un linguaggio semiformale, utile all acquisizione delle abilità essenziali per implementare algoritmi in qualsiasi linguaggio di programmazione.
Concetti Introduttivi. Il Computer
Concetti Introduttivi Il Computer Introduzione Informazione Notizia, dato o elemento che consente di avere conoscenza più o meno esatta di fatti, situazioni, modi di essere Messaggio Tutto ciò che porta
Lez. 8 La Programmazione. Prof. Pasquale De Michele (Gruppo 2) e Raffaele Farina (Gruppo 1) 1
Lez. 8 La Programmazione Prof. Pasquale De Michele (Gruppo 2) e Raffaele Farina (Gruppo 1) 1 Dott. Pasquale De Michele Dott. Raffaele Farina Dipartimento di Matematica e Applicazioni Università di Napoli
Lez. 5 La Programmazione. Prof. Salvatore CUOMO
Lez. 5 La Programmazione Prof. Salvatore CUOMO 1 2 Programma di utilità: Bootstrap All accensione dell elaboratore (Bootsrap), parte l esecuzione del BIOS (Basic Input Output System), un programma residente
Università degli Studi di Verona. Algoritmie Diagrammidiflusso. Gennaio Sergio Marin Vargas. Dipartimento di Biotecnologie
Università degli Studi di Verona Dipartimento di Biotecnologie Laurea in Biotecnologie Corso di Informatica2014/2015 Algoritmie Diagrammidiflusso Gennaio 2015 - Sergio Marin Vargas Problemi e soluzioni
Diagramma a blocchi per la selezione, in un mazzo di chiavi, di quella che apre un lucchetto
Diagramma a blocchi per la selezione, in un mazzo di chiavi, di quella che apre un lucchetto 14 1. Dato un numero dire se è positivo o negativo 2. e se il numero fosse nullo? 3. Eseguire il prodotto tra
Diagrammi a blocchi 1
Diagrammi a blocchi 1 Sommario Diagrammi di flusso, o a blocchi." Analisi strutturata." Esercizi. 2 Diagrammi a blocchi È un linguaggio formale di tipo grafico per rappresentare gli algoritmi." Attraverso
Cosa si intende con stato
Il concetto di stato Cosa si intende con stato I una particolare configurazione delle informazioni di una macchina, che in qualche modo memorizza le condizioni in cui si trova, e che cambia nel tempo passando
Introduzione alla programmazione Algoritmi e diagrammi di flusso. Sviluppo del software
Introduzione alla programmazione Algoritmi e diagrammi di flusso F. Corno, A. Lioy, M. Rebaudengo Sviluppo del software problema idea (soluzione) algoritmo (soluzione formale) programma (traduzione dell
Dal problema a un programma comprensibile dal calcolatore. Il Progetto degli Algoritmi. Dall analisi del problema all esecuzione
Il Progetto degli Algoritmi Fondamenti di Informatica A Ingegneria Gestionale Università degli Studi di Brescia Docente: Prof. Alfonso Gerevini Dal problema a un programma comprensibile dal calcolatore
CONCETTI FONDAMENTALI
CONCETTI FONDAMENTALI Algoritmo Procedura di trasformazione di un insieme di dati iniziali in un insieme di risultati finali mediante una sequenza di istruzioni. Linguaggio di programmazione Programma
A lezione sono stati presentati i seguenti passi per risolvere un problema:
Calcolo delle radici di un polinomio Problema: Dati i coefficienti a,b,c di un polinomio di 2 grado della forma: ax^2 + bx + c = 0, calcolare le radici. A lezione sono stati presentati i seguenti passi
Fondamenti di Informatica. Definizione di Algoritmo. Algoritmo Euclideo. Prof.V.L.Plantamura Informatica e Comunicazione Digitale a.a.
Fondamenti di Informatica Prof.V.L.Plantamura Informatica e Comunicazione Digitale a.a. 006-007 Definizione di Algoritmo Def.: Per Algoritmo si intende un elenco di istruzioni che specificano una serie
Rappresentazione con i diagrammi di flusso (Flow - chart)
Rappresentazione con i diagrammi di flusso (Flow - chart) Questo tipo di rappresentazione grafica degli algoritmi, sviluppato negli anni 50, utilizza una serie di simboli grafici dal contenuto evocativo
Introduzione alla programmazione strutturata
FONDAMENTI DI INFORMATICA Prof. PIER LUCA MONTESSORO Prof. ELIO TOPPANO Facoltà di Ingegneria Università degli Studi di Udine Introduzione alla programmazione strutturata 2001 Pier Luca Montessoro, Elio
Programmazione I. Fondamenti di programmazione. Problemi, Algoritmi, Diagrammi di flusso
Programmazione I Fondamenti di programmazione ( Lezione I ) Problemi, Algoritmi, Diagrammi di flusso Fabrizio Messina [email protected] www.dmi.unict.it/~messina Algoritmo Dato un problema, un algoritmo
Diagrammi a blocchi 1
Diagrammi a blocchi 1 Sommario Diagrammi di flusso, o a blocchi. Analisi strutturata. Esercizi. 2 Diagrammi a blocchi È un linguaggio formale di tipo grafico per rappresentare gli algoritmi. Attraverso
Sistemi Web per il turismo - lezione 3 -
Sistemi Web per il turismo - lezione 3 - Software Si definisce software il complesso di comandi che fanno eseguire al computer delle operazioni. Il termine si contrappone ad hardware, che invece designa
Lezione 8. Soluzione di un problema Problema. Soluzione di un problema. Comprensione del Problema. Analisi. Introduzione agli algoritmi
Lezione 8 Introduzione agli algoritmi Lezione tratta dal libro: D. Sciuto, G. Buonanno, W. Fornaciari, L. Mari Introduzione ai sistemi informatici Seconda Edizione, McGraw-Hill Capitolo 2: La formalizzazione
Linguaggi, Traduttori e le Basi della Programmazione
Corso di Laurea in Ingegneria Civile Politecnico di Bari Sede di Foggia Fondamenti di Informatica Anno Accademico 2011/2012 docente: Prof. Ing. Michele Salvemini Sommario Il Linguaggio I Linguaggi di Linguaggi
Dal Problema all Algoritmo. Prof. Francesco Accarino IIS Altiero Spinelli Sesto San Giovanni
Dal Problema all Algoritmo Prof. Francesco Accarino IIS Altiero Spinelli Sesto San Giovanni Cosa Impareremo Informazioni e codici Definizione e soluzione di un problema Individuazione dei dati Definizione
2. Algoritmi e Programmi
12 2. Algoritmi e Programmi Dato un problema, per arrivare ad un programma che lo risolva dobbiamo: individuare di cosa dispongo: gli input; definire cosa voglio ottenere: gli output; trovare un metodo
PROBLEMI ALGORITMI E PROGRAMMAZIONE
PROBLEMI ALGORITMI E PROGRAMMAZIONE SCIENZE E TECNOLOGIE APPLICATE CLASSE SECONDA D PROGRAMMARE = SPECIFICARE UN PROCEDIMENTO CAPACE DI FAR SVOLGERE AD UNA MACCHINA UNA SERIE ORDINATA DI OPERAZIONI AL
RAPPRESENTAZIONE GLI ALGORITMI NOTAZIONE PER LA RAPPRESENTAZIONE DI UN ALGORITMO
RAPPRESENTAZIONE GLI ALGORITMI NOTAZIONE PER LA RAPPRESENTAZIONE DI UN ALGORITMO Rappresentazione degli algoritmi Problema Algoritmo Algoritmo descritto con una qualche notazione Programma Defne del procedimento
Algoritmi e soluzione di problemi
Algoritmi e soluzione di problemi Dato un problema devo trovare una soluzione. Esempi: effettuare una telefonata calcolare l area di un trapezio L algoritmo è la sequenza di operazioni (istruzioni, azioni)
ALGORITMI E PROGRAMMAZIONE STRUTTURATA. Prof R. Bresolin a.s
ALGORITMI E PROGRAMMAZIONE STRUTTURATA Prof R. Bresolin a.s. 2013-2014 2 Programmazione Calcolatore Elettronico È uno strumento in grado di eseguire insiemi di azioni elementari; Le azioni vengono eseguite
MODULO 07. La soluzione dei problemi mediante gli algoritmi
MODULO 07 La soluzione dei problemi mediante gli algoritmi MODULO 07 Unità didattica 02 Impariamo a fare i diagrammi a blocchi In questa lezione impareremo: come descrivere l algoritmo risolutivo utilizzando
Diagrammi di flusso. Un metodo per rappresentare graficamente gli algoritmi. sotto programma. Input/ Output. Start. predicato Elaborazione Stop
Diagrammi di flusso Un metodo per rappresentare graficamente gli algoritmi. Input/ Output sotto programma Start predicato Elaborazione Stop La programmazione strutturata Un algoritmo è strutturato in blocchi
FONDAMENTI DI INFORMATICA
Fondamenti di Informatica FONDAMENTI DI INFORMATICA Domenico Talia [email protected] A.A. 2002-2003 Facoltà di Ingegneria UNICAL Fondamenti di Informatica - D. Talia - UNICAL 1 Fondamenti di Informatica
Lezione 5. La macchina universale
Lezione 5 Algoritmi Diagrammi di flusso La macchina universale Un elaboratore o computer è una macchina digitale, elettronica, automatica capace di effettuare trasformazioni o elaborazioni su i dati digitale=
ELABORAZIONE DELLE INFORMAZIONI (ALGORITMI E LINGUAGGI DI PROGRAMMAZIONE)
1 LEZIONE 9 ELABORAZIONE DELLE INFORMAZIONI (ALGORITMI E LINGUAGGI DI PROGRAMMAZIONE) Laboratorio di Informatica per l Educazione A. A. 2014/2015 IN SINTESI (ELABORAZIONE) Con i COMPUTER, le macchine diventano
Appunti del corso di Informatica 1 (IN110 Fondamenti) 2 Algoritmi e diagrammi di flusso
Università Roma Tre Dipartimento di Matematica e Fisica Corso di Laurea in Matematica Appunti del corso di Informatica 1 (IN110 Fondamenti) 2 Algoritmi e diagrammi di flusso Marco Liverani ([email protected])
Laboratorio di Programmazione
Laboratorio di Programmazione Laurea in Bioinformatica Docente: Carlo Drioli Web: www.scienze.univr.it/fol/main?ent=oi&id=39990 Programmazione: Dati Strutture di controllo Algoritmi Materiale tratto dai
Teoria dell Informazione
Corso di Laurea Magistrale in Scienze dell Informazione Editoriale, Pubblica e Sociale Teoria dell Informazione Cosa è l informazione L informazione è qualcosa che si possiede e si può dare ad un altro
Sviluppo di programmi
Sviluppo di programmi Per la costruzione di un programma conviene: 1. condurre un analisi del problema da risolvere 2. elaborare un algoritmo della soluzione rappresentato in un linguaggio adatto alla
LABORATORIO DI INFORMATICA
LABORATORIO DI INFORMATICA Corso di laurea in Scienze della Formazione Primaria a.a.2014/2015 A cura del Prof. Sergio Miranda 2 LEZIONE N.6 Algoritmi GLI ALGORITMI (1/5) Un algoritmo è una sequenza di
Modulo 1 Concetti di base della Tecnologia dell Informazione
Modulo 1 Concetti di base della Tecnologia dell Informazione 1.0.1.1 1.0.1.2 1.0.1.3 Algoritmi Definizione di algoritmo e sua rappresentazione grafica Per algoritmo si intende un procedimento, che permette
Come ragiona il computer. Problemi e algoritmi
Come ragiona il computer Problemi e algoritmi Il problema Abbiamo un problema quando ci poniamo un obiettivo da raggiungere e per raggiungerlo dobbiamo mettere a punto una strategia Per risolvere il problema
Istruzioni, algoritmi, linguaggi
Istruzioni, algoritmi, linguaggi 1 Algoritmo per il calcolo delle radici reali di un equazione di 2 o grado Data l equazione ax 2 +bx+c=0, quali sono i valori di x per cui l equazione è soddisfatta? 2
INFORMATICA. Strutture iterative
INFORMATICA Strutture iterative Strutture iterative Si dice ciclo (loop) una sequenza di istruzioni che deve essere ripetuta più volte consecutivamente. Si consideri ad esempio il calcolo del fattoriale
Lezione 1. Problemi Algoritmi Programmi
Lezione 1 Problemi Algoritmi Programmi Programmazione I Paolo Valente - 2016/2017 Il problema... della tigella emiliana Avete invitato a cena degli amici stranieri e volete fare provare loro le tigelle
