Informatica. Richiami. Diagrammi di flusso. Algoritmi, programmi e dati. Algoritmi e diagrammi di flusso. per le lauree triennali

Dimensione: px
Iniziare la visualizzazioe della pagina:

Download "Informatica. Richiami. Diagrammi di flusso. Algoritmi, programmi e dati. Algoritmi e diagrammi di flusso. per le lauree triennali"

Transcript

1 Informatica per le lauree triennali ESERCITAZIOE 10 Algoritmi e diagrammi di flusso Richiami ESERCITAZIOE 10 ALGORITMI E DIAGRAMMI DI FLUSSO 1 ESERCITAZIOE 10 ALGORITMI E DIAGRAMMI DI FLUSSO Algoritmi, programmi e dati Diagrammi di flusso Calcolatore = macchina che svolge rapidamente operazioni elementari Algoritmo = insieme di istruzioni che indica come svolgere operazioni complesse su dei dati attraverso successioni di operazioni elementari Programma = algoritmo in un linguaggio comprensibile dal computer. Dato = informazione da elaborare rappresentata in un formato che consenta al programma di operare su di essa. metti x+y in y metti x-1 in x x = 0 Blocchi di elaborazione contengo sequenze di azioni Blocchi decisionali contengo una condizione booleana; se vera, si segue la freccia, se falsa si segue la freccia. ESERCITAZIOE 10 ALGORITMI E DIAGRAMMI DI FLUSSO 3 ESERCITAZIOE 10 ALGORITMI E DIAGRAMMI DI FLUSSO 4

2 Strutture di controllo principali Strutture di controllo principali sequenza selezione iterazione ESERCITAZIOE 10 ALGORITMI E DIAGRAMMI DI FLUSSO 5 ESERCITAZIOE 10 ALGORITMI E DIAGRAMMI DI FLUSSO 6 Esempio di decomposizione modulare Simboli principali o elaborazione decisione connessione ESERCITAZIOE 10 ALGORITMI E DIAGRAMMI DI FLUSSO 7 ESERCITAZIOE 10 ALGORITMI E DIAGRAMMI DI FLUSSO 8

3 Esempio di programma strutturato procedura programma principale chiamata di procedura ESERCITAZIOE 10 ALGORITMI E DIAGRAMMI DI FLUSSO 9 Processo di sviluppo di un programma Il processo di sviluppo di un programma prevede le seguenti fasi: analisi del problema e specifica funzionale specificazione dei dati in ingresso e in uscita defne dell algoritmo risolutivo identificazione e formalizzazione di una soluzione, cioè dei contenitori di dati necessari e delle relative operazioni descrizione con un diagramma di flusso o con altro formalismo preciso e n ambiguo della successione di operazioni da eseguire. traduzione del diagramma di flusso in un programma in un linguaggio di programmazione ad alto livello ; compilazione traduzione in linguaggio macchina; verifica esecuzione del programma. ESERCITAZIOE 10 ALGORITMI E DIAGRAMMI DI FLUSSO 10 Esercizi di sviluppo di algoritmi orientati alla programmazione Partiamo dall analisi del problema Scriviamo la specifica funzionale Introduciamo i contenitori di dati necessari e le relative operazioni elementari Scriviamo l algoritmo che opera su tali dati con un diagramma di flusso Esempio 1 ESERCITAZIOE 10 ALGORITMI E DIAGRAMMI DI FLUSSO 11 ESERCITAZIOE 10 ALGORITMI E DIAGRAMMI DI FLUSSO 1

4 A) Problema e analisi del problema Esempio di analisi del problema L analisi del problema è il primo passo; deve fornire un me e una breve descrizione di cosa si vuol fare; un elenco di requisiti: richieste a cui deve soddisfare il programma Problema telefonata Descrizione: vogliamo chiamare un abbonato con il telefo. Requisiti, in cui prevediamo i diversi casi: la telefonata viene eseguita con successo messaggio telefonata riuscita la telefonata n può essere portata a termine messaggio telefonata n riuscita ESERCITAZIOE 10 ALGORITMI E DIAGRAMMI DI FLUSSO 13 ESERCITAZIOE 10 ALGORITMI E DIAGRAMMI DI FLUSSO 14 B) Specifica funzionale Una specifica funzionale indica quali so i dati iniziali, cioè quelli da elaborare detti anche ingressi all algoritmo che si vuole, in funzione degli ingressi detto anche uscita dell algoritmo Esempio: specifica funzionale TELEFOATA: specifica funzionale Argomenti o ingressi: : numero da comporre Risultati o uscite: messaggio telefonata riuscita messaggio telefonata n riuscita ESERCITAZIOE 10 ALGORITMI E DIAGRAMMI DI FLUSSO 15 ESERCITAZIOE 10 ALGORITMI E DIAGRAMMI DI FLUSSO 16

5 C) I contenitori di dati Un algoritmo ha bisog di tener traccia di ingressi e risultati: sia il finale sia eventuali risultati intermedi Allo scopo, usa dei contenitori di dati I contenitori di dati I contenitori di dati utilizzati per i risultati intermedi dipendo dall algoritmo quindi, a me di casi assai elementari, è necessario avere già un idea dell algoritmo per determinarli difficilmente so TUTTI prevedibili sin dall ; man ma che l algoritmo prende forma, si posso aggiungere al volo nuovi contenitori ESERCITAZIOE 10 ALGORITMI E DIAGRAMMI DI FLUSSO 17 ESERCITAZIOE 10 ALGORITMI E DIAGRAMMI DI FLUSSO 18 I contenitori utilizzati da TELEFOATA Di quali contenitori abbiamo bisog per TELEFOATA? Sicuramente di quello per contenere i dati di ingresso ed il 1 contenitore per (ingresso) Eventuali contenitori per i risultati intermedi Contenitore per il finale Relativamente agli ingressi, abbiamo il contenitore: : int Relativamente all uscita, abbiamo il contenitore: m : string m In blu indichiamo il me del contenitore, in rosso il numero contenuto in esso Il tipo int corrisponde ai numeri interi; le operazioni che assumiamo disponibili per esso so le solite: somma, prodotto,. ESERCITAZIOE 10 ALGORITMI E DIAGRAMMI DI FLUSSO 19 ESERCITAZIOE 10 ALGORITMI E DIAGRAMMI DI FLUSSO 0

6 D) L algoritmo: primo passo L idea dell algoritmo di soluzione di TELEFOATA Descrivere brevemente l idea dell algoritmo cioè i passi da eseguire per giungere alla soluzione usando i contenitori di dati e le operazioni disponibili su di essi in al tipo di dati, a grandi linee Può darsi che una prima idea sia già stata raggiunta per trovare i contenitori dati più appropriati in tal caso si procede ad un eventuale raffinamento dell idea Sollevo il ricevitore analizzo i vari casi di segnale: assente presente se posso, procedo componendo il numero di nuovo analizzo i vari casi: e caso per caso costruisco il messaggio da inviare in uscita. ESERCITAZIOE 10 ALGORITMI E DIAGRAMMI DI FLUSSO 1 ESERCITAZIOE 10 ALGORITMI E DIAGRAMMI DI FLUSSO L idea dell algoritmo di soluzione di TELEFOATA Diagramma di flusso Più in dettaglio: il telefo n dà segnale quando solleviamo la cornetta, n possiamo procedere e mettiamo giù altrimenti possiamo comporre il numero se il segnale è occupato o assente, n possiamo procedere e mettiamo giù altrimenti, aspettiamo la risposta se n arriva entro 10 squilli, mettiamo giù altrimenti parliamo e poi mettiamo giù Passiamo al diagramma di flusso: Messaggio "Telefonata n riuscita". Leggere il numero da comporre. Sollevare il ricevitore. segnale? Comporre il numero libero? risposta? messaggio m ESERCITAZIOE 10 ALGORITMI E DIAGRAMMI DI FLUSSO 3 ESERCITAZIOE 10 ALGORITMI E DIAGRAMMI DI FLUSSO 4

