Fondamenti di informatica

Dimensione: px
Iniziare la visualizzazioe della pagina:

Download "Fondamenti di informatica"

Transcript

1 Fondamenti di informatica Alessandro GORI informottica.webnode.it A.Gori - Fondamenti di informatica 1 Bibliografia Introduzione ai Sistemi Informatici IV edizione, Sciuto et alt., McGraw-Hill Contatti a.gori@unifi.it A.Gori - Fondamenti di informatica 2 Parole Chiave Algoritmo Codifiche e Linguaggi Programma Input Output A.Gori - Fondamenti di informatica 3 A.Gori - Fondamenti di informatica 4 Ogni problema di elaborazione della informazione è caratterizzato da: Un insieme di dati di partenza Un elaborazione dei dati Un risultato in risposta A.Gori - Fondamenti di informatica 5 A.Gori - Fondamenti di informatica 6 HTML 1

2 Schema di riferimento delle attività di un generico sistema di elaborazione: Strettamento connesso all elaborazione di informazioni è il problema della comunicazione di dati ed informazioni INPUT ELABORAZIONE OUTPUT A.Gori - Fondamenti di informatica 7 A.Gori - Fondamenti di informatica 8 L informazione presuppone <Comunicazione> tra un entità Emittente ed un entità Ricevente attraverso processi di codifica e di decodifica nonché tramite un insieme di regole. Codifica Emittente INFORMAZIONE Decodifica Ricevente La comunicazione (di informazione) tra due persone avviene attraverso un linguaggio e può subire una codifica ed una decodifica: Esempio: La persona emittente pensa una cosa La codifica in una frase in un certo linguaggio (es. lingua italiana) Il ricevente l ascolta e la decodifica per farla sua (ad es. tramite lo stesso tipo di linguaggio) ed utilizzarla (memorizzarla, elaborarla, ) A.Gori - Fondamenti di informatica 9 A.Gori - Fondamenti di informatica 10 La comunicazione (di informazione) tra due sistemi diversi (ad es. l uomo ed il computer) avviene con le stesse modalità viste prima ovviamente utilizzando mezzi diversi. ESEMPIO: L uomo comunica al computer un informazione tramite un linguaggio di programmazione (codifica) Il computer riceve l informazione, decodificandola nel suo linguaggio (codici binari 0/1) in modo da poterla trattare in vario modo (memorizzare, elaborare, ecc.) e magari ritornare delle risposte A.Gori - Fondamenti di informatica 11 A.Gori - Fondamenti di informatica 12 HTML 2

3 La comunicazione di informazione tra due sistemi deve avvenire seguendo delle regole precise: si pensi alla sintassi del linguaggio umano si pensi alla semantica (ossia quello che comunichiamo deve avere un significato per chi ci ascolta) si pensi alla sequenza logica di ciò che comunichiamo Linguaggio di programmazione: Sistema di codifica del linguaggio naturale attraverso il quale possiamo comunicare informazioni ad un computer o, più in generale, ad un sistema di elaborazione Ecco che si introducono i concetti di: linguaggio di programmazione programma A.Gori - Fondamenti di informatica 13 A.Gori - Fondamenti di informatica 14 Programma: Sequenza di comandi o istruzioni elementari che possono essere comprese (decodificate) ed eseguite (elaborate) da un sistema di elaborazione in modo automatico Schema di riferimento delle attività di un generico sistema di elaborazione: INPUT ELABORAZIONE OUTPUT A.Gori - Fondamenti di informatica 15 A.Gori - Fondamenti di informatica 16 Esempio: Esempio: 3 5? ^3 125 Concetto di Algoritmo A.Gori - Fondamenti di informatica 17 A.Gori - Fondamenti di informatica 18 HTML 3

4 Esempio: Concetto di Algoritmo Algoritmo: 3 5 5^3 Procedimento: 1. Inserisci il dato A (5) BASE 2. Inserisci il dato B (3) ESPONENTE 3. Esegui A elevato a B 4. Restituisci il risultato 125 insieme finito di azioni elementari (istruzioni) che devono essere eseguite in sequenza per portare a termine (risolvere) un determinato compito A.Gori - Fondamenti di informatica 19 A.Gori - Fondamenti di informatica 20 TRATTAMENTO dell INFORMAZIONE TRATTAMENTO dell INFORMAZIONE Esempio: Ricetta di cucina (arrosto di vitello) - Procurarsi tutta la lista degli ingredienti nei dosaggi richiesti (vitello, sale, olio, spezie, vino, burro, brodo,.) - Procurarsi la pentola e gli attrezzi da cucina (piatti, posate, ecc.) - Mettere nella pentola due rametti di rosmarino e sale - Rosolare la carne in burro e olio ben caldi - Bagnare con il vino e lasciare evaporare - Aggiungere il brodo - Cuocere a fuoco lento per un ora A.Gori - Fondamenti di informatica 21 A.Gori - Fondamenti di informatica 22 TRATTAMENTO dell INFORMAZIONE Il processo di sviluppo di un programma ANALISI FORMALIZZAZIONE PROGRAMMAZIONE TRADUZIONE ESECUZIONE A.Gori - Fondamenti di informatica 23 A.Gori - Fondamenti di informatica 24 HTML 4

