DIFFUSIONE APPLICAZIONI INFORMATICHE
|
|
- Filippo Cipriani
- 7 anni fa
- Visualizzazioni
Transcript
1 def (ACM) L informatica è lo studio sistematico degli algoritmi che descrivono e trasformano l informazione: la loro teoria, analisi, progetto, efficienza, realizzazione e applicazione. dati DIFFUSIONE APPLICAZIONI INFORMATICHE - in quasi tutte le attività occorre gestire qualche genere di informazione - l elaborazione dell informazione avviene in maniera sistematica e rigorosa, e pertanto può essere automatizzata - l informazione viene codificata in numeri 12/12/
2 Un sistema è una unità formata da un insieme di elementi tra loro interagenti che, al verificarsi di un dato evento (input) proveniente dall ambiente esterno, produce una risposta (output) definita. Tale risposta dipende anche dallo stato in cui si trova il sistema in quell istante, infatti il sistema è dotato di memoria e la sua storia è conservata nel suo stato. 12/12/
3 La rappresentazione di un sistema o di un processo avviene tramite l elaborazione di un modello: schema teorico elaborato in molte discipline per rappresentare gli elementi fondamentali di fenomeni o enti. Esempio di modelli: -modelli simbolici o matematici: danno una rappresentazione astratta della realtà cui si riferiscono, mediante un insieme di equazioni e/o disequazioni che legano le grandezze coinvolte - modelli analogici: danno una rappresentazione fedele della realtà, tipici sono i modelli in scala ridotta, che riproducono qualitativamente un sistema pur riducendone proporzionalmente 12/12/
4 Un automa è un sistema dinamico, invariante, discreto nell avanzamento e nelle interazioni. -dinamico: -invariante: evolve nel tempo passando da uno stato all altro in funzione dei segnali d ingresso e dello stato precedente; a parità di condizioni iniziali il comportamento del sistema è sempre lo stesso; - discreto: le variabili d ingresso, di stato, d uscita, possono assumere solo valori discreti. In termini formali si definisce automa a stati finiti un sistema A = {I, U, S, f, g }, dove I = {i 1, i 2, i n } insieme finito dei possibili ingressi U = {u 1, u 2,, u m } insieme finito delle possibili uscite S = {s 1, s 2,, s h } insieme finito degli stati f = I S U funzione delle uscite, che collega l uscita al valore attuale dell ingresso e dello stato, u t =f (s t, i t ) g = I S S funzione di transizione degli stati interni successivi, che collega lo stato nell istante successivo al valore attuale dell ingresso e dello stato, s t+1 =g(s t, i t ) 12/12/
5 Le funzioni f (delle uscite) e g (di transizione allo stato successivo) possono essere rappresentate mediante: 1. Tabelle di transizione, tabelle a doppia entrata in cui il numero delle righe è pari al numero degli stati e quello delle colonne è pari al numero degli ingressi. 2. Grafi di transizione, costituiti da cerchi (nodi) in numero pari agli stati, da ciascuno dei quali partono tanti archi quanti sono gli ingressi. Se le uscite sono riportate sugli archi sotto gli ingressi si dice automa di Mealy, se le uscite sono riportate all interno dei nodi sotto lo stato si dice automa di Moore. 12/12/
6 Esempio: ascensore Un ascensore di un palazzo a due piani accetta la richiesta del piano di destinazione (terra, 1, 2) e restituisce lo spostamento desiderato (su, giù, fermo). Si tratta di un automa in cui: S={Pt, 1P, 2P}, Pt= p. terra, 1P= p. primo, 2P= p. secondo; I={T, 1, 2} possibilità offerte dalla pulsantiera; U={Su, Giù, Fermo} spostamenti dell ascensore. Tabella di transizione relativa all automa dell esempio: 12/12/
7 Grafo di Moore relativo all ascensore 12/12/
8 Macchina astratta di Turing testina cella nastro a k x i a r L X P Memoria interna x j P t 12/12/
9 La macchina di Turing è costituita da un nastro illimitato, suddiviso in celle; In ciascuna cella può essere memorizzato uno dei simboli di un alfabeto esterno finito {a 0,a 1,a 2, a 3, a 4,..., a N } che comprende un particolare simbolo a 0, da considerarsi come carattere bianco. Una testina può leggere il contenuto di una cella alla volta; La testina può anche scrivere nella cella corrente uno dei simboli dell alfabeto, sostituendolo ad ogni eventuale simbolo preesistente; Un meccanismo di posizionamento permette alla testina di spostarsi: (D) alla destra di quella attuale, (S) alla sinistra di quella attuale, (F) Rimanere ferma su quella attuale. 12/12/
10 La macchina può trovarsi in uno degli stati appartenenti ad un insieme finito {x 1,x 2, x 3, x 4,..., x m } La memoria interna è costituita da due elementi (X) e (P): (X) memorizza lo stato in cui la macchina viene a trovarsi, (P) memorizza la posizione della testina, e riconosce i simboli D, S, F, x 1, x 2, x 3, x 4,..., x m La memoria esterna è costituita dal nastro e il contenuto varia continuamente. 12/12/
11 Unità logica (L) a due ingressi: 1. Il simbolo a k letto sulla cella in osservazione; 2. Lo stato x i prelevato dalla memoria (X); e tre uscite 1. Il simbolo a r da scrivere sulla cella in osservazione; 2. Lo stato x j al quale portare la macchina; 3. Il posizionamento p t {D, S, F} della testina 12/12/
12 Per il funzionamento della macchina occorre conoscere per una coppia (il simbolo a k letto; lo stato x i della macchina) la tripla (il simbolo da scrivere a r ; Il posizionamento p t ;lo stato x j ) In sostanza le informazioni ( p t ; x j ) forniscono le informazioni necessarie ad individuare cosa deve fare la macchina nel passo successivo, cioe l istruzione da eseguire. 12/12/
13 La successione delle istruzioni, cioe il programma, puo essere rappresentata mediante una matrice di transizione costituita da tante righe quanti sono i simboli dell alfabeto e da tante colonne quanti sono gli stati. a 0 a 1 x 1 x 2 x i x m Alla coppia ( a k ; x i ) a k a r p t x j vengono assegnati: il carattere da scrivere, il posizionamento successivo della testina, lo stato successivo della macchina) a N 12/12/
14 Assegnata una qualsiasi coppia di valori di verità, calcolare la funzione logica e AND. Alfabeto esterno: Stati: B carattere bianco, per indicare una cella vuota; 0 carattere con cui viene indicato lo stato logico falso; 1 carattere con cui viene indicato lo stato logico vero; * carattere per individuare la cella in cui andrà memorizzato il risultato. x 0 stato iniziale. La testina è posizionata alla sinistra delle tre celle consecutive contenenti i dati. x A è uno stato in cui l ultimo carattere letto e 0 x B è uno stato in cui l ultimo carattere letto e 1 x C è uno stato in cui siano stati lette le coppie (0,0) o (0,1) o (1,0); x D è uno stato in cui sia stata letta la coppia di caratteri (1,1); 12/12/ A stato di arresto dell elaborazione.
15 ALGORITMO Se lo stato è x 0 e viene letto il carattere B allora lascia nella cella il carattere B, resta nello stato x 0, spostati di una cella a destra: istruzione (x 0,B, B,x 0,D) (1) Se viene letto il carattere 0 allora lascia nella cella il carattere 0, passa allo stato x A, spostati di una cella a destra: istruzione (x 0,0, 0,x A,D) (2) Se viene letto il carattere 1 allora lascia nella cella il carattere 1, passa allo stato x B, spostati di una cella a destra: istruzione (x 0,1, 1,x B,D) (3) Se i dati del prolema portano all esecuzione della (2), avremo che qualunque sia il carattere successivo letto, il sistema dovra passare allo stato x c : istruzione (x A,0, 0,x C,D) (4) istruzione (x A,1, 1,x C,D) (5) (6) Istruzione (x B,0, 0,x C,D) (7) Istruzione (x B,1, 1,x D,D) 12/12/ (8) Istruzione (x C,*, 0,A,D) (9) Istruzione (x D,*, 1,A,D)
16 Se i dati del problema conducono all esecuzione della (3), si dovra eseguire una delle due istruzioni: istruzione (x B,0, 0,x C,D) (6) istruzione (x B,1, 1,x D,D) (7) A questo punto la testina incontrera il carattere * che andra sostituito con il carattere 0 se il sistema si trova nello stato x C o con il carattere 1 se il sistema si trova nello stato x C : istruzione (x C,*, 0,A,D) (8) istruzione (x D,*, 1,A,D) (9) Un ultima istruzione e necessaria per fermare l elaborazione. istruzione (A,B, B,A,F) (10) 12/12/
17 Matrice di transizione: x 0 x A x B x C x D A B B x 0 D B A F 0 0 x A D 0 x C D 0 x C D 1 1 x B D 1 x C D 1 x D D * 0 A D 1 A D 0/0/D x A 0/0/D 1/1/D x C */0/D B/B/F x 0 0/0/D A 1/1/D x B 1/1/D x D */1/D 12/12/
18 Informatica? 1996 ACM dieci aree disciplinari dell informatica: 1. Algoritmi e strutture dati 6. Grafica computerizzata 2. Architettura dei calcolatori 7. Interazione uomo-calcolatore 3. Intelligenza artificiale e 8. Sistemi operativi e reti robotica 9. Linguaggi di programmazione 4. Scienze computazionali 10. Ingegneria del software 5. Basi di dati e sistemi per il ritrovamento dell informazione 12/12/
19 ARCHITETTURA DI Von NEUMANN Bus di sistema CPU Memoria I/O I/O I/O esecutore di algoritmi contenitore di informazioni 12/12/
20 CPU Memoria principale Unità di controllo Unità aritmeticologica Registri generali R0 R1 Contatore di programma Registro di stato Rn 12/12/
21 0 Memoria centrale indirizzo byte n-1 1 bit di informazione: 0 1 parole di 1, 2, 4 e 8 byte 12/12/
22 Problema Un problema consta dei seguenti elementi: situazione che pone delle domande cui si devono dare risposte. Risolvere il problema vuol dire uscire da tale situazione I dati, ossia ciò che è noto, che indichiamo col termine input. I risultati, ossia ciò che si deve determinare, che indichiamo col termine output. Le condizioni, che sono in generale le limitazioni cui devono soggiacere i risultati. 12/12/
23 analisi di un problema interpretare il problema definendo gli obiettivi; individuare i dati del problema, costruire un modello (rappresentazione della realtà privata degli aspetti superflui), individuare le risorse dell esecutore; descrivere il procedimento risolutivo individuando le operazioni da compiere sui dati iniziali per ottenere i risultati finali; eseguire nell ordine le operazioni descritte nel processo risolutivo; verificare se i risultati ottenuti rispondono alle finalità del problema. 12/12/
24 a Methodology for Algorihmic Problem Solving (MAPS) Passo 1. Analizzare il problema e sviluppare le specifiche Passo 2. Progettare una soluzione - decomposizione (progettazione top-down) - astrazioni Passo 3. codifica e documentazione Passo 4. testing (in parallelo a passo 3) Passo 5. validazione 12/12/
25 Analisi di un problema 12/12/
26 problema analisi soluzione informale formalizzazione algoritmo programmazione programma (alto livello) esecutore del linguaggio alto livello traduzione soluzione esecutore del linguaggio macchina esecuzione (HW) programma (linguaggio macchina) 12/12/
27 L analisi di un problema, ossia la definizione dell obiettivo da raggiungere, può essere realizzata attraverso processi di affinamento successivo. Si tratta di scomporre un problema complesso in sottoproblemi più semplici, utilizzando la tecnica del topdown: - il problema viene esaminato nelle direttrici generali; - scomposto in sottoproblemi; - di ciascun sottoproblema si determinano le operazioni specifiche; - esso viene scomposto in ulteriori sotto-sottoproblemi, fino a giungere alle operazioni elementari. Tecnica del top-down 12/12/
28 Un algoritmo deve avere cinque caratteristiche: Effettivita : deve essere basato su regole effettive cioe certamente eseguibili in un tempo finito. Finitezza: Definitezza: Ingresso: Uscita: deve essere realizzato in un numero finito di passi; ad ogni passo e definita senza ambiguita la successiva regola da applicare; opera a partire da dati in ingresso; produce dati in uscita. 12/12/
29 Programmare una semplice macchina ATM Passo 1. Analizzare il problema e sviluppare le specifiche Input: password, tipo transazione, importo della transazione... Output: messaggi di errore, saldo, contante. Specifiche di input: password N, tipo={prelievo, deposito} importo R Specifiche di output: ((password<=0 OR password>=100000) AND codice errato ) OR (0<password< AND tipo=deposito AND z R) OR 12/12/
30 Passo 2. Progettare una soluzione algoritmo pseudocodice 1. Richiedere all utente la pw 2. Se la pw non è valida formulare un messaggio di errore e saltare al passo 6 3. Richiedere gli input 3.1 Richiedere all utente il tipo di transazione e l importo 3.2 Richiedere alla banca il saldo 4. Se tipo=deposito aggiungere l importo al saldo 5. Se tipo=prelievo controllare saldo 5.1 Se importo>saldo formulare un messaggio di errore e saltare al passo Se importo<=saldo sottrarre importo a saldo 6. Dare il messaggio di errore o il contante e fornire il saldo 7. Chiedere all utente se desidera altra transazione (se SI ripetere da 3 a 6, se NO termina) 12/12/
31 Richiedere pw diagramma di flusso È corretta? si Dire tipo opz e importo no deposito deposito o prelievo? prelievo Aggiungere importo a saldo no importo < saldo? si Sottrarre importo da saldo Dare la risposta o messaggio di errore 12/12/
32 diagramma gerarchico Simulare una macchina ATM Richiedere gli input Elaborare tutti i calcoli Dare tutti gli output Diagramma gerarchico di primo livello di una macchina ATM 12/12/
33 Richiedere gli input Richiedere la pw Richiedere tipo trans. Richiedere importo Diagramma gerarchico di secondo livello per gli input di una macchina ATM 12/12/
34 Teorema fondamentale della programmazione strutturata di Jacopini - Böhm ogni algoritmo può essere codificato attenendosi esclusivamente a tre strutture fondamentali: Sequenza Iterazione scelta 12/12/
35 Istruzione 1 Istruzione 2 Sequenza Istruzione 3 Vero condizione Falso Selezione Diagrammi di Nassi-Shneiderman (1973) (per la programmazione strutturata) While condizione Ripetizione Istruzione 12/12/
Appunti del corso di Informatica 1 (IN110 Fondamenti) 3 Modelli di calcolo
Università Roma Tre Dipartimento di Matematica e Fisica Corso di Laurea in Matematica Appunti del corso di Informatica 1 (IN110 Fondamenti) 3 Modelli di calcolo Marco Liverani (liverani@mat.uniroma3.it)
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
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
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, calcolatore
Problemi, algoritmi, calcolatore Informatica e Programmazione Ingegneria Meccanica e dei Materiali Università degli Studi di Brescia Prof. Massimiliano Giacomin Problemi, algoritmi, calcolatori Introduzione
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
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
DettagliLA 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
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
DettagliElaborazione dell informazione
Elaborazione dell informazione Primo esempio Ricominciamo dai numeri (45 + 25) è definita rigorosamente Un primo calcolatore (a) Figura 1.1 Configurazione del pallottoliere (a) prima e (b) dopo l esecuzione
DettagliL INFORMATICA c1. Informatica è qualcosa che ha a che fare con l uso del computer
L INFORMATICA c1 Negli incontri precedenti ci siamo occupati di cercare la soluzione di alcuni problemi. Ora cerchiamo di definire cosa si intende per informatica. Informatica è qualcosa che ha a che fare
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
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
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 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
DettagliConcetti di base dell ICT
Informatica Linguaggio di programmazione Computer Bit Algoritmo Linguaggio macchina Informatica: Informazione automatica Gli anglosassoni usano il termine Computer Science = Scienza dei Calcolatori Computer:
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
DettagliELEMENTI DI PROGRAMMAZIONE a.a. 2012/13 MACCHINE, ALGORITMI, PROGRAMMI
ELEMENTI DI PROGRAMMAZIONE a.a. 22/3 MACCHINE, ALGORITMI, PROGRAMMI Andrea Prevete, UNINA2 23 UNA GERARCHIA DI MACCHINE macchine combinatorie macchine sequenziali (automi a stati finiti)... macchine di
DettagliSistemi 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
DettagliTuring cercò di fornire una risposta matematica al problema CHE COSA SIGNIFICA CALCOLARE?
STORIA DELLE CONOSCENZE SCIENTIFICHE SULL UOMO E SULLA NATURA a.a. 2016 2017 Prof. Roberto Giuntini, PhD. Introduzione alla storia dell intelligenza artificiale e della robotica Modulo II: Le macchine
DettagliITLCC 2006/10/6 19:09 page 7 #3
ITLCC 2006/10/6 19:09 page 7 #3 Capitolo 2 Macchine di Turing SOMMARIO In questo capitolo introdurremo il modello di calcolo proposto dal logico matematico inglese Alan Turing, in un suo famoso articolo
DettagliCapitolo 5: Macchine di Turing e calcolabilitá secondo Turing
Capitolo 5: Macchine di Turing e calcolabilitá secondo Turing 1 Macchina di Turing (MDT ) Un dispositivo che accede a un nastro (potenzialmente) illimitato diviso in celle contenenti ciascuna un simbolo
DettagliCorso 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
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
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
DettagliConcetti 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
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
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
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
DettagliProgrammazione di INFORMATICA e Laboratorio
ISIUO ECNICO SAALE settore ECNOLOGICO ad indirizzo: Elettronica ed Elettrotecnica - Informatica e elecomunicazioni Meccanica, Meccatronica ed Energia "VIORIO EMANUELE III" Via Duca della Verdura, 48-90143
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
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
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
DettagliIl concetto di informatica. Graziano Pravadelli (2012)
Il concetto di informatica Graziano Pravadelli (2012) Informatica e telecomunicazione Cos è l informatica? lo studio sistematico degli algoritmi che descrivono e trasformano l informazione: la loro teoria,
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)
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
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
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
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
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
DettagliUniversità degli Studi di Cassino e del Lazio Meridionale Corso di Fondamenti di Informatica Algoritmi ed esecutori
Università degli Studi di Cassino e del Lazio Meridionale Corso di Algoritmi ed esecutori Anno Accademico Francesco Tortorella Che cosa si intende per INFORMATICA? Scienza della rappresentazione e dell
DettagliA proposito di informatica
A proposito di informatica Sguardo d insieme sulla disciplina: una mappa delle materie e delle loro relazioni Università degli Studi di Milano Dipartimento di Informatica Bootstrap Day - 26 settembre 2016
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
DettagliMacchina di Turing ... !!... !!! a b b! b a! Nastro di Input. testina. s t q i. s r. Unità di Controllo q j S / D / F
Macchina di Turing Nastro di Input...!!! a b b! b a! testina!!... s r s t q i Unità di Controllo q j Q S / D / F P Definizione Formale Una macchina di Turing deterministica è una sestupla
DettagliEsempio di Patto Formativo per la classe terza
Esempio di Patto Formativo per la classe terza COMPETENZE TRASVERSALI rispettare le consegne e la puntualità nell esecuzione dei compiti assegnati lavorare costruttivamente in gruppo e individualmente
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
DettagliLe aree dell informatica
Fondamenti di Informatica per la Sicurezza a.a. 2006/07 Le aree dell informatica Stefano Ferrari UNIVERSITÀ DEGLI STUDI DI MILANO DIPARTIMENTO DI TECNOLOGIE DELL INFORMAZIONE Stefano Ferrari Università
DettagliELEMENTI DI PROGRAMMAZIONE a.a. 2013/14 UNA GERARCHIA DI MACCHINE
ELEMENTI DI PROGRAMMAZIONE a.a. 23/4 UNA GERARCHIA DI MACCHINE Andrea Prevete, UNINA2 24 UNA GERARCHIA DI MACCHINE macchine combinatorie macchine sequenziali (automi a numero finito di stati)... macchine
DettagliDECLINAZIONE COMPETENZE SCUOLA SECONDARIA DI PRIMO GRADO: MATEMATICA COMPETENZE CONOSCENZE ABILITA
DECLINAZIONE COMPETENZE SCUOLA SECONDARIA DI PRIMO GRADO: MATEMATICA COMPETENZE CONOSCENZE ABILITA Operare in situazioni reali e/o disciplinari con tecniche e procedure di calcolo I numeri naturali e il
DettagliIl linguaggio di programmazione Python
Università Roma Tre Dipartimento di Matematica e Fisica Percorso Abilitante Speciale Classe A048 Matematica Applicata Corso di Informatica Il linguaggio di programmazione Python Marco Liverani (liverani@mat.uniroma3.it)
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
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
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
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
DettagliLA 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
DettagliCorso di Fondamenti di Informatica Linguaggi di Programmazione
Corso di Fondamenti di Informatica Linguaggi di Programmazione Anno Accademico Francesco Tortorella Linguaggi di programmazione Un calcolatore basato sul modello di von Neumann permette l esecuzione di
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
DettagliEsercitazioni di Reti Logiche. Lezione 5
Esercitazioni di Reti Logiche Lezione 5 Circuiti Sequenziali Zeynep KIZILTAN zeynep@cs.unibo.it Argomenti Circuiti sequenziali Flip-flop D, JK Analisi dei circuiti sequenziali Progettazione dei circuiti
DettagliAutoma a Stati Finiti (ASF)
Automa a Stati Finiti (ASF) E una prima astrazione di macchina dotata di memoria che esegue algoritmi Introduce il concetto fondamentale di STATO che informalmente può essere definito come una particolare
DettagliCorso di Informatica
Corso di Informatica Modulo T1 2-Proprietà degli algoritmi 1 Prerequisiti Conoscere il concetto di M.C.D. tra due numeri interi Concetto intuitivo di funzione matematica 2 1 Introduzione Sappiamo scrivere
DettagliMacchine per l elaborazione dell informazione dalla macchina di Von Neumann al Calcolatore Elettronico
Corso di Calcolatori Elettronici I A.A. 2010-2011 Macchine per l elaborazione dell informazione dalla macchina di Von Neumann al Calcolatore Elettronico Lezione 15 Università degli Studi di Napoli Federico
DettagliIntroduzione: informatica. 18/2/2013 Informatica applicata alla comunicazione multimediale Cristina Bosco
Introduzione: informatica 18/2/2013 Informatica applicata alla comunicazione multimediale Cristina Bosco Indice - di cosa si occupa l informatica - una definizione della scienza informatica - cosa è un
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
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
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,
DettagliArchitettura di Von Neumann
Architettura di Von Neumann L architettura è ancora quella classica sviluppata da Von Neumann nel 1947. L architettura di Von Neumann riflette le funzionalità richieste da un elaboratore: memorizzare i
DettagliMacchine sequenziali. Automa a Stati Finiti (ASF)
Corso di Calcolatori Elettronici I Macchine sequenziali Prof. Roberto Canonico Università degli Studi di Napoli Federico II Dipartimento di Ingegneria Elettrica e delle Tecnologie dell Informazione Corso
DettagliInformatica/ Ing. Meccanica/ Edile/ Prof. Verdicchio/ 30/06/2016/ Foglio delle domande / VERSIONE 1
Informatica/ Ing. Meccanica/ Edile/ Prof. Verdicchio/ 30/06/2016/ Foglio delle domande/ VERSIONE 1 1) In Python, se scrivo v = [ ] in un programma, vuol dire che a) v è un quadrato b) v è un insieme vuoto
DettagliInformatica e Bioinformatica: Algoritmi
Informatica e Bioinformatica: Algoritmi 20 Marzo 2014 Programmi Applicativi Programmi Applicativi Sistema Operativo (lezione 3) Macchina Hardware (lezione 1 e 2) La macchina hardware permette l esecuzione
DettagliComponenti e connessioni. Capitolo 3
Componenti e connessioni Capitolo 3 Componenti principali CPU (Unità Centrale di Elaborazione) Memoria Sistemi di I/O Connessioni tra loro Architettura di Von Neumann Dati e instruzioni in memoria (lettura
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
DettagliDESCRIZIONI RIGOROSE c7
DESCRIZIONI RIGOROSE c7 Es. cucinare la pasta asciutta per una famiglia La descrizione rigorosa della strategia risolutiva prevede Analisi del problema (con chiara individuazione degli obiettivi e dei
DettagliMacchine di TURING. Alan Mathison Turing ( )
Macchine di TURING Alan Mathison Turing (1912 1954) Macchine di TURING Alan Mathison Turing (1912 1954) matematico, logico e crittanalista britannico, considerato uno dei padri dell informatica e uno dei
DettagliTEORIE E TECNICHE PER LA COMUNICAZIONE DIGITALE
TEORIE E TECNICHE PER LA COMUNICAZIONE DIGITALE Riccardo Dondi Dipartimento di Scienze dei linguaggi, della comunicazione e degli studi culturali Università degli Studi di Bergamo Informazione sul corso
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
DettagliMODULO 1. Prof. Onofrio Greco. Prof. Greco Onofrio
ECDL MODULO 1 Prof. Onofrio Greco Modulo 1 Concetti di base dell ICT Modulo 2 Uso del Computer e Gestione dei File Modulo 3 - Elaborazione testi Modulo 4 Foglio Elettronico Modulo 5 Uso delle Basi di Dati
DettagliAlgoritmo. La programmazione. Algoritmo. Programmare. Procedimento di risoluzione di un problema
Algoritmo 2 Procedimento di risoluzione di un problema La programmazione Ver. 2.4 Permette di ottenere un risultato eseguendo una sequenza finita di operazioni elementari Esempi: Una ricetta di cucina
DettagliUniversità degli Studi di Roma Tor Vergata Facoltà di Ingegneria Corso di Laurea in Ingegneria Medica. Compressione dati
Università degli Studi di Roma Tor Vergata Facoltà di Ingegneria Corso di Laurea in Ingegneria Medica Compressione dati Compressione dei dati Il processo di compressione consiste nell effettuare codifiche
DettagliFondamenti d Informatica: Le Macchine di Turing. Barbara Re, Phd
Fondamenti d Informatica: Le Macchine di Turing Barbara Re, Phd Agenda } Introdurremo } il formalismo delle Macchine di Turing nelle varie versioni } la nozione di calcolabilità e di decidibilità 2 La
DettagliFondamenti di Informatica. Algoritmo. Algoritmo funzionale. Prof.ssa Enrica Gentile Informatica e Comunicazione Digitale a.a.
Fondamenti di Informatica Prof.ssa Enrica Gentile Informatica e Comunicazione Digitale a.a. 2011-2012 Algoritmo L algoritmo è una sequenza finita di istruzioni, mediante le quali un qualunque operatore
DettagliMa il programma in Fig. 8.2 del libro? Stampa hello, world, dato un input n se e solo se l equazione
Problemi che i calcolatori non possono risolvere E importante sapere se un programma e corretto, cioe fa uello che ci aspettiamo. E facile vedere che il programma Ma il programma in Fig. 8.2 del libro?
DettagliMATERIALI PER LA DISCUSSIONE
SETTORE TECNOLOGICO MATERIALI PER LA DISCUSSIONE ISTITUTO TECNICO INDIRIZZO ARTICOLAZIONE TELECOMUNICAZIONI INFORMATICA E TELECOMUNICAZIONI ESITI DI APPRENDIMENTO Regolamento, Art. 5 comma 1 Nota: Le Competenze,
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 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=
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,
DettagliReti Logiche 1. Prof. B. Buttarazzi A.A. 2009/2010. Reti Sequenziali
Reti Logiche Prof. B. Buttarazzi A.A. 29/2 Reti Sequenziali Sommario Analisi di Reti Sequenziali Sintesi di Reti Sequenziali Esercizi 3/6/2 Corso di Reti Logiche 29/ 2 Analisi di Reti Sequenziali Passare
DettagliLe aree dell informatica
Fondamenti di Informatica per la Sicurezza a.a. 2008/09 Le aree dell informatica Stefano Ferrari UNIVERSITÀ DEGLI STUDI DI MILANO DIPARTIMENTO DI TECNOLOGIE DELL INFORMAZIONE Stefano Ferrari Università
Dettagliun insieme finito di segnali d uscita U (nell ascensore U={stare fermo, salire, scendere})
Automi Il termine automa viene usato nel linguaggio corrente per indicare un dispositivo in grado di svolgere un attività senza l intervento dell uomo. Nella quotidianità siamo letteralmente circondati
Dettagli1.2f: Operazioni Binarie
1.2f: Operazioni Binarie 2 18 ott 2011 Bibliografia Questi lucidi 3 18 ott 2011 Operazioni binarie Per effettuare operazioni è necessario conoscere la definizione del comportamento per ogni coppia di simboli
DettagliAlgoritmi e diagrammi di flusso
Università degli Studi di Roma Tor Vergata Facoltà di Ingegneria orso di Laurea in Ingegneria Medica lgoritmi e diagrammi di flusso Rev.1.0 of 01-04-6 Risoluzione di un problema Risoluzione di problemi
DettagliPIANI DI STUDIO MATEMATICA
Istituto Comprensivo Taio PIANI DI STUDIO MATEMATICA Secondo biennio Classe Quarta ANNO SCOLASTICO 2011 / 2012 1 Competenza 1 Utilizzare con sicurezza le tecniche e le procedure del calcolo aritmetico
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.
DettagliFUNZIONI BOOLEANE. Vero Falso
FUNZIONI BOOLEANE Le funzioni booleane prendono il nome da Boole, un matematico che introdusse un formalismo che opera su variabili (dette variabili booleane o variabili logiche o asserzioni) che possono
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
DettagliIntroduzione al Calcolo Scientifico
Introduzione al Calcolo Scientifico Francesca Mazzia Dipartimento di Matematica Università di Bari Francesca Mazzia (Univ. Bari) Introduzione al Calcolo Scientifico 1 / 14 Calcolo Scientifico Insieme degli
DettagliMODELLO e RAPPRESENTAZIONE
MODELLO e RAPPRESENTAZIONE I calcolatori elaborano informazione e restituiscono nuova informazione: questa deve essere rappresentata in forma simbolica Esempio : Per poter gestire una biblioteca dobbiamo
Dettagli(1) (2) (3) (4) 11 nessuno/a 9 10. (1) (2) (3) (4) X è il minore tra A e B nessuno/a X è sempre uguale ad A X è il maggiore tra A e B
Compito: Domanda 1 Per l'algoritmo fornito di seguito, qual è il valore assunto dalla variabile contatore quando l'algoritmo termina: Passo 1 Poni il valore di contatore a 1 Passo 2 Ripeti i passi da 3
DettagliLa "macchina" da calcolo
La "macchina" da calcolo Abbiamo detto che gli algoritmi devono essere scritti in un linguaggio "comprensibile all'esecutore" Se il nostro esecutore è il "calcolatore", questo che linguaggio capisce? che
DettagliAXO - Architettura dei Calcolatori e Sistema Operativo. organizzazione strutturata dei calcolatori
AXO - Architettura dei Calcolatori e Sistema Operativo organizzazione strutturata dei calcolatori I livelli I calcolatori sono progettati come una serie di livelli ognuno dei quali si basa sui livelli
DettagliInformazione L Informazione è un dato, o un insieme di dati, interpretati in un determinato contesto.
Informatica Con il termine Informatica (Informazione automatica) si intende la scienza che si occupa della Rappresentazione e della Elaborazione automatica delle Informazioni. Informazione L Informazione
Dettagli