7 Diagramma di flusso Messaggio "Telefonata n riuscita". risposta? Parlare. finito? Messaggio "Telefonata riuscita". Appendere il ricevitore ESERCITAZIOE 10 ALGORITMI E DIAGRAMMI DI FLUSSO 5 messaggio m Messaggio "Telefonata n riuscita". Leggere il numero da comporre. Sollevare il ricevitore. segnale? Comporre il numero libero? risposta? ESERCITAZIOE 10 ALGORITMI E DIAGRAMMI DI FLUSSO messaggio Leggere il numero da comporre. Sollevare il ricevitore. Messaggio "Telefonata n riuscita". segnale? Comporre il numero libero? risposta? ESERCITAZIOE 10 ALGORITMI E DIAGRAMMI DI FLUSSO messaggio m Messaggio "Telefonata n riuscita". risposta? Parlare. finito? Messaggio "Telefonata riuscita". Appendere il ricevitore ESERCITAZIOE 10 ALGORITMI E DIAGRAMMI DI FLUSSO messaggio T. n r.

8 Messaggio "Telefonata n riuscita". risposta? Parlare. finito? Messaggio "Telefonata riuscita". Appendere il ricevitore messaggio T. n r. Messaggio "Telefonata n riuscita". risposta? Parlare. finito? Messaggio "Telefonata riuscita". Appendere il ricevitore messaggio T. n r. ESERCITAZIOE 10 ALGORITMI E DIAGRAMMI DI FLUSSO 9 ESERCITAZIOE 10 ALGORITMI E DIAGRAMMI DI FLUSSO 30 A) analisi del problema Esempio Problema conversione gradi C <-> F Descrizione: vogliamo convertire in gradi centigradi la temperatura espressa in gradi Fahrenheit e viceversa. Requisiti: dato un numero (temperatura) e un opzione (C->F o F->C), il programma calcolerà la conversione: T1 in C = T in F oppure, T1 in F = T in C ESERCITAZIOE 10 ALGORITMI E DIAGRAMMI DI FLUSSO 31 ESERCITAZIOE 10 ALGORITMI E DIAGRAMMI DI FLUSSO 3

9 Esempio: specifica funzionale GRADI: specifica funzionale Argomenti o ingressi: T : numero reale, da convertire o : opzione di conversione 1 = C -> F = F -> C Risultati o uscite: T in C = T in F oppure, T in F = T in C I contenitori utilizzati da COVERSIOE GRADI Di quali contenitori abbiamo bisog? Sicuramente di quelli per contenere i dati di ingresso contenitori per T e o (ingressi) T sarà di tipo float, o può essere di tipo bool Eventuali contenitori per i risultati intermedi Il contenitore per il finale T, di tipo float ESERCITAZIOE 10 ALGORITMI E DIAGRAMMI DI FLUSSO 33 ESERCITAZIOE 10 ALGORITMI E DIAGRAMMI DI FLUSSO 34 Diagramma di flusso (ingressi) Metti T in temperatura. Metti O in opzione. opzione = da C a F Metti il valore di T. 9/5 + 3 in. Stampa. Metti il valore di (T - 3) * 5/9 in. Stampa. ESERCITAZIOE 10 ALGORITMI E DIAGRAMMI DI FLUSSO 35 T T O O T (ingressi) Metti T in temperatura. Metti O in opzione. opzione = da C a F Metti il valore di T. 9/5 + 3 in. Stampa. Metti il valore di (T - 3) * 5/9 in. Stampa. ESERCITAZIOE 10 ALGORITMI E DIAGRAMMI DI FLUSSO 36 T 10 O C->F

10 (ingressi) Metti T in temperatura. Metti O in opzione. opzione = da C a F Metti il valore di T. 9/5 + 3 in. Stampa. Metti il valore di (T - 3) * 5/9 in. Stampa. ESERCITAZIOE 10 ALGORITMI E DIAGRAMMI DI FLUSSO 37 T 10 O C->F (ingressi) Metti T in temperatura. Metti O in opzione. opzione = da C a F Metti il valore di T. 9/5 + 3 in. Stampa. Metti il valore di (T - 3) * 5/9 in. Stampa. ESERCITAZIOE 10 ALGORITMI E DIAGRAMMI DI FLUSSO 38 T 10 O C->F 50 (ingressi) Metti T in temperatura. Metti O in opzione. opzione = da C a F Metti il valore di T. 9/5 + 3 in. Stampa. Metti il valore di (T - 3) * 5/9 in. Stampa. ESERCITAZIOE 10 ALGORITMI E DIAGRAMMI DI FLUSSO 39 T 10 O C->F 50 Esempio 3 ESERCITAZIOE 10 ALGORITMI E DIAGRAMMI DI FLUSSO 40

11 A) Analisi del problema Problema MAGGIORE Descrizione: vogliamo il maggiore tra due numeri interi, x e y. Requisiti in cui prevediamo i diversi casi: se x - y > 0, il maggiore è x se x - y < 0, il maggiore è y se x - y = 0, x e y so uguali B) Specifica funzionale Una specifica funzionale indica quali so gli argomenti o ingressi che si vuole, in funzione degli ingressi Argomenti o ingressi: x : numero intero y : numero intero Il o uscita è maggiore = x, se x-y > 0 maggiore = y, se x-y < 0 ESERCITAZIOE 10 ALGORITMI E DIAGRAMMI DI FLUSSO 41 ESERCITAZIOE 10 ALGORITMI E DIAGRAMMI DI FLUSSO 4 I contenitori utilizzati dal stro algoritmo Di quali contenitori abbiamo bisog? Sicuramente di quelli per contenere i dati di ingresso ed il Contenitore del primo numero (ingresso) Contenitore del secondo numero (ingresso) Contenitore del (uscita) Dei contenitori per i risultati intermedi Contenitore della differenza Abbiamo bisog di x, y, dif, maggiore: x a y b dif d maggiore ingressi ris. intermedi ris. finali So tutti contenitori di dati; i loro contenuti so di tipo intero e su di essi possiamo applicare le operazioni sugli interi somma, prodotto, ecc. Abbiamo bisog di operazioni (somme, confronti,...) m ESERCITAZIOE 10 ALGORITMI E DIAGRAMMI DI FLUSSO 43 ESERCITAZIOE 10 ALGORITMI E DIAGRAMMI DI FLUSSO 44

12 Passiamo all algoritmo: l idea Leggo gli ingressi e li metto in x e y Calcolo la differenza d = x - y e la metto in dif Confronto dif con 0 Se dif > 0, scrivo max è x e metto x in maggiore Se dif < 0, scrivo max è y e metto y in maggiore Fine a questo punto ho finito e maggiore contiene il finale L idea si traduce nel seguente diagramma di flusso ESERCITAZIOE 10 ALGORITMI E DIAGRAMMI DI FLUSSO 45 ESERCITAZIOE 10 ALGORITMI E DIAGRAMMI DI FLUSSO 46 Diagramma di flusso x:int y:int Assegna ad x e y i valori d ingresso Metti il valore di x-y in dif dif < 0 Messaggio: max è y Metti il valore di y in maggiore dif:int maggiore:int Messaggio: max è x Metti il valore di x in maggiore ESERCITAZIOE 10 ALGORITMI E DIAGRAMMI DI FLUSSO 47 Valori in ingresso: x: 10 y: 10 a ma ESERCITAZIOE 10 ALGORITMI E DIAGRAMMI DI FLUSSO 48

13 x:int y:int Assegna ad x e y i valori d ingresso dif:int Ingresso: 10, 10 x:int y:int Assegna ad x e y i valori d ingresso dif:int Metti il valore di x-y in dif maggiore:int Metti il valore di x-y in dif maggiore:int dif < 0 Messaggio: max è y Metti il valore di y in maggiore Messaggio: max è x Metti il valore di x in maggiore ESERCITAZIOE 10 ALGORITMI E DIAGRAMMI DI FLUSSO 49 dif < 0 Messaggio: max è y Metti il valore di y in maggiore Messaggio: max è x Metti il valore di x in maggiore ESERCITAZIOE 10 ALGORITMI E DIAGRAMMI DI FLUSSO 50 x:int y:int Assegna ad x e y i valori d ingresso Metti il valore di x-y in dif dif < 0 Messaggio: max è y Metti il valore di y in maggiore dif:int maggiore:int Messaggio: max è x Metti il valore di x in maggiore ESERCITAZIOE 10 ALGORITMI E DIAGRAMMI DI FLUSSO 51 0 x:int y:int Assegna ad x e y i valori d ingresso Metti il valore di x-y in dif dif < 0 Messaggio: max è y Metti il valore di y in maggiore dif:int maggiore:int Messaggio: max è x Metti il valore di x in maggiore ESERCITAZIOE 10 ALGORITMI E DIAGRAMMI DI FLUSSO 5 0