5 Il processo di sviluppo di un programma Descrizione del problema Analisi ed identificazione di una soluzione del problema (soluzione informale) Formalizzazione della soluzione tramite un ALGORITMO risolutivo Scrittura di un programma in un linguaggio di programmazione Esecuzione del programma nel linguaggio macchina (tramite TRADUZIONE: interpreti o compilatori) A.Gori - Fondamenti di informatica 25 A.Gori - Fondamenti di informatica 26 A.Gori - Fondamenti di informatica 27 A.Gori - Fondamenti di informatica 28 TRATTAMENTO dell INFORMAZIONE TRATTAMENTO dell INFORMAZIONE Problemi elementari terminali Problemi non elementari: possono essere espressi tramite problemi elementari Concetto di Programma e SottoProgramma A.Gori - Fondamenti di informatica 29 A.Gori - Fondamenti di informatica 30 HTML 5

6 TRATTAMENTO dell INFORMAZIONE TRATTAMENTO dell INFORMAZIONE L importanza della corretta sequenzialità dei passi di un algoritmo Esempio: ALGORITMO DEL RISVEGLIO A.Gori - Fondamenti di informatica 31 A.Gori - Fondamenti di informatica 32 TRATTAMENTO dell INFORMAZIONE Esempio Definizione del problema: Una segretaria deve contattare telefonicamente una serie di clienti a cui deve lasciare un messaggio. La segretaria deve procurarsi la lista dei clienti ed il loro numero telefonico. Se risponde la persona desiderata, deve lasciare il messaggio e spuntare il cliente dall elenco. Negli altri casi (telefono occupato, numero errato, cliente non risponde) deve annotare sull elenco la situazione i incontrata t Dati del problema (dati di input) L elenco dei clienti con la ragione sociale ed il numero di telefono Il messaggio da comunicare Risultati di risposta (dati di output) L elenco dei clienti con l indicazione dell esito della telefonata A.Gori - Fondamenti di informatica 33 A.Gori - Fondamenti di informatica 34 Esempio Analisi e Programmazione Algoritmo Per ogni cliente dell elenco: Leggere il numero telefonico Comporre il numero A seconda della situazione che si presenta, scrivere sull elenco: occupato, non trovato, numero errato, ok Ripetere le operazioni precedenti finché i clienti dell elenco sono finiti A.Gori - Fondamenti di informatica 35 A.Gori - Fondamenti di informatica 36 HTML 6

7 Algoritmi e Programmi Algoritmi e Programmi Esecuzione A.Gori - Fondamenti di informatica 37 A.Gori - Fondamenti di informatica 38 Algoritmi Descrizione degli Algoritmi A.Gori - Fondamenti di informatica 39 A.Gori - Fondamenti di informatica 40 Descrizione degli Algoritmi Descrizione degli Algoritmi A.Gori - Fondamenti di informatica 41 A.Gori - Fondamenti di informatica 42 HTML 7

8 Problema: Data la seguente figura geometrica, calcolarne l area totale (supponendo di non conoscere la formula dell area del trapezio) Problema: Data la seguente figura geometrica, calcolarne l area totale (supponendo di non conoscere la formula dell area del trapezio) A.Gori - Fondamenti di informatica 43 A.Gori - Fondamenti di informatica 44 DATI r r Dobbiamo scomporre il problema P in più sottoproblemi h2 h1 b B h2 h1 b B P si scompone in: P 1 + P 2 + P 3 A.Gori - Fondamenti di informatica 45 A.Gori - Fondamenti di informatica 46 h2 b r P 3 si può scomporre a sua volta in: P 3.1 e P P 3.2 h2 h1 b r h1 (Se non si usa la formula del Trapezio) B B A= ½ (II r 2 ) + (b h2 ) + (b h1 ) + ½ (B-b) h1 (Senza usare la formula del Trapezio) A.Gori - Fondamenti di informatica 47 A.Gori - Fondamenti di informatica 48 HTML 8

9 Algoritmo Definizione intuitiva di algoritmo Un algoritmo deve descrivere la soluzione non di uno specifico problema ma di una classe di problemi equivalenti Es.: l algoritmo precedente descrive la soluzione di ogni problema con quelle caratteristiche senza vincolarsi a dati specifici concetto di VARIABILE Elenco finito di istruzioni che specificano una serie di operazioni, eseguendo le quali e possibile risolvere ogni istanza di un problema di un dato tipo A.Gori - Fondamenti di informatica 49 A.Gori - Fondamenti di informatica 50 Una VARIABILE è una specie di contenitore identificato da un nome (identificatore) e che possiede un valore Si dice che una VARIABILE è di un certo TIPO per indicare il tipo di valore che può assumere B 12 H1 6.5 A.Gori - Fondamenti di informatica 51 A.Gori - Fondamenti di informatica 52 Per introdurre un valore nel contenitore si adottano le cosiddette operazioni o di assegnamento a e Es. B 12 B 12 x 5 H1 6.5 H1 B x 3 A H1 x B Inizio Leggi il valore del raggio ed assegnalo alla variabile R Calcola l area del semicerchio ed assegnalo alla variabile P1 Es. R 6 P1 (R ^ 2) * 3,14 / 2 A.Gori - Fondamenti di informatica 53 A.Gori - Fondamenti di informatica 54 HTML 9

