LA METAFORA DELL UFFICIO
|
|
- Franca Masi
- 7 anni fa
- Visualizzazioni
Transcript
1 LA METAFORA DELL UFFICIO Lavagna di lavoro Lavagna di programma Sportello utenti Impiegato Capo Ufficio
2 LAVAGNA DI LAVORO Chiamiamo variabili le posizioni sulla lavagna, identificate ognuna da un nome distinto, e valore il loro eventuale contenuto
3 SPORTELLO UTENTE Modulo IN: modulo di ricezione di dati dall utente. Certificato OUT: certificato per la comunicazione di risultati all utente. Sia il modulo sia il certificato sono organizzati in posizioni (per un totale rispettivamente MIN e MOUT) di N caselle come la lavagna di lavoro, ma non hanno cornice, in quanto si suppone che le loro posizioni abbiano nomi standard IN-i e OUTj, con i compreso tra 1 e MIN e j compreso tra 1 e MOUT.
4 LAVAGNA DI PROGRAMMA Su questa lavagna viene descritto, secondo un opportuna modalità che vedremo, il compito che l impiegato deve svolgere, in base a una serie di attività elementari che egli è in grado di eseguire. Il compito viene descritto sulla lavagna da un direttore dell ufficio. Un segnalino magnetico, a forma di freccia, da posizionare sulla lavagna magnetica in corrispondenza dell attività elementare che l impiegato sta per svolgere.
5 ATTIVITA ELEMENTARI DELL IMPIEGATO Istruzione di assegnamento: nome valore nome2 nome1 Istruzione di lettura: nome ( LEGGI IN-i ) nome2 ( LEGGI nome1 ) Istruzione di scrittura: ( SCRIVI OUT-i ) nome ( SCRIVI nome2 ) nome1 Operazioni aritmetiche e logiche: nome op1 + op 2 (oppure -, x, /) op1 > op2 (oppure <, =) vera se il valore di op1 è maggiore (minore, uguale) del valore di op2
6 ORGANIZZAZIONE DELLE ATTIVITA : DIAGRAMMI DI FLUSSO Viene descritta dal direttore sulla lavagna di programma utilizzando i diagrammi di flusso. Un diagramma di flusso è una struttura costituita da blocchi connessi da frecce (più formalmente, sono grafi costituiti da nodi e archi orientati che collegano coppie di nodi). Esistono quattro tipi di blocchi: un blocco di inizio, che indica l inizio del programma; è unico in un programma, e può presentare un solo arco uscente e nessuno entrante; un blocco di fine, che denota la fine del programma e quindi non avrà archi uscenti, ma solo uno o più archi entranti; possono essercene più d uno; blocchi funzionali, che contengono un istruzione elementare di tipo aritmetico, di assegnamento, di lettura e scrittura, rappresentata come descritto nel paragrafo precedente; possono avere più archi entranti, ma solo uno uscente; blocchi decisionali: possono contenere una condizione logica che assume i valori vero (V) oppure falso (F); possono avere più archi entranti, e da esso ne escono due, uno denotato con V, e l altro con F.
7 TIPI DI BLOCCHI Blocco di inizio Inizio Istruzione elementare Blocco decisionale Blocco funzionale Fine V Condizione F Blocco di fine
8 ESEMPIO DI DIAGRAMMA DI FLUSSO Start Calcolo di base esp base (LEGGI IN-1) esp (LEGGI IN-2) val 1 esp esp - 1 val val x base NO esp = 0 SI (SCRIVI OUT-1) val Exit
9 ESEMPIO DI ATTIVITA Modulo IN Lavagna di lavoro b a s e Lavagna di programma e v s a p l Start base (LEGGI IN-1) esp (LEGGI IN-2) val 1 esp esp - 1 val val x base NO esp = 0 SI (SCRIVI OUT-1) val Modulo OUT Exit 6 4
10 PROBLEMI, ISTANZE Un problema è un insieme di domande omogenee. Esempio: calcolare la radice quadrata intera di un numero naturale. Per descrivere un problema in modo più preciso si possono evidenziare questi punti usando il concetto di variabile: il problema precedente potrebbe essere formulata con Calcolare la radice quadrata intera di un numero naturale X. Un istanza di un problema è uno specifico esemplare della classe di domande omogenee cioe una specifica domanda. Esempio: calcolare la radice quadrata intera di 27. Un istanza deve specificare il valore delle variabili. La soluzione di un istanza di un problema è la risposta a una domanda.
11 ALGORITMO, LINGUAGGI DI PROGRAMMAZIONE PPROGRAMMI Un algoritmo è un procedimento che permette di rispondere a tutte le istanze di un certo problema. Essendo l algoritmo un concetto astratto, non può essere comunicato dal direttore all ufficio senza un passo di rappresentazione. Il diagramma di flusso è quindi la rappresentazione dell algoritmo in un certo formalismo. Il diagramma di flusso è quindi la rappresentazione dell algoritmo in un certo formalismo. La rappresentazione è detta programma e il formalismo linguaggio di programmazione. Un calcolatore è quindi un esecutore universale di algoritmi: può eseguire qualsiasi algoritmo gli venga fornito, purché rappresentato nel formalismo (programma) che il calcolatore sa comprendere.
12 PROPRIETA DI UN ALGORITMO Finito: Un algoritmo deve essere composto da un numero finito di istruzioni. Non ambiguo: ogni istruzione deve essere non ambigua, interpretabile in un unico modo. Inoltre anche il modo di combinare le istruzioni deve essere non ambiguo. Deterministico: con uguali dati di ingresso e a parita di condizioni di partenza, deve produrre gli stessi risultati.
13 Risoluzione di un problema Esigenze Utente Analisi Problema MCD(N,M) Progettazione MCD(132,24) Istanza Algoritmo ALGORITMO DI EUCLIDE Programmazione 132,24 Dati di input Programma main() { } Esecuzione Calcolatore Risultati 12
14 Come affrontare un problema Analisi Dall esigenze dell utente e dai dati di ingresso, capire cosa ci si aspetta per la soluzione del problema (dati di uscita). Progettazione Scomporre il problema in sottoproblemi piu semplici fino a giungere ad operazioni elementari (programmazione top-down). Trovare l algoritmo risolvente. Programmazione Convertire l algoritmo nel linguaggio di programmazione scelto. Esecuzione Con i dati di ingresso, verificare il buon funzionamento del programma
15 Errori Errori di analisi Sono dovuti all errata interpretazione delle esigenze dell utente. Normalmente comportano il rifacimento dell intero processo Errori di progettazione Portano all errata scrittura dell algoritmo. Normalmente si rivelano all esecuzione di istanze particolari e sono molto difficili da individuare Errori di programmazione Dovuti ad una errata implementazione dell algoritmo. Statici: errata scrittura del programma (di sintassi e/o grammaticali) Dinamici: si manifestano solo all esecuzione del programma Errori di esecuzione Molto rari, talvolta dovuti a malfunzionamendi hardware/software del calcolatore
16 DIAGRAMMI DI FLUSSO STRUTTURATI (DFS) Un diagramma di flusso strutturato (DFS) è un Diagramma di Flusso (DF) composto con apposita regola in cui il BSG (Blocco Strutturato Generico) può essere a sua volta una struttura di controllo o un blocco funzionale semplice, e ha un solo arco entrante. Quando la programmazione fa uso sistematico di queste strutture, si parla di programmazione struttutata. START DFS STOP Le strutture di controllo sono a loro volta costituite da tre possibili costrutti: Sequenza Selezione (doppia o semplice) Iterazione
17 Strutture base SEQUENZA F condizione V DFS DFS DFS DFS ITERAZIONE CON CONTROLLO INIZIALE ITERAZIONE CON CONTROLLO FINALE SELEZIONE condizione V F DFS DFS V condizione F
18 Es: struttura di sequenza Inizio Istruzione1 Istruzione2 Fine Pseudocodifica: Inizio Istruzione1; Istruzione2; Fine
19 Es: struttura di selezione Pseudocodifica: V condizione F Selezione doppia SE condizione Istruzione1 Istruzione2 ALLORA Istruzione1 ALTRIMENTI Istruzione2 V condizione F Selezione semplice SE condizione Istruzione1 ALLORA Istruzione1
20 Es: struttura di iterazione condizione V Corpo iterazione F Pseudocodifica: Ciclo di while MENTRE condizione ESEGUI Corpo iterazione* V Corpo iterazione condizione F Ciclo di repeat RIPETI Corpo iterazione* FINCHE condizione *NB: il corpo dell iterazione deve modificare la condizione del blocco decisionale
21 Alcune strutture derivate SELEZIONE MULTIPLA switch altri P1 P2 P3 errore NEL CASO CHE switch VALGA 1: ESEGUI P1; 2: ESEGUI P2; 3: ESEGUI P3; ALTRIMENTI: ESEGUI errore
22 Alcune strutture derivate CICLO CON CONTATORE FOR cont = N1 TO N2, incr P2 P1 PER cont CHE VA DAL VALORE N1 A N2 INCREMENTANDO DI incr 1: ESEGUI P1;
23 EQUIVALENZA FRA DF Equivalenza debole: due diagrammi di flusso X e Y si dicono debolmente equivalenti se e solo se, per ogni possibile dato d ingresso, le funzioni da essi computate assumono lo stesso valore o sono indefinite. Equivalenza forte: due diagrammi di flusso X e Y si dicono fortemente equivalenti se e solo se, per ogni possibile dato d ingresso, le sequenze di computazione generate sono uguali. Teorema di Böhm-Jacopini Per ogni diagramma di flusso esiste un diagramma di flusso strutturato debolmente equivalente. Ciò significa che con i DFS possiamo computare tutte le funzioni computabili, ma abbiamo perso in potenza espressiva, non potendo più realizzare qualsiasi algoritmo. Infatti: non per tutti i DF esiste un DFS fortemente equivalente. La soluzione è costituita da un linguaggio di diagrammi di flusso, chiamato DFBF (Diagrammi di Flusso Ben Formati). Teorema di Peterson-Kasami-Tokura Per ogni diagramma di flusso esiste un diagramma di flusso ben formato fortemente equivalente
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
DettagliLA METAFORA DELL UFFICIO LAVAGNA DI PROGRAMMA SPORTELLO UTENTE LAVAGNA DI LAVORO
LA METAORA DELL UICIO LAAGNA DI LAORO Lavagna di lavoro Lavagna di programma Sportello utenti Capo Ufficio Impiegato Chiamiamo variabili le posizioni sulla lavagna, identificate ognuna da un nome distinto,
DettagliIntroduzione agli algoritmi
Introduzione agli algoritmi Consideriamo un lettore di CD musicali portatile Questo ha a disposizione: pulsanti di controllo display che indica se il lettore è in funzione il brano che è attualmente riprodotto
DettagliLAVAGNA DI PROGRAMMA SPORTELLO UTENTE LAVAGNA DI LAVORO
LAAGNA DI LAORO Chiamiamo variabili le posizioni sulla lavagna, identificate ognuna da un nome distinto, e valore il loro eventuale contenuto SPORTELLO UTENTE LAAGNA DI PROGRAMMA Modulo IN: modulo di ricezione
DettagliProblemi, 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
DettagliIl 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
DettagliPROGRAMMAZIONE (Corso A)
PROGRAMMAZIONE (Corso A) http://www.di.uniba.it/~proga/ Argomenti della lezione Diagrammi di flusso - Flow chart Diagrammi struturati - Sequenza, selezione, iterazione Teorema di Boehm-Jacopini Flow-chart
DettagliIl 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
DettagliUniversità 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
DettagliCorso 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
DettagliElaboratore 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 rre altri oggetti
DettagliIntroduzione 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
DettagliEsempio: Problema 2 Il Progetto degli Algoritmi (Il linguaggio degli schemi a blocchi: seconda parte)
Esempio: Problema 2 Il Progetto degli Algoritmi (Il linguaggio degli schemi a blocchi: sea parte) ondamenti di Informatica A Ingegneria Gestionale Università degli Studi di Brescia Docente: Prof. Alfonso
DettagliUnità di apprendimento 6. Dal problema al programma
Unità di apprendimento 6 Dal problema al programma Unità di apprendimento 6 Lezione 2 Impariamo a fare i diagrammi a blocchi In questa lezione impareremo: come descrivere l algoritmo risolutivo utilizzando
DettagliAlgoritmi 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)
DettagliInformatica ALGORITMI E LINGUAGGI DI PROGRAMMAZIONE. Francesco Tura. F. Tura
Informatica ALGORITMI E LINGUAGGI DI PROGRAMMAZIONE Francesco Tura francesco.tura@unibo.it 1 Lo strumento dell informatico: ELABORATORE ELETTRONICO [= calcolatore = computer] Macchina multifunzionale Macchina
DettagliDiagrammi 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
DettagliMODULO 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
DettagliDISPENSE DI PROGRAMMAZIONE
DISPENSE DI PROGRAMMAZIONE Modulo 1 Risolvere problemi con l elaboratore: dal problema all algoritmo (Parte II) I Linguaggi di descrizione degli algoritmi - Notazioni grafiche (parte 1) Il linguaggio dei
DettagliAltrimenti, 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
DettagliIntroduzione 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
DettagliDal 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
DettagliCorso 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
DettagliPROBLEMI 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
DettagliSviluppo 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
DettagliFormalismi per la descrizione di algoritmi
Formalismi per la descrizione di algoritmi Per descrivere in passi di un algoritmo bisogna essere precisi e non ambigui Il linguaggio naturale degli esseri umani si presta a interpret non univoche Si usano
Dettagli1 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.
DettagliDiagrammi 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
DettagliAppunti 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 (liverani@mat.uniroma3.it)
DettagliLaboratorio 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
DettagliLaboratorio di Informatica. Esercitazione su algoritmi e diagrammi di flusso
Laboratorio di Informatica Esercitazione su algoritmi e diagrammi di flusso Algoritmi, programmi e dati Algoritmo = insieme di istruzioni che indicano come svolgere operazioni complesse su dei dati attraverso
DettagliInformatica. Informatica. Problema - soluzione. Algoritmi, dati e programmi. Introduzione ai concetti di: Distinguiamo tra: problema
Algoritmi, dati e programmi 1 Algoritmi, dati e programmi 2 Informatica Informatica informatica informazione mezzi mezzi fisici procedure Algoritmi, dati e programmi rappresentazione dell informazione
DettagliDispensa di Informatica II.1
ALGORITMI La dispensa di seguito proposta si pone come tutorial per poter porre le basi per la realizzazione di algoritmi che poi potranno eventualmente essere sviluppati in moduli software con metodologia
DettagliPROGRAMMAZIONE STRUTTURATA
PROGRAMMAZIONE STRUTTURATA Programmazione strutturata 2 La programmazione strutturata nasce come proposta per regolamentare e standardizzare le metodologie di programmazione (Dijkstra, 1965) Obiettivo:
DettagliCORSO 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ì
DettagliProblema: 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
DettagliAlgoritmi. Pagina 1 di 5
Algoritmi Il termine algoritmo proviene dalla matematica e deriva dal nome di in algebrista arabo del IX secolo di nome Al-Khuwarizmi e sta ad indicare un procedimento basato su un numero finito operazioni
DettagliDal 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
DettagliProgrammazione a blocchi. Algobuild Prof. Sergio Roselli
Programmazione a blocchi Algobuild Prof. Sergio Roselli Blocchi base Inizio programma I Fine programma F Input IN A Output Esecuzione OUT A A = 5 + 1 L interprete Algobuild Algobuildpermette di trascrivere
DettagliRappresentazione 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
DettagliDiagrammi 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
DettagliCos è la programmazione?
La programmazione Cos è la programmazione? Termine usato per indicare le attività che trasformano l esigenza di risolvere un Problema in un Programma, inteso come sistema informatico capace di risolvere
DettagliLa rappresentazione dell algoritmo Diagrammi di flusso
La rappresentazione dell algoritmo Diagrammi di flusso Forme di rappresentazione Ritornando al problema dell addizione di due numeri interi, la maestra non fa altro che codificare l algoritmo utilizzando
DettagliINFORMATICA. 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
DettagliInformatica. 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
DettagliProgrammazione strutturata
Corso di Fondamenti di Informatica Corso di Laurea in Ingegneria Gestionale (L-Z) 3. (testo di riferimento: Bellini-Guidi) Ing. Michele Ruta 1di 29 Linguaggi di programmazione Un programma è un algoritmo
Dettagliin 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
DettagliPROBLEMI 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.
DettagliLABORATORIO 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
DettagliLezione 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
DettagliLinguaggi di programmazione - Principi e paradigmi 2/ed Maurizio Gabbrielli, Simone Martini Copyright The McGraw-Hill Companies srl
Approfondimento 2.1 Non è questo il testo dove trattare esaurientemente queste tecniche semantiche. Ci accontenteremo di dare un semplice esempio delle tecniche basate sui sistemi di transizione per dare
DettagliDiagramma 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
DettagliProgettazione di Algoritmi
Corso di laurea in Informatica Prova scritta del: Progettazione di Algoritmi 29/01/2016 Prof. De Prisco Inserire i propri dati nell apposito spazio. Non voltare la finché non sarà dato il via. Dal via
DettagliCosa è l Informatica?
Cosa è l Informatica? Scienza degli elaboratori elettronici (Computer Science) Scienza dell informazione Scienza della rappresentazione, memorizzazione, elaborazione e trasmissione dell informazione Elaboratore
DettagliALGORITMI. 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
DettagliRAPPRESENTAZIONE 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
DettagliDescrizione di un algoritmo
Descrizione di un algoritmo Un algoritmo descrive due tipi fondamentali di oper: calcoli ottenibili tramite le oper primitive su tipi di dato (valutazione di espressioni) che consistono nella modifica
DettagliScienza dei calcolatori elettronici (Computer Science) Scienza dell informazione. è uno strumento in grado di eseguire insiemi di azioni elementari.
Esistono varie definizioni: Informatica Scienza dei calcolatori elettronici (Computer Science) Scienza dell informazione Definizione proposta: Scienza della rappresentazione e dell elaborazione dell informazione.
DettagliCos è un algoritmo. Si dice algoritmo la descrizione di un metodo di soluzione di un problema che sia
Programmazione Un programma descrive al computer, in estremo dettaglio, la sequenza di passi necessari a svolgere un particolare compito L attività di progettare e realizzare un programma è detta programmazione
DettagliCapitolo 3 Elaborazione e Strutturazione dell Informazione. (Introduzione ai Sistemi Informatici Sciuto et alii)
Capitolo 3 Elaborazione e Strutturazione dell Informazione (Introduzione ai Sistemi Informatici Sciuto et alii) Il calcolatore come strumento per gestire informazione acquisire dati IN elaborare archiviare
DettagliRisolvere 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
DettagliCalcolo numerico e programmazione Risoluzione di problemi
Calcolo numerico e programmazione Risoluzione di problemi Tullio Facchinetti 16 aprile 2012 14:37 http://robot.unipv.it/toolleeo Risoluzione di problemi per problema si intende
DettagliAlgoritmi e Diagrammi di flusso
Algoritmi e Diagrammi di flusso Prof. Orazio Mirabella SOMMARIO La soluzione di un problema Cos è un algoritmo Esempi di problemi algoritmici Struttura di selezione Struttura di iterazione Esempi di algoritmi
DettagliSviluppo di programmi. E ora, finalmente. Si comincia! 1. Analizzare il problema. 2. Progettare una soluzione (1) E necessario capire:
Sviluppo di programmi Per scrivere un programma C corretto bisogna: E ora, finalmente Si comincia! DD Cap. pp.4974 Analizzare il problema (input, output, casi estremali) 2. Progettare una soluzione (algoritmo)
DettagliAnalisi e Programmazione
Algoritmi 1 Analisi e Programmazione I Calcolatori Elettronici si differenziano da altri tipi di macchine per il fatto che possono essere predisposti alla risoluzione di problemi di diversa natura. A tale
DettagliAlgoritmi 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
DettagliLezione 7: La Formalizzazione degli Algoritmi - Strutture di Controllo e Selettive La Programmazione Strutturata (3 p) Giovedì 21 Ottobre 2010
Università di Salerno Corso di FONDAMENTI DI INFORMATICA Corso di Laurea Ingegneria Corso B Docente : Ing. Anno Accademico 2010-2011 Lezione 7: La Formalizzazione degli Algoritmi - Strutture di Controllo
DettagliInformatica 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
Dettaglin Risolvere un problema significa individuare un procedimento che permetta di arrivare al risultato partendo dai dati
Algoritmi 1 Cos è n Risolvere un problema significa individuare un procedimento che permetta di arrivare al risultato partendo dai dati n Un algoritmo è un metodo per la soluzione di un problema adatto
DettagliLez. 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
DettagliRappresentazione degli algoritmi
25 febbraio 2015 00:39 http://robot.unipv.it/toolleeo per rappresentare (descrivere) un algoritmo non è possibile utilizzare il linguaggio naturale in quanto questo può presentare ambiguità e causare false
DettagliAlgoritmi e Linguaggi
Algoritmi e Linguaggi Programmi e linguaggi Un calcolatore è solo un esecutore rapidissimo di istruzioni Un programma è un insieme di istruzioni codificate in un opportuno linguaggio 2 / 21 Linguaggi e
DettagliUNIVERSITÀ DEGLI STUDI DI PAVIA FACOLTÀ DI INGEGNERIA. Introduzione alla programmazione
UNIVERSITÀ DEGLI STUDI DI PAVIA FACOLTÀ DI INGEGNERIA Introduzione alla programmazione Riferimenti Emanuele Goldoni Laboratorio Reti (MN) Tel. 0376-286234 E-mail: emanuele.goldoni@unipv.it Slide sul sito
DettagliAUTOMA A STATI FINITI
Gli Automi Un Automa è un dispositivo, o un suo modello in forma di macchina sequenziale, creato per eseguire un particolare compito, che può trovarsi in diverse configurazioni più o meno complesse caratterizzate
DettagliDI D AGRA R MM M I M A BLOCC C H C I TEORI R A E D D E SERC R I C ZI 1 1
DIAGRAMMI A BLOCCHI TEORIA ED ESERCIZI 1 1 Il linguaggio dei diagrammi a blocchi è un possibile formalismo per la descrizione di algoritmi Il diagramma a blocchi, o flowchart, è una rappresentazione grafica
DettagliProgettazione di Algoritmi
Corso di laurea in Informatica Prova scritta del: Progettazione di Algoritmi 0/06/06 Prof. De Prisco Inserire i propri dati nell apposito spazio. Non voltare la finché non sarà dato il via. Dal via avrai
DettagliTeoria 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
DettagliISTITUTO TECNICO INDUSTRIALE STATALE "G. MARCONI" Via Milano n PONTEDERA (PI) DIPARTIMENTO: Informatica
SETTEMBRE Seconda Liceo SA PROGRAMMAZIONE DI DIPARTIMENTO COORDINATA TEMPORALMENTE DISCIPLINA: Monte ore annuo 66 Libro di Testo E-book dal sito www.matematicamente.it. Pettarin ECDL Appunti forniti dal
Dettagliprint((math.floor(1345/10)%10); print (Math.floor(1345/100)%10); Le funzioni in JavaScript
Funzioni Funzioni predefinite della libreria matematica Funzioni disponibili: Math.sqrt(x) radice quadrata Math.log(x) logaritmo naturale in base e di x Math.abs(x) valore assoluto di x Math.ceil(x) arrotonda
DettagliCosa 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
DettagliCorso di Programmazione Problemi ed Algoritmi. Problema. Problem Solving. Dott. Pasquale Lops
Materiale didattico preparato dal dott. Stefano erilli orso di Programmazione Problemi ed lgoritmi Dott. Pasquale Lops lops@di.uniba.it orso di Programmazione - DIB 1/59 Problema Espressione da valutare
Dettagli= < < < < < Matematica 1
NUMERI NATURALI N I numeri naturali sono: 0,1,2,3,4,5,6,7,8,9,10,11,12,13,... L insieme dei numeri naturali è indicato con la lettera. Si ha cioè: N= 0,1,2,3,4,5,6,7,.... L insieme dei naturali privato
DettagliAlgoritmi e diagrammi di flusso versione biennio
Algoritmi e diagrammi di flusso versione biennio Pablo Genova gallini.genova@gmail.com I. I. S. Angelo Omodeo Mortara Indirizzo Tecnico-Economico A. S. 2015 2016 Cos'è un algoritmo? Algoritmo: procedimento
DettagliStrutture dati e loro organizzazione. Gabriella Trucco
Strutture dati e loro organizzazione Gabriella Trucco Introduzione I linguaggi di programmazione di alto livello consentono di far riferimento a posizioni nella memoria principale tramite nomi descrittivi
DettagliAlgoritmi e diagrammi di flusso
Algoritmi e diagrammi di flusso Pablo Genova gallini.genova@gmail.com I. I. S. Angelo Omodeo Mortara Indirizzo Tecnico-Economico A. S. 2015 2016 Cos'è un algoritmo? Algoritmo: procedimento che risolve
Dettagli2. 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
DettagliINFORMATICA. 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
Dettagli3. Indicare cosa sta a significare la figura geometrica del rombo in un diagramma a blocchi
0.1.1.1 Definire un algoritmo 1. Con il termine algoritmo si intende: a) il software utilizzato in un calcolatore b) l elenco finito di istruzioni necessario per risolvere un problema c) un elaboratore
DettagliFondamenti 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
DettagliFondamenti di Algoritmi
Fondamenti di Algoritmi Corsi di Informatica Grafica Prof. Manuel Roveri Dipartimento di Elettronica e Informazione roveri@elet.polimi.it Indice Algoritmi: Definizione Diagrammi di Flusso Esempi ed esercizi
DettagliCome 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
DettagliModulo 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
DettagliFasi della programmazione. Gabriella Trucco
Fasi della programmazione Gabriella Trucco Algoritmi Uso di algoritmi nella vita quotidiana Algoritmo: sequenza di passi che, se intrapresa da un esecutore, permette di ottenere i risultati attesi a partire
DettagliRappresentazione degli algoritmi
Rappresentazione degli algoritmi Rappresentazione degli algoritmi Problema Algoritmo Algoritmo descritto con una qualche notazione Programma Definizione del procedimento per arrivare alla soluzione Rappresentazione
DettagliFondamenti di Informatica
Fondamenti di Informatica AlgoBuild: Strutture selettive, iterative ed array Prof. Arcangelo Castiglione A.A. 2016/17 AlgoBuild : Strutture iterative e selettive OUTLINE Struttura selettiva Esempi Struttura
DettagliAnalisi e programmazione 1
Informatica Secondo l ACM l informatica è lo studio sistematico degli algoritmi che descrivono e trasformano l informazione: la loro teoria, analisi progetto efficienza realizzazione ed applicazione 1
DettagliMacchine di Turing. Francesco Paoli. Istituzioni di logica, Francesco Paoli (Istituzioni di logica, ) Macchine di Turing 1 / 29
Macchine di Turing Francesco Paoli Istituzioni di logica, 2016-17 Francesco Paoli (Istituzioni di logica, 2016-17) Macchine di Turing 1 / 29 Alan M. Turing (1912-1954) Francesco Paoli (Istituzioni di logica,
DettagliInformatica Generale 1 - Esercitazioni Flowgraph, algebra di Boole e calcolo binario
Informatica Generale 1 - Esercitazioni Flowgraph, algebra di Boole e calcolo binario Daniele Pighin pighin@fbk.eu FBK Via Sommarive, 18 I-38050 Trento, Italy February 27, 2008 Outline 1 Algebra di Boole
DettagliINFORMATICA. 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
Dettagli