14 x:int y:int Assegna ad x e y i valori d ingresso Metti il valore di x-y in dif dif < 0 Messaggio: max è y Metti il valore di y in maggiore dif:int maggiore:int Messaggio: max è x Metti il valore di x in maggiore ESERCITAZIOE 10 ALGORITMI E DIAGRAMMI DI FLUSSO x:int y:int Assegna ad x e y i valori d ingresso Metti il valore di x-y in dif dif < 0 Messaggio: max è y Metti il valore di y in maggiore dif:int maggiore:int Messaggio: max è x Metti il valore di x in maggiore ESERCITAZIOE 10 ALGORITMI E DIAGRAMMI DI FLUSSO Esempio 4 A) analisi del problema Problema prodotto Descrizione: vogliamo calcolare il prodotto di due numeri. Requisiti in cui prevediamo i diversi casi : dati due numeri x e y, il programma calcolerà il prodotto x * y, utilizzando l addizione se y = 0, il prodotto è 0 se y > 0, il prodotto è x + x + + x ( y volte) ESERCITAZIOE 10 ALGORITMI E DIAGRAMMI DI FLUSSO 55 ESERCITAZIOE 10 ALGORITMI E DIAGRAMMI DI FLUSSO 56

15 B) Specifica funzionale I contenitori utilizzati dal stro algoritmo Una specifica funzionale indica quali so gli argomenti o ingressi che si vuole, in funzione degli ingressi Argomenti o ingressi: x : numero intero y : numero intero Il o uscita è prodotto = 0, se y = 0 prodotto = x * y, se y > 0 Di quali contenitori abbiamo bisog? Sicuramente di quelli per contenere i dati di ingresso ed il Contenitore del primo numero (ingresso) Contenitore del secondo numero (ingresso) Contenitore del (uscita) ESERCITAZIOE 10 ALGORITMI E DIAGRAMMI DI FLUSSO 57 ESERCITAZIOE 10 ALGORITMI E DIAGRAMMI DI FLUSSO 58 Abbiamo bisog di x, y, prodotto: Passiamo all algoritmo: l idea x a y b prodotto p Leggo gli ingressi e li metto in x e y Se y = 0, ingressi ris. finali So tutti contenitori di dati; i loro contenuti so di tipo intero e su di essi possiamo applicare le operazioni sugli interi somma, confronto, ecc. oi assumeremo di disporre della somma, ma n del prodotto. metto 0 in prodotto e scrivo il prodotto è 0 Se y > 0, calcolo il prodotto con un numero opportu di addizioni (iterazione) metto il in prodotto scrivo il prodotto è prodotto Fine ESERCITAZIOE 10 ALGORITMI E DIAGRAMMI DI FLUSSO 59 ESERCITAZIOE 10 ALGORITMI E DIAGRAMMI DI FLUSSO 60

16 L idea si traduce nel seguente diagramma di flusso ESERCITAZIOE 10 ALGORITMI E DIAGRAMMI DI FLUSSO 61 Diagramma di flusso per il prodotto a * b (b > 0) (ingressi) Leggi a. Leggi b. Metti 0 in ris. b = 0 Metti il valore di (ris + a ) in ris. Metti il valore di (b - 1) in ris. Stampa ris. ESERCITAZIOE 10 ALGORITMI E DIAGRAMMI DI FLUSSO 6 a b ris ota: b svolge il ruolo di contatore. Analisi del problema Esempio 5 Problema COVERSIOE BASE Vogliamo un algoritmo che operi la conversione di un numero da una in B alla in 10. L algoritmo sarà programmato in un linguaggio di programmazione. ESERCITAZIOE 10 ALGORITMI E DIAGRAMMI DI FLUSSO 63 ESERCITAZIOE 10 ALGORITMI E DIAGRAMMI DI FLUSSO 64

17 Specifica funzionale Una specifica funzionale indica quali so gli argomenti o ingressi che si vuole, in funzione degli ingressi. Argomenti o ingressi: B : compresa fra e 16 R : una in B Il o uscita dev essere un numero tale che è la in 10 del numero rappresentato da R nella B Di quali contenitori avrà bisog il stro algoritmo? Sicuramente di quelli per contenere i dati di ingresso ed il : Contenitore della (ingresso) Contenitore della (ingresso) Contenitore del (uscita) ESERCITAZIOE 10 ALGORITMI E DIAGRAMMI DI FLUSSO 65 ESERCITAZIOE 10 ALGORITMI E DIAGRAMMI DI FLUSSO 66 Se n teniamo conto delle operazioni, abbiamo: c m c m 1...c 1 c 0 Dalla specifica: = c m. B m + c m 1. B m c 1. B 1 + c 0. B 0 B Abbiamo bisog, per i: 0,...n, del numero c i rappresentato dalla cifra c i Abbiamo bisog di somme, prodotti (e potenze?) Per quanto riguarda, lo consideriamo contenitore di dati; il suo contenuto è di tipo array di interi e sugli elementi dell array possiamo applicare le operazioni sugli interi somma, prodotto, ecc. Per quanto riguarda, il suo contenuto è di tipo intero e su di esso possiamo applicare le operazioni sugli interi. ESERCITAZIOE 10 ALGORITMI E DIAGRAMMI DI FLUSSO 67 ESERCITAZIOE 10 ALGORITMI E DIAGRAMMI DI FLUSSO 68

18 Passiamo all algoritmo: l idea Passiamo all algoritmo: l idea Parto col contenuto iniziale di = 0 considero la cifra di più significativa, c m, ed uso il suo valore per aggiornare Esempio: sommo c. m B m al valore iniziale 0 di e ora contiene c. m B m Considero la cifra immediatamente successiva, c m-1, ed uso il suo valore per aggiornare sommo c. m-1 B m-1 al valore precedente c. m B m di e ora contiene c. m B m + c. m-1 B m-1 Proseguo co fi a trattare la cifra c 0 a questo punto ho finito e contiene il finale ESERCITAZIOE 10 ALGORITMI E DIAGRAMMI DI FLUSSO 69 ESERCITAZIOE 10 ALGORITMI E DIAGRAMMI DI FLUSSO 70 L idea si traduce nel seguente diagramma di flusso ESERCITAZIOE 10 ALGORITMI E DIAGRAMMI DI FLUSSO 71 Usa un indice n inizialmente uguale alla posizione più significativa di Poni il contenuto iniziale di = 0 Tratta la cifra di indice n di, aggiornando il contenuto di O Decrementa l indice n di 1 n < 0 SI indice n: contenitore inventato al volo COMMETO: Quando arrivo qui, contiene il parziale relativo alla elaborazione delle cifre fra la posizione più significativa ed n+1 ota: Tratta la cifra di posto n ancora da dettagliare ESERCITAZIOE 10 ALGORITMI E DIAGRAMMI DI FLUSSO 7

19 Un modo possibile di dettagliare Tratta Tratta la cifra di indice n di, aggiornando il contenuto di si realizza come segue si somma a il valore della cifra di posto n della, moltiplicato per la B della elevata ad n ESERCITAZIOE 10 ALGORITMI E DIAGRAMMI DI FLUSSO 73 Diagramma di flusso (ingressi) Metti c m c m 1...c 1 c 0 in. Metti B in. Metti m in posizione. Metti 0 in. Metti il valore di c posizione. B posizione + in. Metti il valore di posizione - 1 in posizione. posizione < 0 Stampa. ESERCITAZIOE 10 ALGORITMI E DIAGRAMMI DI FLUSSO 74 c m c m 1...c 1 c 0 B posizione m Convertire 1101 in 10 a ma. 1. Metti 1101 in. Metti in. Metti 3 in posizione. Metti 0 in. Metti il valore di c posizione. B posizione + in. Metti il valore di posizione - 1 in posizione. posizione < 0 Stampa. posizione ESERCITAZIOE 10 ALGORITMI E DIAGRAMMI DI FLUSSO 75 ESERCITAZIOE 10 ALGORITMI E DIAGRAMMI DI FLUSSO 76