10 Leggi il valore della base b del primo rettangolo ed assegnalo alla variabile b Leggi il valore dell altezza h2 del primo rettangolo ed assegnalo alla variabile h2 Calcola larea l area del primo rettangolo ed assegnalo alla variabile P2 Es. b 7 h1 4 P2 b * h2 Leggi il valore della base B del secondo rettangolo ed assegnalo alla variabile B Leggi il valore dell altezza h1 del secondo rettangolo ed assegnalo alla variabile h1 Calcola larea l area del secondo rettangolo ed assegnalo alla variabile P31 Es. B 10 h2 3 P31 B * h1 A.Gori - Fondamenti di informatica 55 A.Gori - Fondamenti di informatica 56 Calcola l area del triangolo rettangolo ed assegnalo alla variabile P32 Calcola l area dell intera figura ed assegnalo alla variabile A Es. P32 ½ * (B b) * h1 Es. A P1 + P2 + P31 + P32 A.Gori - Fondamenti di informatica 57 A.Gori - Fondamenti di informatica 58 Visualizza il valore della variabile A Fine Problema: Determinare il maggiore tra due numeri interi x e y P0: Inizio P1: Leggi un valore dall esterno ed assegnalo alla variabile X P2: Leggi un valore dall esterno ed assegnalo alla variabile Y P3: Calcola la differenza d tra x e y ( d x-y) P4: Valuta se d>0: in caso affermativo esegui il passo P5 altrimenti esegui il passo P6 P5: Stampa la frase Il massimo è seguita dal valore contenuto in x e vai al passo P7 P6: Stampa la frase Il massimo è seguita dal valore contenuto in y e vai al passo P7 P7: Fine A.Gori - Fondamenti di informatica 59 A.Gori - Fondamenti di informatica 60 HTML 10

11 Problema: Determinare il maggiore tra due numeri interi x e y Diagramma di flusso Inizio Leggi X e Y D X-Y V D > 0? F Diagramma di flusso Formalismo grafico per rappresentare un algoritmo Non completamente standardizzato Blocchi connessi con frecce che indicano la sequenza delle azioni da svolgere Scrivi Max è X Scrivi Max è Y Fine A.Gori - Fondamenti di informatica 61 A.Gori - Fondamenti di informatica 62 Descrizione degli algoritmi Diagramma di flusso Elaborazione Selezione a due vie (blocco condizionale o decisionale) Inizio Leggi X e Y D X-Y D > 0? Scrivi Max è X Scrivi Max è Y Operazione di I/O Diagramma a blocchi (flow chart): rappresentazione grafica di un algoritmo che indica il flusso delle operazioni descritte dall algoritmo che devono essere eseguite a partire dai dati iniziali per ottenere i risultati finali. Fine A.Gori - Fondamenti di informatica 63 A.Gori - Fondamenti di informatica 64 Blocchi elementari Esercizio Inizio begin input azione Definire l algoritmo che risolve una generica equazione di secondo grado della forma: end output falso C vero ax 2 +bx+c=0 Fine A.Gori - Fondamenti di informatica 65 A.Gori - Fondamenti di informatica 66 HTML 11

12 Soluzione di ax 2 +bx+c=0 Flow-Chart Algoritmo begin 1. Inizio dell algoritmo 2. acquisire dall esterno i valori dei coefficienti a, b e c; 3. calcolare il valore Δ=b 2-4ac; 4. se Δ<0, allora non esistono radici reali: eseguire 8; 5. se Δ=0, allora x 1 =x 2 =-b/2a : eseguire 7; 6. se Δ>0, allora x 1 =(-b+ Δ)/2a e x 2 =(-b- Δ)/2a ; 7. comunicare all esterno i valori di x 1 ed x 2 ; 8. Fine dell algoritmo. radici non reali V a, b, c Δ=b 2-4ac Δ<0 end F x 1 =-b/2a x 2 =-b/2a V Δ=0 x 1, x 2 F x 1 =(-b+ Δ)/2a x 2 =(-b- Δ)/2a A.Gori - Fondamenti di informatica 67 A.Gori - Fondamenti di informatica 68 Dati ed Istruzioni Descrizione degli Algoritmi A.Gori - Fondamenti di informatica 69 A.Gori - Fondamenti di informatica 70 Descrizione degli Algoritmi TRATTAMENTO dell INFORMAZIONE A.Gori - Fondamenti di informatica 71 A.Gori - Fondamenti di informatica 72 HTML 12

13 TRATTAMENTO dell INFORMAZIONE TRATTAMENTO dell INFORMAZIONE A.Gori - Fondamenti di informatica 73 A.Gori - Fondamenti di informatica 74 Strutture di controllo Strutture di controllo A,B Basic IF A< >0 THEN RIS=B/A A< >0 A.Gori - Fondamenti di informatica 75 C if (A!=0) { RIS=B/A; } RIS=B/A A.Gori - Fondamenti di informatica 76 Strutture di controllo Strutture di controllo Basic IF A< B THEN RIS=B-A ELSE RIS=A-B END IF RIS=B-A A< B RIS=A-B A.Gori - Fondamenti di informatica 77 A.Gori - Fondamenti di informatica 78 HTML 13

14 Strutture di controllo Strutture di controllo C if (A< B) { RIS=B-A } else { RIS=A-B } A< B RIS=B-A RIS=A-B A.Gori - Fondamenti di informatica 79 A.Gori - Fondamenti di informatica 80 Strutture di controllo Strutture di controllo W=0 W=0 Basic W=0 WHILE A>0 W=W+1 A=A-1 WEND W=W+1 A=A-1 A>0 C W=0; WHILE (A>0) { W=W+1; A=A-1; } W=W+1 A=A-1 A>0 A.Gori - Fondamenti di informatica 81 A.Gori - Fondamenti di informatica 82 Strutture di controllo Strutture di controllo W=0 W=W+1 A=A-1 Basic W=0 DO W=W+1 A=A-1 LOOP WHILE A>0 A>0 A.Gori - Fondamenti di informatica 83 A.Gori - Fondamenti di informatica 84 HTML 14