20 .. Metti 1101 in. Metti in. Metti 3 in posizione. Metti 0 in. Metti il valore di c posizione. B posizione + in. Metti il valore di posizione - 1 in posizione. posizione < 0 Stampa posizione Metti 1101 in. Metti in. Metti 3 in posizione. Metti 0 in. Metti il valore di c posizione. B posizione + in. Metti il valore di posizione - 1 in posizione. posizione < 0 Stampa posizione 8 ESERCITAZIOE 10 ALGORITMI E DIAGRAMMI DI FLUSSO 77 ESERCITAZIOE 10 ALGORITMI E DIAGRAMMI DI FLUSSO Metti 1101 in. Metti in. Metti 3 in posizione. Metti 0 in. Metti il valore di c posizione. B posizione + in. Metti il valore di posizione - 1 in posizione. posizione < 0 Stampa posizione Metti 1101 in. Metti in. Metti 3 in posizione. Metti 0 in. Metti il valore di c posizione. B posizione + in. Metti il valore di posizione - 1 in posizione. posizione < 0 Stampa posizione 8 ESERCITAZIOE 10 ALGORITMI E DIAGRAMMI DI FLUSSO 79 ESERCITAZIOE 10 ALGORITMI E DIAGRAMMI DI FLUSSO 80

21 . 6. Metti 1101 in. Metti in. Metti 3 in posizione. Metti 0 in. Metti il valore di c posizione. B posizione + in. Metti il valore di posizione - 1 in posizione. posizione < 0 Stampa posizione 1 1. ESERCITAZIOE 10 ALGORITMI E DIAGRAMMI DI FLUSSO 81 ESERCITAZIOE 10 ALGORITMI E DIAGRAMMI DI FLUSSO Metti 1101 in. Metti in. Metti 3 in posizione. Metti 0 in. Metti il valore di c posizione. B posizione + in. Metti il valore di posizione - 1 in posizione. posizione < 0 Stampa posizione Metti 1101 in. Metti in. Metti 3 in posizione. Metti 0 in. Metti il valore di c posizione. B posizione + in. Metti il valore di posizione - 1 in posizione. posizione < 0 Stampa posizione ESERCITAZIOE 10 ALGORITMI E DIAGRAMMI DI FLUSSO 83 ESERCITAZIOE 10 ALGORITMI E DIAGRAMMI DI FLUSSO 84

22 . 14. Metti 1101 in. Metti in. Metti 3 in posizione. Metti 0 in. Metti il valore di c posizione. B posizione + in. Metti il valore di posizione - 1 in posizione. posizione < 0 Stampa ESERCITAZIOE 10 ALGORITMI E DIAGRAMMI DI FLUSSO 85 posizione Metti 1101 in. Metti in. Metti 3 in posizione. Metti 0 in. Metti il valore di c posizione. B posizione + in. Metti il valore di posizione - 1 in posizione. posizione < 0 Stampa ESERCITAZIOE 10 ALGORITMI E DIAGRAMMI DI FLUSSO 86 posizione -1 13

Sistemi Web per il turismo - lezione 3 -

Sistemi Web per il turismo - lezione 3 - Sistemi Web per il turismo - lezione 3 - Software Si definisce software il complesso di comandi che fanno eseguire al computer delle operazioni. Il termine si contrappone ad hardware, che invece designa

Dettagli

Appunti del corso di Informatica 1 (IN110 Fondamenti) 2 Algoritmi e diagrammi di flusso

Appunti del corso di Informatica 1 (IN110 Fondamenti) 2 Algoritmi e diagrammi di flusso Università Roma Tre Facoltà di Scienze M.F.N. 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)

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 41 Sviluppo di programmi Per la costruzione di un programma

Dettagli

Informatica Teorica. Macchine a registri

Informatica Teorica. Macchine a registri Informatica Teorica Macchine a registri 1 Macchine a registri RAM (Random Access Machine) astrazione ragionevole di un calcolatore nastro di ingresso nastro di uscita unità centrale in grado di eseguire

Dettagli

Esercitazioni di Reti Logiche. Lezione 1 Rappresentazione dell'informazione. Zeynep KIZILTAN zkiziltan@deis.unibo.it

Esercitazioni di Reti Logiche. Lezione 1 Rappresentazione dell'informazione. Zeynep KIZILTAN zkiziltan@deis.unibo.it Esercitazioni di Reti Logiche Lezione 1 Rappresentazione dell'informazione Zeynep KIZILTAN zkiziltan@deis.unibo.it Introduzione Zeynep KIZILTAN Si pronuncia Z come la S di Rose altrimenti, si legge come

Dettagli

Appunti di Sistemi Elettronici

Appunti di Sistemi Elettronici Prof.ssa Maria Rosa Malizia 1 LA PROGRAMMAZIONE La programmazione costituisce una parte fondamentale dell informatica. Infatti solo attraverso di essa si apprende la logica che ci permette di comunicare

Dettagli

Il calcolatore. Architettura di un calcolatore (Hardware)

Il calcolatore. Architettura di un calcolatore (Hardware) Il calcolatore Prima parlare della programmazione, e' bene fare una brevissima introduzione su come sono strutturati i calcolatori elettronici. I calcolatori elettronici sono stati progettati e costruiti

Dettagli

Laurea triennale - Comunicazione&DAMS - UNICAL. Dr. Marco Manna 1

Laurea triennale - Comunicazione&DAMS - UNICAL. Dr. Marco Manna 1 Corso di INFORMATICA Laurea triennale - Comunicazione&DAMS Dr. Marco Manna 1 1 Dipartimento di Matematica Università della Calabria Corso di laurea intercalsse in COMUNICAZIONE&DAMS http://elleboro.unical.it/drupalab/informatica2009/

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

(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

Dettagli

PROGRAMMA DI SCIENZE E TECNOLOGIE APPLICATE 2015/2016 Classe 2ª Sez. C Tecnologico

PROGRAMMA DI SCIENZE E TECNOLOGIE APPLICATE 2015/2016 Classe 2ª Sez. C Tecnologico ISTITUTO TECNICO STATALE MARCHI FORTI Viale Guglielmo Marconi n 16-51017 PESCIA (PT) - ITALIA PROGRAMMA DI SCIENZE E TECNOLOGIE APPLICATE 2015/2016 Classe 2ª Sez. C Tecnologico Docente PARROTTA GIOVANNI

Dettagli

Appunti del corso di Informatica 1 (IN1 Fondamenti) 2 Introduzione alla programmazione

Appunti del corso di Informatica 1 (IN1 Fondamenti) 2 Introduzione alla programmazione Università Roma Tre Facoltà di Scienze M.F.N. Corso di Laurea in Matematica Appunti del corso di Informatica 1 (IN1 Fondamenti) 2 Introduzione alla programmazione Marco Liverani (liverani@mat.uniroma3.it)

Dettagli

Algoritmi, dati e programmi

Algoritmi, dati e programmi 1 Algoritmi, dati e programmi 2 Informatica Informatica: Scienza che studia l informazione e la sua elaborazione. informazione rappresentazione dell informazione (dati) dati elaborazione dei dati tramite

Dettagli

VBA è un linguaggio di scripting derivato da Visual Basic, da cui prende il nome. Come ogni linguaggio ha le sue regole.

VBA è un linguaggio di scripting derivato da Visual Basic, da cui prende il nome. Come ogni linguaggio ha le sue regole. Excel VBA VBA Visual Basic for Application VBA è un linguaggio di scripting derivato da Visual Basic, da cui prende il nome. Come ogni linguaggio ha le sue regole. 2 Prima di iniziare. Che cos è una variabile?

Dettagli

Descrizione di un algoritmo

Descrizione 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

Dettagli

Corso di Laurea in Matematica

Corso di Laurea in Matematica Corso di Laurea in Matematica Laboratorio di Informatica (a.a. 2002-03) Esercizi 1 Docente: Monica Nesi 1. Scrivere un programma in C che, dati in ingresso due numeri naturali, calcola il loro prodotto

Dettagli

Appunti del corso di Informatica 1 (IN110 Fondamenti) 3 Modelli di calcolo

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)

Dettagli

Generalità sugli algoritmi

Generalità sugli algoritmi Appunti di Fondamenti di Informatica Generalità sugli algoritmi La nozione di algoritmo...1 Rappresentazione grafica degli algoritmi...2 Diagrammi di flusso...4 Esempi di algoritmi numerici...6 La strutturazione

Dettagli

Algoritmo. I dati su cui opera un'istruzione sono forniti all'algoritmo dall'esterno oppure sono il risultato di istruzioni eseguite precedentemente.

Algoritmo. I dati su cui opera un'istruzione sono forniti all'algoritmo dall'esterno oppure sono il risultato di istruzioni eseguite precedentemente. Algoritmo Formalmente, per algoritmo si intende una successione finita di passi o istruzioni che definiscono le operazioni da eseguire su dei dati (=istanza del problema): in generale un algoritmo è definito

Dettagli

Matematica con il foglio di calcolo

Matematica con il foglio di calcolo Matematica con il foglio di calcolo Sottotitolo: Classe: V primaria Argomento: Numeri e operazioni Autore: Guido Gottardi, Alberto Battaini Introduzione: l uso del foglio di calcolo offre l opportunità

Dettagli

Richiesta pagina PHP (es: index.php)

Richiesta pagina PHP (es: index.php) PHP PHP = personal home page SERVER Richiesta pagina PHP (es: index.php) Server Web (Apache) in ascolto sulla porta 80, si accorge che la pagina richiesta è una pagina PHP in base all'estensione o con

Dettagli

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

Risolvere un problema significa individuare un procedimento che permetta di arrivare al risultato partendo dai dati Algoritmi Algoritmi Risolvere un problema significa individuare un procedimento che permetta di arrivare al risultato partendo dai dati Il procedimento (chiamato algoritmo) è composto da passi elementari

Dettagli

DI 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

DI 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

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

Dettagli

PIANO DI LAVORO. a.s. 2015 / 2016

PIANO DI LAVORO. a.s. 2015 / 2016 PIANO DI LAVORO a.s. 2015 / 2016 Materia: INFORMATICA Classe: terza informatica- sez. A Data di presentazione: 15/10/2015 DOCENTI FIRMA Cerri Marta Bergamasco Alessandra Posta elettronica: itisleon@tin.it

Dettagli

Algebra di Boole: Concetti di base. Fondamenti di Informatica - D. Talia - UNICAL 1. Fondamenti di Informatica

Algebra di Boole: Concetti di base. Fondamenti di Informatica - D. Talia - UNICAL 1. Fondamenti di Informatica Fondamenti di Informatica Algebra di Boole: Concetti di base Fondamenti di Informatica - D. Talia - UNICAL 1 Algebra di Boole E un algebra basata su tre operazioni logiche OR AND NOT Ed operandi che possono

Dettagli

Introduzione. Informatica B. Daniele Loiacono

Introduzione. Informatica B. Daniele Loiacono Introduzione Informatica B Perchè studiare l informatica? Perchè ha a che fare con quasi tutto quello con cui abbiamo a che fare ogni giorno Perché è uno strumento fondamentale per progettare l innovazione

Dettagli

Corso di Esercitazioni di Programmazione

Corso di Esercitazioni di Programmazione Corso di Esercitazioni di Programmazione Introduzione Dott.ssa Sabina Rossi Informazioni Pagina web del corso: News Orari Mailing list Lezioni Esercitazioni Date esami Risultati esami.. http://www.dsi.unive.it/~prog1

Dettagli

1 introdurre le monete per l importo necessario. 2 selezionare la quantità di zucchero. 3 selezionare la bevanda desiderata

1 introdurre le monete per l importo necessario. 2 selezionare la quantità di zucchero. 3 selezionare la bevanda desiderata Esempi di Problema: Prendere un Caffè al Distributore Università degli Studi di Udine Facoltà di Ingegneria CORSO DI LAUREA IN SCIENZE dell ARCHITETTURA Elementi di Informatica, e Programmi D. Gubiani

Dettagli

ESAME SCRITTO DI ELEMENTI DI INFORMATICA E PROGRAMMAZIONE. 10 Settembre 2013

ESAME SCRITTO DI ELEMENTI DI INFORMATICA E PROGRAMMAZIONE. 10 Settembre 2013 COGNOME E NOME: MATRICOLA: Civile Ambiente e Territorio Non si possono consultare manuali, appunti e calcolatrici. Esercizio 1: Rappresentare i numeri 37 e 90 (in base 10) in notazione binaria in complemento

Dettagli

MATEMATICA e COMPLEMENTI di MATEMATICA

MATEMATICA e COMPLEMENTI di MATEMATICA ALLEGATO N.8_b MATEMATICA e COMPLEMENTI di MATEMATICA DESTINATARI gli studenti delle classi: terze e quarte nuovo ordinamento RISULTATI DI APPRENDIMENTO DELL OBBLIGO D ISTRUZIONE, CHIAVE EUROPEA Padroneggiare

Dettagli

Problem solving elementare su dati vettoriali

Problem solving elementare su dati vettoriali Problem solving elementare su dati vettoriali Introduzione Verifiche su sequenze di dati Selezione o ricerca di dati 2 2006 Politecnico di Torino 1 Introduzione (1/2) I problemi di verifica consistono

Dettagli

Processo di risoluzione di un problema ingegneristico. Processo di risoluzione di un problema ingegneristico

Processo di risoluzione di un problema ingegneristico. Processo di risoluzione di un problema ingegneristico Processo di risoluzione di un problema ingegneristico 1. Capire l essenza del problema. 2. Raccogliere le informazioni disponibili. Alcune potrebbero essere disponibili in un secondo momento. 3. Determinare

Dettagli

LABORATORIO DI PROGRAMMAZIONE 2012 2013 EDIZIONE 1, TURNO B

LABORATORIO DI PROGRAMMAZIONE 2012 2013 EDIZIONE 1, TURNO B LABORATORIO DI PROGRAMMAZIONE 2012 2013 EDIZIONE 1, TURNO B 23.XI.2012 VINCENZO MARRA Indice Esercizio 1 1 Menu 1 Tempo: 35 min. 2 Commento 1 2 Esercizio 2 2 Ordinamento e ricerca binaria con la classe

Dettagli

Gli algoritmi: definizioni e proprietà

Gli algoritmi: definizioni e proprietà Dipartimento di Elettronica ed Informazione Politecnico di Milano Informatica e CAD (c.i.) - ICA Prof. Pierluigi Plebani A.A. 2008/2009 Gli algoritmi: definizioni e proprietà La presente dispensa e da

Dettagli

4 3 4 = 4 x 10 2 + 3 x 10 1 + 4 x 10 0 aaa 10 2 10 1 10 0

4 3 4 = 4 x 10 2 + 3 x 10 1 + 4 x 10 0 aaa 10 2 10 1 10 0 Rappresentazione dei numeri I numeri che siamo abituati ad utilizzare sono espressi utilizzando il sistema di numerazione decimale, che si chiama così perché utilizza 0 cifre (0,,2,3,4,5,6,7,8,9). Si dice

Dettagli

Corso di Laurea in Ingegneria Informatica Analisi Numerica

Corso di Laurea in Ingegneria Informatica Analisi Numerica Corso di Laurea in Ingegneria Informatica Lucio Demeio Dipartimento di Scienze Matematiche 1 2 Analisi degli errori Informazioni generali Libro di testo: J. D. Faires, R. Burden, Numerical Analysis, Brooks/Cole,

Dettagli

Algoritmi di Ricerca. Esempi di programmi Java

Algoritmi di Ricerca. Esempi di programmi Java Fondamenti di Informatica Algoritmi di Ricerca Esempi di programmi Java Fondamenti di Informatica - D. Talia - UNICAL 1 Ricerca in una sequenza di elementi Data una sequenza di elementi, occorre verificare

Dettagli

Elementi di Informatica

Elementi di Informatica Università degli Studi di Udine Facoltà di Ingegneria CORSO DI LAUREA IN SCIENZE dell ARCHITETTURA Elementi di Informatica Algoritmi, e Programmi D. Gubiani 29 marzo 2010 D. Gubiani Algoritmi, e Programmi

Dettagli

Docente: Ivilin Stoianov Assistenti: Michele De Filippo, Alberto Testolin. Lab P150 (Paolotti) sito web: www.stoianov.it Email: info@stoianov.

Docente: Ivilin Stoianov Assistenti: Michele De Filippo, Alberto Testolin. Lab P150 (Paolotti) sito web: www.stoianov.it Email: info@stoianov. Corso di Laurea in Biologia / Biologia Molecolare Università di Padova, AA 2011/2012 Laboratorio CPU Docente: Ivilin Stoianov Assistenti: Michele De Filippo, Alberto Testolin Lab P150 (Paolotti) sito web:

Dettagli

Manuale Cisco IP Phone

Manuale Cisco IP Phone Manuale Cisco IP Phone Introduzione: Questo documento ha intenzione di mostrare come fare e ricevere chiamate, modificare alcune impostazioni e trasferire o mettere in attesa una chiamata. IP Phone: Data

Dettagli

Esercizi di programmazione in C

Esercizi di programmazione in C Esercizi di programmazione in C Esercizio 1 Scrivere un programma in linguaggio C che legga da tastiera una sequenza di lunghezza ignota a priori di numeri interi positivi. Il programma, a partire dal

Dettagli

Gian Luca Marcialis studio degli algoritmi programma linguaggi LINGUAGGIO C