15 Strutture di controllo W=0 W=W+1 A=A-1 C W=0; do { W=W+1; A=A-1; } while (A>0) A>0 A.Gori - Fondamenti di informatica 85 A.Gori - Fondamenti di informatica 86 A.Gori - Fondamenti di informatica 87 A.Gori - Fondamenti di informatica 88 A.Gori - Fondamenti di informatica 89 A.Gori - Fondamenti di informatica 90 HTML 15

16 Proposizioni e Predicati Tavole di verità A.Gori - Fondamenti di informatica 91 A.Gori - Fondamenti di informatica 92 Somma di 3 numeri Esercizio Fornire l algoritmo per calcolare la somma di N numeri A.Gori - Fondamenti di informatica 93 A.Gori - Fondamenti di informatica 94 Soluzione Pseudo Codice Lo pseudo codice è una sorta di linguaggio che descrive un algoritmo attraverso istruzioni simili alle istruzioni di un linguaggio di programmazione. Si descrivono algoritmi utilizzando pseudo codice perché passare dalla descrizione in pseudo codice alla effettiva descrizione in un linguaggio di programmazione è (o dovrebbe essere) semplice. A.Gori - Fondamenti di informatica 95 A.Gori - Fondamenti di informatica 96 HTML 16

17 Pseudo Codice Tipi di Istruzioni Pseudo Codice Strutture di controllo A.Gori - Fondamenti di informatica 97 A.Gori - Fondamenti di informatica 98 Pseudo Codice Somma di tre numeri Leggi Var1 Leggi Var2 Leggi Var3 Somma = Var1 + Var2 + Var3 Scrivi Somma A.Gori - Fondamenti di informatica 99 Pseudo Codice Somma di N numeri Leggi N I = 0 Somma = 0 Finché I < N { Leggi Var Somma = Somma + Var I = I + 1 } Scrivi Somma A.Gori - Fondamenti di informatica 100 Approccio Top-Down Approccio Top-Down La programmazione top-down è una tecnica di programmazione per la realizzazione di programmi con la scomposizione iterativa di un problema in sotto-problemi. La programmazione top-down si presta molto bene ad essere abbinata alla definizione di algoritmi con i diagrammi di flusso. All inizio il diagramma di flusso è rappresentato da un nodo che rappresenta la soluzione al problema Questo nodo viene scomposto in una rete di nodi in modo iterativo La scomposizione termina quando i singoli nodi possono essere rappresentati da semplici sequenze di istruzioni del linguaggio di programmazione scelto A.Gori - Fondamenti di informatica 101 A.Gori - Fondamenti di informatica 102 HTML 17

18 Somma di N numeri Approccio Top-Down Somma di N numeri Approccio Top-Down A.Gori - Fondamenti di informatica 103 A.Gori - Fondamenti di informatica 104 Approccio Top-Down Somma di N numeri: fase di inizializzazione Approccio Top-Down Somma di N numeri: fase di lettura e somma di N numeri A.Gori - Fondamenti di informatica 105 A.Gori - Fondamenti di informatica 106 Approccio Top-Down Somma di N numeri: Completo! A.Gori - Fondamenti di informatica 107 A.Gori - Fondamenti di informatica 108 HTML 18

19 A.Gori - Fondamenti di informatica 109 HTML 19

Introduzione alla programmazione

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

Dettagli

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. 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

Dettagli

Fondamenti di Informatica Laurea in Ingegneria Civile e Ingegneria per l ambiente e il territorio

Fondamenti di Informatica Laurea in Ingegneria Civile e Ingegneria per l ambiente e il territorio Dipartimento di Ingegneria dell Informazione Università degli Studi di Parma Il problema di fondo Fondamenti di Informatica Laurea in Ingegneria Civile e Ingegneria per l ambiente e il territorio Algoritmi

Dettagli

Introduzione agli 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

Dettagli

Sviluppo di programmi

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

Dettagli

Sviluppo di programmi

Sviluppo di programmi Sviluppo di programmi FASE 1: Dare un nome al problema partendo dall analisi del problema FASE 2: Scrivere la specifica funzionale FASE 3: Scrittura dell algoritmo FASE 3.1: Introduzione delle variabili

Dettagli

ELABORAZIONE DELLE INFORMAZIONI (ALGORITMI E LINGUAGGI DI PROGRAMMAZIONE)

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

Dettagli

Programmazione I. Fondamenti di programmazione. Problemi, Algoritmi, Diagrammi di flusso

Programmazione I. Fondamenti di programmazione. Problemi, Algoritmi, Diagrammi di flusso Programmazione I Fondamenti di programmazione ( Lezione I ) Problemi, Algoritmi, Diagrammi di flusso Fabrizio Messina messina@dmi.unict.it www.dmi.unict.it/~messina Algoritmo Dato un problema, un algoritmo

Dettagli

Pag. 1. La formalizzazione dell informazione: Dati e Diagrammi di Flusso. Codifica degli algoritmi

Pag. 1. La formalizzazione dell informazione: Dati e Diagrammi di Flusso. Codifica degli algoritmi 1 Università degli studi di Parma Dipartimento di Ingegneria dell Informazione Informatica a.a. 2012/13 Informatica Facoltà di Medicina Veterinaria a.a. 2012/13 prof. Stefano Cagnoni La formalizzazione