Gian Luca Marcialis studio degli algoritmi programma linguaggi LINGUAGGIO C Università degli Studi di Cagliari Corso di Laurea in Ingegneria Biomedica (Industriale), Chimica, Elettrica, e Meccanica FONDAMENTI DI INFORMATICA 1 http://www.diee.unica.it/~marcialis/fi1 A.A. 2010/2011

Dettagli

Le aree dell informatica

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

Dettagli

PROGETTAZIONE DISCIPLINARE MATEMATICA classe 2^

PROGETTAZIONE DISCIPLINARE MATEMATICA classe 2^ PROGETTAZIONE DISCIPLINARE MATEMATICA classe 2^ PER RICONOSCERE, RAPPRESENTARE E RISOLVERE PROBLEMI I. Q. II. Q. CONTENUTI / ATTIVITA 1 bim. 2 bim. 3 bim. 4 bim. 1a) Individuazione di situazioni problematiche

Dettagli

Progetto Lauree Scientifiche Liceo Classico L.Ariosto, Ferrara Dipartimento di Matematica Università di Ferrara 24 Gennaio 2012

Progetto Lauree Scientifiche Liceo Classico L.Ariosto, Ferrara Dipartimento di Matematica Università di Ferrara 24 Gennaio 2012 Progetto Lauree Scientifiche Liceo Classico L.Ariosto, Ferrara Dipartimento di Matematica Università di Ferrara 24 Gennaio 2012 Concetti importanti da (ri)vedere Programmazione imperativa Strutture di

Dettagli

DAL PROBLEMA ALL'ALGORITMO AL PROGRAMMA SCRITTO IN Come. Scopo principale dell informatica è risolvere problemi con i calcolatori.

DAL PROBLEMA ALL'ALGORITMO AL PROGRAMMA SCRITTO IN Come. Scopo principale dell informatica è risolvere problemi con i calcolatori. DAL PROBLEMA ALL'ALGORITMO AL PROGRAMMA SCRITTO IN Come Scopo principale dell informatica è risolvere problemi con i calcolatori. Non tutti i problemi sono risolvibili con i calcolatori. Si può dimostrato

Dettagli

LINGUAGGI DI PROGRAMMAZIONE

LINGUAGGI DI PROGRAMMAZIONE LINGUAGGI DI PROGRAMMAZIONE Il potere espressivo di un linguaggio è caratterizzato da: quali tipi di dati consente di rappresentare (direttamente o tramite definizione dell utente) quali istruzioni di

Dettagli

SOFTWARE. È l insieme delle istruzioni che è necessario fornire alla macchina per il suo funzionamento. Vi sono due categorie di software:

SOFTWARE. È l insieme delle istruzioni che è necessario fornire alla macchina per il suo funzionamento. Vi sono due categorie di software: 1 SOFTWARE È l insieme delle istruzioni che è necessario fornire alla macchina per il suo funzionamento. Vi sono due categorie di software: SOFTWARE DI SISTEMA (o di base), che deve gestire le funzioni

Dettagli

AE RZT QSO RKPT SQZC

AE RZT QSO RKPT SQZC Laboratorio di Informatica Lezione 1: Introduzione al corso Prof. Riccardo Cassinis Dott. Marzia Tassi Siete seduti nel posto giusto? AE RZT QSO RKPT SQZC PRFGE BERTSZ KDTVSU ZQRPDE 2 1 Prima di cominciare,

Dettagli

Liceo Marie Curie (Meda) Scientifico Classico Linguistico PROGRAMMAZIONE DISCIPLINARE PER COMPETENZE

Liceo Marie Curie (Meda) Scientifico Classico Linguistico PROGRAMMAZIONE DISCIPLINARE PER COMPETENZE Liceo Marie Curie (Meda) Scientifico Classico Linguistico PROGRAMMAZIONE DISCIPLINARE PER COMPETENZE a.s. 2015/16 CLASSE 2^ ASA Indirizzo di studio Liceo scientifico Scienze Applicate Docente Disciplina

Dettagli

APPUNTI SUL LINGUAGGIO DI PROGRAMMAZIONE PASCAL

APPUNTI SUL LINGUAGGIO DI PROGRAMMAZIONE PASCAL APPUNTI SUL LINGUAGGIO DI PROGRAMMAZIONE PASCAL In informatica il Pascal è un linguaggio di programmazione creato da Niklaus Wirth ed é un linguaggio di programmazione strutturata. I linguaggi di programmazione

Dettagli

Algoritmi e basi del C

Algoritmi e basi del C Algoritmi e basi del C Marco D. Santambrogio marco.santambrogio@polimi.it Ver. aggiornata al 9 Marzo 2016 Info logistiche Sito del corso Le lezioni sono TUTTE già online http://home.deib.polimi.it/santambr/dida/ieim/2016/docs.htm

Dettagli

3. Programmazione strutturata (testo di riferimento: Bellini-Guidi)

3. Programmazione strutturata (testo di riferimento: Bellini-Guidi) Corso di Fondamenti di Informatica Corso di Laurea in Ingegneria Meccanica (A-K) 3. (testo di riferimento: Bellini-Guidi) Ing. Agnese Pinto 1 di 28 Linguaggi di programmazione Un programma è un algoritmo

Dettagli

Appunti del corso di Informatica 1. 6 Introduzione al linguaggio C

Appunti del corso di Informatica 1. 6 Introduzione al linguaggio C Università di Roma Tre Dipartimento di Matematica e Fisica Corso di Laurea in Matematica Appunti del corso di Informatica 1 (IN110 Fondamenti) 6 Introduzione al linguaggio C Marco Liverani (liverani@mat.uniroma3.it)

Dettagli

Università degli studi di Roma Tor Vergata Ingegneria Medica Informatica I Programma del Corso

Università degli studi di Roma Tor Vergata Ingegneria Medica Informatica I Programma del Corso Obiettivi formativi Introdurre i principi del funzionamento di un elaboratore e della programmazione. Presentare gli approcci elementari alla soluzione di problemi (algoritmi)e al progetto di strutture

Dettagli

Appunti del corso di Informatica 1 (IN110 Fondamenti) 6 Introduzione al linguaggio C

Appunti del corso di Informatica 1 (IN110 Fondamenti) 6 Introduzione al linguaggio C Università di Roma Tre Facoltà di Scienze M.F.N. Corso di Laurea in Matematica Appunti del corso di Informatica 1 (IN110 Fondamenti) 6 Introduzione al linguaggio C Marco Liverani (liverani@mat.uniroma3.it)

Dettagli

Algoritmi. Maurizio Palesi. Maurizio Palesi 1

Algoritmi. Maurizio Palesi. Maurizio Palesi 1 Algoritmi Maurizio Palesi Maurizio Palesi 1 Cos è Risolvere un problema significa individuare un procedimento che permetta di arrivare al risultato partendo dai dati Un algoritmo è un metodo per la soluzione

Dettagli

2. Spiegare brevemente qual è la funzione del compilatore e la sua importanza per il programmatore.

2. Spiegare brevemente qual è la funzione del compilatore e la sua importanza per il programmatore. 1 Esercizio 1 1. Immaginate di avere una calcolatore che invece che poter rappresentare i classici due valori per ogni bit (0/1) possa rappresentare 7 valori per ogni bit. (a) Quanti bit gli occorreranno

Dettagli

DAL PROBLEMA AL PROGRAMMA

DAL PROBLEMA AL PROGRAMMA 1. I PROBLEMI E LA LORO SOLUZIONE DAL PROBLEMA AL PROGRAMMA L'uomo, per affrontare gli innumerevoli problemi postigli dallo sviluppo della civiltà, si è avvalso della scienza e della tecnica, i cui destini

Dettagli

TECNOLOGIE INFORMATICHE DELLA COMUNICAZIONE ORE SETTIMANALI 2 TIPO DI PROVA PER GIUDIZIO SOSPESO PROVA DI LABORATORIO

TECNOLOGIE INFORMATICHE DELLA COMUNICAZIONE ORE SETTIMANALI 2 TIPO DI PROVA PER GIUDIZIO SOSPESO PROVA DI LABORATORIO CLASSE DISCIPLINA MODULO Conoscenze Abilità e competenze Argomento 1 Concetti di base Argomento 2 Sistema di elaborazione Significato dei termini informazione, elaborazione, comunicazione, interfaccia,

Dettagli

Tipi di dato-prima parte

Tipi di dato-prima parte Corso di Fondamenti di Informatica Corso di Laurea in Ingegneria Meccanica (A-K) Tipi di dato-prima parte Ing. Agnese Pinto 1 di 15 Tipi di dato Sommario Tipi di dato Classificazione dei tipi di dato Tipi

Dettagli

Informazione analogica e digitale

Informazione analogica e digitale L informazione L informazione si può: rappresentare elaborare gestire trasmettere reperire L informatica offre la possibilità di effettuare queste operazioni in modo automatico. Informazione analogica

Dettagli

I sistemi di numerazione

I sistemi di numerazione I sistemi di numerazione 01-INFORMAZIONE E SUA RAPPRESENTAZIONE Sia dato un insieme finito di caratteri distinti, che chiameremo alfabeto. Utilizzando anche ripetutamente caratteri di un alfabeto, si possono

Dettagli

Fasi del ciclo di vita del software (riassunto) Progetto: generalità. Progetto e realizzazione (riassunto)

Fasi del ciclo di vita del software (riassunto) Progetto: generalità. Progetto e realizzazione (riassunto) Università degli Studi di Roma La Sapienza Facoltà di Ingegneria Sede di Latina Laurea in Ingegneria dell Informazione Fasi del ciclo di vita del software (riassunto) Corso di PROGETTAZIONE DEL SOFTWARE

Dettagli

12 - Introduzione alla Programmazione Orientata agli Oggetti (Object Oriented Programming OOP)

12 - Introduzione alla Programmazione Orientata agli Oggetti (Object Oriented Programming OOP) 12 - Introduzione alla Programmazione Orientata agli Oggetti (Object Oriented Programming OOP) Programmazione e analisi di dati Modulo A: Programmazione in Java Paolo Milazzo Dipartimento di Informatica,

Dettagli

Cenni su algoritmi, diagrammi di flusso, strutture di controllo

Cenni su algoritmi, diagrammi di flusso, strutture di controllo Cenni su algoritmi, diagrammi di flusso, strutture di controllo Algoritmo Spesso, nel nostro vivere quotidiano, ci troviamo nella necessità di risolvere problemi. La descrizione della successione di operazioni

Dettagli

FSM: Macchine a Stati Finiti

FSM: Macchine a Stati Finiti FSM: Macchine a Stati Finiti Introduzione Automi di Mealy Automi di Moore Esempi Sommario Introduzione Automi di Mealy Automi di Moore Esempi Sommario Introduzione Metodo per descrivere macchine di tipo

Dettagli

SISTEMI DI NUMERAZIONE DECIMALE E BINARIO

SISTEMI DI NUMERAZIONE DECIMALE E BINARIO SISTEMI DI NUMERAZIONE DECIMALE E BINARIO Il sistema di numerazione decimale (o base dieci) possiede dieci possibili valori (0, 1, 2, 3, 4, 5, 6, 7, 8 o 9) utili a rappresentare i numeri. Le cifre possiedono

Dettagli

INTRODUZIONE AGLI ALGORITMI INTRODUZIONE AGLI ALGORITMI INTRODUZIONE AGLI ALGORITMI INTRODUZIONE AGLI ALGORITMI

INTRODUZIONE AGLI ALGORITMI INTRODUZIONE AGLI ALGORITMI INTRODUZIONE AGLI ALGORITMI INTRODUZIONE AGLI ALGORITMI INTRODUZIONE AGLI ALGORITMI Prima di riuscire a scrivere un programma, abbiamo bisogno di conoscere un metodo risolutivo, cioè un metodo che a partire dai dati di ingresso fornisce i risultati attesi.

Dettagli

Dall Algoritmo al Programma. Prof. Francesco Accarino IIS Altiero Spinelli Sesto San Giovanni

Dall Algoritmo al Programma. Prof. Francesco Accarino IIS Altiero Spinelli Sesto San Giovanni Dall Algoritmo al Programma Prof. Francesco Accarino IIS Altiero Spinelli Sesto San Giovanni IL PROGRAMMA Gli algoritmi sono modelli di descrizione astratti e per controllarne il funzionamento devono essere

Dettagli

COMPETENZA NUMERICA I SISTEMI DI NUMERAZIONE

COMPETENZA NUMERICA I SISTEMI DI NUMERAZIONE COMPETENZA NUMERICA I SISTEMI DI NUMERAZIONE Macroindicatori di conoscenze/abilità Comprensione: -del significato dei numeri -dei modi per rappresentarli -della notazione posizionale dei traguardi per

Dettagli

SCUOLA PRIMARIA SCIENZE NATURALI E SPERIMENTALI. Competenza: 1. Comunicazione efficace Indicatore: 1.1 Comprensione

SCUOLA PRIMARIA SCIENZE NATURALI E SPERIMENTALI. Competenza: 1. Comunicazione efficace Indicatore: 1.1 Comprensione SCUOLA PRIMARIA SCIENZE NATURALI E SPERIMENTALI Competenza: 1. Comunicazione efficace Indicatore: 1.1 Comprensione Descrittori Classe 1 Descrittori Classe 2 Descrittori Classe 3 Descrittori Classe 4 Descrittori

Dettagli

RAPPRESENTAZIONE GRAFICA DEGLI ALGORITMI

RAPPRESENTAZIONE GRAFICA DEGLI ALGORITMI RAPPRESENTAZIONE GRAFICA DEGLI ALGORITMI Diagramma di flusso L algoritmo può essere rappresentato in vari modi, grafici o testuali. Uno dei metodi grafici più usati e conosciuti è il cosiddetto diagramma

Dettagli

Nastro trasportatore con ribaltamento cassetta.

Nastro trasportatore con ribaltamento cassetta. Nastro trasportatore con ribaltamento cassetta. Il seguente progetto prevede il controllo di un nastro trasportatore (attraverso un PLC Siemens S71200 o S7-1500 programmato in LAD) in cui è presente un'isola

Dettagli

Funzioni in C. Violetta Lonati

Funzioni in C. Violetta Lonati Università degli studi di Milano Dipartimento di Scienze dell Informazione Laboratorio di algoritmi e strutture dati Corso di laurea in Informatica Funzioni - in breve: Funzioni Definizione di funzioni

Dettagli

Avete capito fino in fondo il concetto di nodo fine flusso? Che differenza c e tra fine flusso e fine attività? MODEL DIFFERENCES AND EVOLUTION

Avete capito fino in fondo il concetto di nodo fine flusso? Che differenza c e tra fine flusso e fine attività? MODEL DIFFERENCES AND EVOLUTION 1 Avete capito fino in fondo il concetto di nodo fine flusso? Che differenza c e tra fine flusso e fine attività? MODEL DIFFERENCES AND EVOLUTION 2 Rivediamo questo esempio di activity diagram Università

Dettagli

Algoritmi e diagrammi di flusso

Algoritmi e diagrammi di flusso Algoritmi e diagrammi di flusso Un algoritmo può essere descritto come una sequenza finita ed ordinata di operazioni che descrivono la soluzione di un problema. Per sequenza finita si intende che un algoritmo

Dettagli

FLIP.20. SISTEMA TELEFONICO VoIP GUIDA ALL USO CON TELEFONI BCA

FLIP.20. SISTEMA TELEFONICO VoIP GUIDA ALL USO CON TELEFONI BCA FLIP.20 SISTEMA TELEFONICO VoIP GUIDA ALL USO CON TELEFONI BCA Sommario FLIP.20 - BCA SOMMARIO USO DEI TELEFONI ANALOGICI... 3 RISPONDERE AD UNA CHIAMATA... 3 EFFETTUARE UNA CHIAMATA... 4 SOSPENDERE, PARCHEGGIARE

Dettagli

Riconoscere e formalizzare le dipendenze funzionali

Riconoscere e formalizzare le dipendenze funzionali Riconoscere e formalizzare le dipendenze funzionali Giorgio Ghelli 25 ottobre 2007 1 Riconoscere e formalizzare le dipendenze funzionali Non sempre è facile indiduare le dipendenze funzionali espresse

Dettagli

mario.gentili@mariogentili.it 1

mario.gentili@mariogentili.it 1 Algoritmi, programmi e sistemi operativi 1 Definizioni Gli algoritmi nascono dalla necessità di: 1) Ottenere un risultato logico uguale in condizioni ambientali simili (riuso), 2) Ottenere lo stesso risultato

Dettagli

ISTITUTO COMPRENSIVO DELLA VALLE DEI LAGHI