Dettagli

Agent and Object Technology Lab Dipartimento di Ingegneria dell Informazione Università degli Studi di Parma. Fondamenti di Informatica.

Agent and Object Technology Lab Dipartimento di Ingegneria dell Informazione Università degli Studi di Parma. Fondamenti di Informatica. Agent and Object Technology Lab Dipartimento di Ingegneria dell Informazione Università degli Studi di Parma Fondamenti di Informatica Algoritmi Michele Tomaiuolo Algoritmo Il termine algoritmo deriva

Dettagli

Sistemi di Elaborazione delle Informazioni

Sistemi di Elaborazione delle Informazioni Sistemi di Elaborazione delle Informazioni Algoritmi e Programmi 1 Risoluzione di un problema Il procedimento di soluzione di un problema dovrebbe essere caratterizzato da: analisi del problema e identificazione

Dettagli

Risoluzione di un problema

Risoluzione di un problema Algoritmi Risoluzione di un problema Descrizione di un problema! Individuazione di un ALGORITMO! Metodo risolutivo (progetto) Introduzione 2 Algoritmo Sequenza finita di mosse che risolve in un tempo finito

Dettagli

MODULO 07. La soluzione dei problemi mediante gli algoritmi

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

Dettagli

La formalizzazione dell informazione: Dati e Diagrammi di Flusso

La formalizzazione dell informazione: Dati e Diagrammi di Flusso La formalizzazione dell informazione: Dati e Diagrammi di Flusso Codifica degli algoritmi Algoritmo formulato per essere comunicato tra esseri umani chiaro, sintetico e intuitivo codificato in linguaggi

Dettagli

Formalismi per la descrizione di algoritmi

Formalismi 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

Dettagli

Informatica ALGORITMI E LINGUAGGI DI PROGRAMMAZIONE. Francesco Tura. F. Tura

Informatica 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

Dettagli

Laboratorio di Programmazione Laurea in Ingegneria Civile e Ambientale

Laboratorio di Programmazione Laurea in Ingegneria Civile e Ambientale Dipartimento di Ingegneria dell Informazione Università degli Studi di Parma Il problema di fondo Laboratorio di Programmazione Laurea in Ingegneria Civile e Ambientale Algoritmi e Programmazione Stefano

Dettagli

L uomo come esecutore di algoritmi

L uomo come esecutore di algoritmi L uomo come esecutore di algoritmi l L algoritmo è l insieme di azioni elementari che consentono di risolvere un problema trasformando i dati iniziali del problema stesso nel risultato. l Un algoritmo

Dettagli

Dal problema a un programma comprensibile dal calcolatore. Il Progetto degli Algoritmi. Dall analisi del problema all esecuzione

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

Dettagli

Laboratorio di Programmazione Laurea in Ingegneria Civile e Ambientale

Laboratorio di Programmazione Laurea in Ingegneria Civile e Ambientale Dipartimento di Ingegneria dell Informazione Università degli Studi di Parma Laboratorio di Programmazione Laurea in Ingegneria Civile e Ambientale Algoritmi e Programmazione Stefano Cagnoni Il problema

Dettagli