ISTITUTO COMPRENSIVO DELLA VALLE DEI LAGHI ISTITUTO COMPRENSIVO DELLA VALLE DEI LAGHI PROGRAMMA DI TECNOLOGIA E INFORMATICA PER LE CLASSI SECONDA E TERZA DELLA SCUOLA PRIMARIA MATERIALI, MANUFATTI E MACCHINE - Osservare ed analizzare oggetti, strumenti

Dettagli

Le variabili. Olga Scotti

Le variabili. Olga Scotti Le variabili Olga Scotti Cos è una variabile Le variabili, in un linguaggio di programmazione, sono dei contenitori. Possono essere riempiti con un valore che poi può essere riletto oppure sostituito.

Dettagli

Esempi ed esercizi Aritmetica degli elaboratori e algebra di commutazione

Esempi ed esercizi Aritmetica degli elaboratori e algebra di commutazione Esempi ed esercizi Aritmetica degli elaboratori e algebra di commutazione Fondamenti di Informatica Michele Ceccarelli Università del Sannio ceccarelli@unisannio.it Angelo Ciaramella DMI-Università degli

Dettagli

ESERCIZI DI PROBLEM SOLVING E COMPOSIZIONE DEI DIAGRAMMI DI FLUSSO per le classi terza

ESERCIZI DI PROBLEM SOLVING E COMPOSIZIONE DEI DIAGRAMMI DI FLUSSO per le classi terza ESERCIZI DI PROBLEM SOLVING E COMPOSIZIONE DEI DIAGRAMMI DI FLUSSO per le classi terza vers.3 in lavorazione Docente SAFFI FABIO Contenuti 01.Esercizi generici sul diagramma di flusso - flow chart... 2

Dettagli

Nuovo manuale delle opzioni della linea telefonica interna

Nuovo manuale delle opzioni della linea telefonica interna Nuovo manuale delle opzioni della linea telefonica interna il presente manuale si usa per linee interne collegate alla centrale telefonica dell' Università e dell' Azienda Ospedaliera Risposta per assente

Dettagli

0.1 Esercizi calcolo combinatorio

0.1 Esercizi calcolo combinatorio 0.1 Esercizi calcolo combinatorio Esercizio 1. Sia T l insieme dei primi 100 numeri naturali. Calcolare: 1. Il numero di sottoinsiemi A di T che contengono esattamente 8 pari.. Il numero di coppie (A,

Dettagli

Fondamenti di Informatica PROBLEMI E ALGORITMI. Fondamenti di Informatica - D. Talia - UNICAL 1

Fondamenti di Informatica PROBLEMI E ALGORITMI. Fondamenti di Informatica - D. Talia - UNICAL 1 Fondamenti di Informatica PROBLEMI E ALGORITMI Fondamenti di Informatica - D. Talia - UNICAL 1 Specifica di un algoritmo Primo approccio, scrittura diretta del programma: la soluzione coincide con la codifica

Dettagli

Introduzione a Visual Basic Lezione 1 Concetti base e istruzioni condizionali

Introduzione a Visual Basic Lezione 1 Concetti base e istruzioni condizionali a Visual Basic Lezione 1 Concetti base e istruzioni condizionali Mario Alviano Introduzione all informatica Università della Calabria http://alviano.net/introinfo A.A. 2008/09 Introduzione Un esempio:

Dettagli

Nuovo manuale delle opzioni della linea telefonica interna

Nuovo manuale delle opzioni della linea telefonica interna Nuovo manuale delle opzioni della linea telefonica interna il presente manuale si usa per linee interne collegate alla centrale telefonica dell' Università e dell' Azienda Ospedaliera Risposta per assente

Dettagli

Informatica B. Sezione D. Scuola di Ingegneria Industriale Laurea in Ingegneria Energetica Laurea in Ingegneria Meccanica

Informatica B. Sezione D. Scuola di Ingegneria Industriale Laurea in Ingegneria Energetica Laurea in Ingegneria Meccanica Scuola di Ingegneria Industriale Laurea in Ingegneria Energetica Laurea in Ingegneria Meccanica Dipartimento di Elettronica, Informazione e Bioingegneria Informatica B Sezione D Franchi Alessio Mauro,

Dettagli

Prof.ssa Laura Pagnozzi Prof. Ivano Coccorullo. Calcolo Combinatorio

Prof.ssa Laura Pagnozzi Prof. Ivano Coccorullo. Calcolo Combinatorio Prof.ssa Laura Pagnozzi Prof. Ivano Coccorullo Calcolo Combinatorio Calcolo Combinatorio ü Molti dei problemi classici di calcolo delle probabilità si riducono al calcolo dei casi favorevoli e di quelli

Dettagli

Opzione manutentore impianti elettrici e automazione

Opzione manutentore impianti elettrici e automazione PROGRAMMAZIONE DI T.T.I.M. (TECNOLOGIE E TECNICHE DELL'INSTALLAZIONE E DELLA MANUTENZIONE) CLASSE III Opzione manutentore impianti elettrici e automazione 1 UNITA' DI MISURA E CONVERSIONI (modulo propedeutico)

Dettagli

+ / operatori di confronto (espressioni logiche/predicati) / + 5 3 9 = > < Pseudo codice. Pseudo codice

+ / operatori di confronto (espressioni logiche/predicati) / + 5 3 9 = > < Pseudo codice. Pseudo codice Pseudo codice Pseudo codice Paolo Bison Fondamenti di Informatica A.A. 2006/07 Università di Padova linguaggio testuale mix di linguaggio naturale ed elementi linguistici con sintassi ben definita e semantica

Dettagli

Prof. Giuseppe Chiumeo. Avete già studiato che qualsiasi algoritmo appropriato può essere scritto utilizzando soltanto tre strutture di base:

Prof. Giuseppe Chiumeo. Avete già studiato che qualsiasi algoritmo appropriato può essere scritto utilizzando soltanto tre strutture di base: LA STRUTTURA DI RIPETIZIONE La ripetizione POST-condizionale La ripetizione PRE-condizionale INTRODUZIONE (1/3) Avete già studiato che qualsiasi algoritmo appropriato può essere scritto utilizzando soltanto

Dettagli

Convertitori numerici in Excel

Convertitori numerici in Excel ISTITUTO DI ISTRUZIONE SUPERIORE G. M. ANGIOY CARBONIA Convertitori numerici in Excel Prof. G. Ciaschetti Come attività di laboratorio, vogliamo realizzare dei convertitori numerici con Microsoft Excel

Dettagli

Cenni di logica & algebra booleana

Cenni di logica & algebra booleana Cenni di algebra booleana e dei sistemi di numerazione Dr. Carlo Sansotta - 25 2 Parte Cenni di logica & algebra booleana 3 introduzione L elaboratore elettronico funziona secondo una logica a 2 stati:

Dettagli

7 Disegni sperimentali ad un solo fattore. Giulio Vidotto Raffaele Cioffi

7 Disegni sperimentali ad un solo fattore. Giulio Vidotto Raffaele Cioffi 7 Disegni sperimentali ad un solo fattore Giulio Vidotto Raffaele Cioffi Indice: 7.1 Veri esperimenti 7.2 Fattori livelli condizioni e trattamenti 7.3 Alcuni disegni sperimentali da evitare 7.4 Elementi

Dettagli

COMPILAZIONE. Tarsformazione di linguaggi

COMPILAZIONE. Tarsformazione di linguaggi COMPILAZIONE Tarsformazione di linguaggi Le fasi della compilazione File sorgente Compilazione File sorgente File sorgente File sorgente Compilazione Compilazione Compilazione Libreria di run-time File

Dettagli

La gestione dell input/output da tastiera La gestione dell input/output da file La gestione delle eccezioni

La gestione dell input/output da tastiera La gestione dell input/output da file La gestione delle eccezioni La gestione dell input/output da tastiera La gestione dell input/output da file La gestione delle eccezioni Autore: Prof. Agostino Sorbara ITIS "M. M. Milano" Autore: Prof. Agostino Sorbara ITIS "M. M.

Dettagli

OBIETTIVI DI APPRENDIMENTO ANNUALI RICEZIONE SCRITTA (LETTURA)

OBIETTIVI DI APPRENDIMENTO ANNUALI RICEZIONE SCRITTA (LETTURA) INGLESE - CLASSE PRIMA TRAGUARDI DI COMPETENZA DA SVILUPPARE AL TERMINE DELLA CLASSE PRIMA Comprende semplici vocaboli orali per eseguire consegne elementari Riproduce semplici vocaboli per memorizzarli

Dettagli