L informazione. Bateson, Ricevere informazioni vuol dire necessariamente ricevere notizie di differenza (Es.: Luce accesa/spenta, 1/0,...

L informazione. Bateson, Ricevere informazioni vuol dire necessariamente ricevere notizie di differenza (Es.: Luce accesa/spenta, 1/0,... L informazione Diverse proposte in letteratura Bateson, Ricevere informazioni vuol dire necessariamente ricevere notizie di differenza (Es.: Luce accesa/spenta, 1/0,...) Shannon, visione probabilistica.

Dettagli

Rappresentazione con i diagrammi di flusso (Flow - chart)

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

Dettagli

Risolvere un problema significa individuare un procedimento che permetta di arrivare al risultato partendo dai dati Termine algoritmo da:

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

Dettagli

Laboratorio di Programmazione Laurea in Ingegneria Civile e Ambientale

Laboratorio di Programmazione Laurea in Ingegneria Civile e Ambientale Dipartimento di Ingegneria dell Informazione Università degli Studi di Parma Laboratorio di Laurea in Ingegneria Civile e Ambientale Algoritmi e Algebra di Boole Stefano Cagnoni Il problema di fondo Descrizione

Dettagli

Corso di Informatica. Problemi ed algoritmi. Ing Pasquale Rota

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

Dettagli

Corso di Informatica di Base

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

Dettagli

Algoritmi. Pagina 1 di 5

Algoritmi. 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

Dettagli

o Introduzione agli algoritmi o Rappresentazione delle Informazioni o Architettura del calcolatore o Reti di Calcolatori

o Introduzione agli algoritmi o Rappresentazione delle Informazioni o Architettura del calcolatore o Reti di Calcolatori Programma del corso o Introduzione agli algoritmi o Rappresentazione delle Informazioni o Architettura del calcolatore o Reti di Calcolatori o Elementi di Programmazione Algoritmi e programmi o Algoritmo

Dettagli

Programma del corso. Elementi di Programmazione. Introduzione agli algoritmi. Rappresentazione delle Informazioni. Architettura del calcolatore

Programma del corso. Elementi di Programmazione. Introduzione agli algoritmi. Rappresentazione delle Informazioni. Architettura del calcolatore Programma del corso Introduzione agli algoritmi Rappresentazione delle Informazioni Architettura del calcolatore Reti di Calcolatori Elementi di Programmazione Algoritmi e programmi Algoritmo Sequenza

Dettagli

Il concetto di calcolatore e di algoritmo

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

Dettagli

Descrizione di un algoritmo

Descrizione di un algoritmo Descrizione di un algoritmo Si descrive un algoritmo cercando di sintetizzare il più possibile la sua sequenza di passi; Non si utilizza un linguaggio di programmazione specifico, ma è meglio utilizzare

Dettagli

Introduzione alla programmazione Algoritmi e diagrammi di flusso. Sviluppo del software

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

Dettagli

Sviluppo di programmi

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

Dettagli

Problemi, algoritmi, calcolatore

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

Dettagli

Fasi di creazione di un programma

Fasi di creazione di un programma Fasi di creazione di un programma 1. Studio Preliminare 2. Analisi del Sistema 6. Manutenzione e Test 3. Progettazione 5. Implementazione 4. Sviluppo Sviluppo di programmi Per la costruzione di un programma

Dettagli

in termini informali: un algoritmo è una sequenza ordinata di operazioni che risolve un problema specifico

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

Dettagli

Algoritmo. Programmazione

Algoritmo. Programmazione Introduzione agli algoritmi Paolo Bison Fondamenti di Informatica A.A. 2006/07 Università di Padova Algoritmo descrizione di come si deve eseguire un lavoro o risolvere un problema sequenza di passi/istruzioni

Dettagli

Caratteristiche di un calcolatore elettronico

Caratteristiche di un calcolatore elettronico Prof. Emanuele Papotto Caratteristiche di un calcolatore elettronico È una macchina, costituita da circuiti elettronici digitali e da componenti elettromeccaniche, ottiche e magnetiche. È velocissimo,

Dettagli

Introduzione all informatica

Introduzione all informatica Introduzione all informatica INFORMATICA Varie definizioni Scienza degli elaboratori elettronici (Computer Science) Scienza dell informazione Definizione proposta Scienza della rappresentazione e dell

Dettagli

RAPPRESENTAZIONE GLI ALGORITMI NOTAZIONE PER LA RAPPRESENTAZIONE DI UN ALGORITMO

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

Dettagli

n Risolvere un problema significa individuare un procedimento che permetta di arrivare al risultato partendo dai dati

n 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

Dettagli

Università degli Studi di Verona. Algoritmie Diagrammidiflusso. Gennaio Sergio Marin Vargas. Dipartimento di Biotecnologie

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

Dettagli

Informatica. Come si risolve un problema?

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

Dettagli

Paolo Bison. Fondamenti di Informatica Ingegneria Meccanica Università di Padova A.A. 2008/09

Paolo Bison. Fondamenti di Informatica Ingegneria Meccanica Università di Padova A.A. 2008/09 Linguaggi procedurali Paolo Bison Fondamenti di Informatica Ingegneria Meccanica Università di Padova A.A. 2008/09 Linguaggi procedurali, Paolo Bison, FI08, 2008-09-29 p.1 Linguaggi procedurali classe

Dettagli

Come ragiona il computer. Problemi e algoritmi

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

Dettagli

Computer. Capitolo 2. 05/04/2012 continuazione 1

Computer. Capitolo 2. 05/04/2012 continuazione 1 Computer Capitolo 2 05/04/2012 continuazione 1 Le prestazioni del computer Velocità delle cpu, ossia numero d istruzioni eseguite nell unità di tempo; Dimensione delle RAM; Capacità e velocità in scrittura/

Dettagli

Linguaggio Testuale. E un formalismo che consente di rappresentare gli algoritmi mediante semplici istruzioni in linguaggio «parlato»

Linguaggio Testuale. E un formalismo che consente di rappresentare gli algoritmi mediante semplici istruzioni in linguaggio «parlato» Linguaggio Testuale E un formalismo che consente di rappresentare gli algoritmi mediante semplici istruzioni in linguaggio «parlato» Delle volte viene chiamato metalinguaggio, e l algoritmo scritto tramite

Dettagli

Lezione 8. Soluzione di un problema Problema. Soluzione di un problema. Comprensione del Problema. Analisi. Introduzione agli algoritmi

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

Dettagli

Informatica Generale Andrea Corradini Gli algoritmi e la risoluzione di problemi

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

Dettagli

Rappresentazione degli algoritmi

Rappresentazione degli algoritmi Rappresentazione degli algoritmi Universitá di Ferrara Ultima Modifica: 21 ottobre 2014 1 1 Diagramma di flusso Utilizzare il diagramma di flusso per rappresentare gli algoritmi che risolvono i seguenti

Dettagli

Fondamenti di programmazione!! Parte 2!

Fondamenti di programmazione!! Parte 2! Fondamenti di programmazione!! Parte 2! 1! Definizione intuitiva di algoritmo! n Elenco finito di istruzioni che specificano una serie di operazioni, eseguendo le quali e possibile risolvere ogni istanza

Dettagli

Pseudo codice. Paolo Bison. Fondamenti di Informatica 1 A.A. 2003/04 Università di Padova. Pseudo codice, Paolo Bison, A.A , p.

Pseudo codice. Paolo Bison. Fondamenti di Informatica 1 A.A. 2003/04 Università di Padova. Pseudo codice, Paolo Bison, A.A , p. Pseudo codice Paolo Bison Fondamenti di Informatica 1 A.A. 2003/04 Università di Padova Pseudo codice, Paolo Bison, A.A. 2003-04, 2003-09-30 p.1/38 Pseudo codice linguaggio testuale mix di linguaggio naturale

Dettagli

Flow-chart. Introduzione agli algoritmi e ai diagrammi a blocchi.

Flow-chart. Introduzione agli algoritmi e ai diagrammi a blocchi. Flow-chart Introduzione agli algoritmi e ai diagrammi a blocchi ugo.rinaldi@gmail.com 1 Sommario Fasi dello sviluppo di un programma Algoritmo Dati: Variabili e Costanti Le operazioni tipiche Diagramma

Dettagli

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 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

Dettagli

Algoritmi e soluzione di problemi

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)

Dettagli

Lez. 5 La Programmazione. Prof. Salvatore CUOMO

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

Dettagli

INFORMATICA Algoritmi come formalizzazione della risoluzione di un problema

INFORMATICA Algoritmi come formalizzazione della risoluzione di un problema INFORMATICA Algoritmi come formalizzazione della risoluzione di un problema di Roberta Molinari Algoritmo Origine del termine Al-Khwarizmi: nato nel 780 circa a Baghdad. È un importante matematico Arabo.

Dettagli

Fondamenti di Informatica

Fondamenti di Informatica Fondamenti di Informatica (L-Z) Corso di Laurea in Ingegneria Gestionale Introduzione alla Programmazione Prof. Stefano Mariani Dott. Alket Cecaj Indice Il concetto di algoritmo Algoritmo vs. programma

Dettagli

Algoritmi. Informatica B. Daniele Loiacono

Algoritmi. Informatica B. Daniele Loiacono Algoritmi Informatica B Cos è l informatica? q È la scienza che si occupa della rappresentazione dell informazione e della sua elaborazione e gestione Si occupa dell informazione, che fa parte di ogni

Dettagli

L ELABORATORE ELETTRONICO!

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

Dettagli

Laboratorio di Informatica. Esercitazione su algoritmi e diagrammi di flusso

Laboratorio 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

Dettagli

PROBLEMI ALGORITMI E PROGRAMMAZIONE

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

Dettagli

Introduzione alla programmazione strutturata

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

Dettagli

Università di Salerno Corso di FONDAMENTI DI INFORMATICA Corso di Laurea Ingegneria. Docente : Ing. Secondulfo Giovanni Anno Accademico

Università di Salerno Corso di FONDAMENTI DI INFORMATICA Corso di Laurea Ingegneria. Docente : Ing. Secondulfo Giovanni Anno Accademico Università di Salerno Corso di FONDAMENTI DI INFORMATICA Corso di Laurea Ingegneria Docente : Ing. Secondulfo Giovanni Anno Accademico 2010-2011 Lezione 3: La Formalizzazione degli Algoritmi Dati e Variabili

Dettagli

ELEMENTI DI INFORMATICA L. Ing. Claudia Chiusoli

ELEMENTI DI INFORMATICA L. Ing. Claudia Chiusoli ELEMENTI DI INFORMATICA L Ing. Claudia Chiusoli Materiale Lucidi delle lezioni Date degli appelli Esempi di Testi di esame Informazioni e contatti http://www.lia.deis.unibo.it/courses/ Programma del corso

Dettagli

Laboratorio di Programmazione

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

Dettagli

Elementi di programmazione

Elementi di programmazione Fondamenti di Informatica per la Sicurezza a.a. 2003/04 Elementi di programmazione Stefano Ferrari Università degli Studi di Milano Dipartimento di Tecnologie dell Informazione Stefano Ferrari Università

Dettagli

Unità di apprendimento 6. Dal problema al programma

Unità 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

Dettagli

Paolo Bison. Fondamenti di Informatica A.A. 2006/07 Università di Padova

Paolo Bison. Fondamenti di Informatica A.A. 2006/07 Università di Padova Pseudo codice Paolo Bison Fondamenti di Informatica A.A. 2006/07 Università di Padova Pseudo codice, Paolo Bison, FI06, 2007-01-10 p.1 Pseudo codice linguaggio testuale mix di linguaggio naturale ed elementi

Dettagli

Introduzione. Informatica B. Daniele Loiacono

Introduzione. Informatica B. Daniele Loiacono Introduzione Informatica B Cos è l informatica? q È la scienza che si occupa della rappresentazione dell informazione e della sua elaborazione e gestione " Si occupa dell informazione, che fa parte di

Dettagli

L ELABORATORE ELETTRONICO

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

Dettagli

Elementi di Informatica. Introduzione. Cos è l informatica. Corso di Laurea in Ingegneria Biomedica aa 2003/2004. Ing.

Elementi di Informatica. Introduzione. Cos è l informatica. Corso di Laurea in Ingegneria Biomedica aa 2003/2004. Ing. Elementi di Informatica Corso di Laurea in Ingegneria Biomedica aa 2003/2004 Ing. Antonio Coronato 1 Introduzione 2 Cos è l informatica Scienza della rappresentazione e della elaborazione (trasformazione)

Dettagli

Dall algoritmo al programma

Dall algoritmo al programma Dall algoritmo al programma Il concetto di algoritmo Un algoritmo è una sequenza di passi necessari per risolvere un problema o eseguire una computazione In alcuni casi, lo stesso problema/computazione

Dettagli

Elaboratore Elettronico

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 rre altri oggetti

Dettagli

Sommario. Problema computazionale Sviluppo software Algoritmi. Istruzioni Sequenziali, Condizionali, Cicliche; Javascript

Sommario. Problema computazionale Sviluppo software Algoritmi. Istruzioni Sequenziali, Condizionali, Cicliche; Javascript Sommario Problema computazionale Sviluppo software Algoritmi Diagrammi di Flusso; Pseudo Codice Istruzioni Sequenziali, Condizionali, Cicliche; Javascript 1 Il Problema computazionale È computazionale

Dettagli

Algoritmi e Programmi

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

Dettagli

MODULO 1. Prof. Onofrio Greco. Prof. Greco Onofrio

MODULO 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

Dettagli

Lezione 5. La macchina universale

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=

Dettagli

Algoritmi e (cenni sul) calcolatore

Algoritmi e (cenni sul) calcolatore Algoritmi e (cenni sul) calcolatore Fondamenti di Informatica Cos è l informatica? q È la scienza che si occupa della rappresentazione dell informazione e della sua elaborazione e gestione Si occupa dell

Dettagli

ALGORITMI: PROPRIETÀ FONDAMENTALI

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

Dettagli

Corso di Matematica per la Chimica. Dott.ssa Maria Carmela De Bonis a.a

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

Dettagli

Analisi strutturata 1

Analisi strutturata 1 Gli algoritmi Analisi e programmazione Gli algoritmi Proprietà ed esempi Costanti e variabili, assegnazione, istruzioni, proposizioni e predicati Vettori e matrici I diagrammi a blocchi Analisi strutturata

Dettagli

LA METAFORA DELL UFFICIO

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

Dettagli

Capitolo 3 L elaborazione e la strutturazione dell informazione

Capitolo 3 L elaborazione e la strutturazione dell informazione Capitolo 3 L elaborazione e la strutturazione dell informazione Problemi e algoritmi Definire il problema Eliminare le ambiguità nella formulazione del problema Individuare il risultato che si vuole ottenere,

Dettagli

Strutture di Controllo

Strutture di Controllo Introduzione Strutture di Controllo per strutture condizionali e cicliche Quando si affronta la programmazione si devono indicare al computer delle istruzioni da eseguire. Se il computer potesse comprendere

Dettagli

Algoritmi. Andrea Passerini Conoscenze informatiche e relazionali Corso di laurea in Scienze dell Ingegneria Edile

Algoritmi. Andrea Passerini Conoscenze informatiche e relazionali Corso di laurea in Scienze dell Ingegneria Edile Algoritmi Andrea Passerini passerini@dsi.unifi.it Conoscenze informatiche e relazionali Corso di laurea in Scienze dell Ingegneria Edile Elaboratore Un elaboratore o computer è una macchina digitale, elettronica,

Dettagli

Come scrivere bene codice? (1 di 1)

Come scrivere bene codice? (1 di 1) DIAGRMMI DI FLUSSO Come scrivere bene codice? (1 di 1) Prima di iniziare a scrivere un programma: Acquisire profonda comprensione del problema; Progettare un approccio per la risoluzione del problema.

Dettagli

Introduzione alla Programmazione. Informatica 1 / 33

Introduzione alla Programmazione. Informatica 1 / 33 Introduzione alla Informatica 1 / 33 Analisi e Computer: esegue programmi per risolvere problemi Dal problema alla soluzione: Formulazione del problema Sviluppo di un algoritmo che risolve il problema

Dettagli

generalità concetti di base

generalità concetti di base generalità concetti di base cosa significa informatica? scienza dell informazione e l informazione giornalistica? scienza dei computer (dall inglese computer science) per i progettisti di computer? scienza

Dettagli

Linguaggi algoritmici A. Ferrari

Linguaggi algoritmici A. Ferrari Linguaggi algoritmici A. Ferrari Caratteristiche di un linguaggio algoritmico Non ambiguità Capacità di esplicitare il flusso di esecuzione delle istruzioni Deve contenere istruzioni di tipo: operativo

Dettagli

INFORmazione+autoMATICA. Perché saperne di piu? Le fasi della programmazione. Cosa intendiamo per programmazione

INFORmazione+autoMATICA. Perché saperne di piu? Le fasi della programmazione. Cosa intendiamo per programmazione INFORmazione+autoMATICA Perché saperne di piu? Calcolatore: un supporto per la rappresentazione di informazione che può: I raccogliere impressionanti quantità di dati I eseguire velocemente e con precisione

Dettagli

Informatica. Informatica. Problema - soluzione. Algoritmi, dati e programmi. Introduzione ai concetti di: Distinguiamo tra: problema

Informatica. 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

Dettagli

Il Concetto di Algoritmo Corso di Informatica Laurea in Fisica

Il Concetto di Algoritmo Corso di Informatica Laurea in Fisica Il Concetto di Algoritmo Corso di Informatica Laurea in Fisica prof. ing. Corrado Santoro A.A. 2010-11 Esempio: risolviamo le equazioni di secondo grado ax 2 + bx + c = 0 La formula risolutiva è: x= b±

Dettagli

SISTEMI DI ELABORAZIONE DELLE INFORMAZIONI Algoritmi e programmazione Prof. Andrea Borghesan

SISTEMI DI ELABORAZIONE DELLE INFORMAZIONI Algoritmi e programmazione Prof. Andrea Borghesan SISTEMI DI ELABORAZIONE DELLE INFORMAZIONI Algoritmi e programmazione Prof. Andrea Borghesan venus.unive.it/borg borg@unive.it Ricevimento mercoledì, 14.00-15.30. Studio 34, dip. statistica Modalità esame:

Dettagli

Linguaggi, Traduttori e le Basi della Programmazione

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

Dettagli