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

Dimensione: px
Iniziare la visualizzazioe della pagina:

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

Transcript

1 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 dell informazione Soluzione di un problema Problema ANALI Modello di soluzione STESURA DESCRIZIONE Deve fare tutto lo stesso soggetto? soggetto 1 Descrizione INTERPRE- TAZIONE Descrizione interpretata ESECUZIONE soggetto 2 Soluzione Soluzione di un problema Conoscenza di come si risolve un problema SOGGETTO 1 SOGGETTO 2 Effettiva capacità di risolverlo 18/10/2002 Introduzione ai sistemi informatici 3 18/10/2002 Introduzione ai sistemi informatici 4 Analisi Dalla specifica di un problema alla soluzione: la fase di analisi. Comprensione del problema Modellizzazione del problema Ricerca della soluzione Comprensione del Problema Eliminare ogni ambiguità nella specifica Focalizzare gli obiettivi Evidenziare Regole espliciti ed impliciti Eliminare Dettagli inutili ed ambigui 18/10/2002 Introduzione ai sistemi informatici 5 18/10/2002 Introduzione ai sistemi informatici 6 Corso Informatica A Allievi Gestionali prof. C. Silvano 1

2 Ricerca della soluzione La soluzione è espressa come una sequenza di operazioni la cui esecuzione porta alla soluzione del problema l algoritmo risolutivo del problema Algoritmo Soluzione Definizione di algoritmo Iniziali Algoritmo Finali (soluzione) Si definisce algoritmo una sequenza di azioni che trasformi i dati iniziali in un numero finito di passi, elementari e non ambigui, per giungere al risultato finale. Questa sequenza di azioni è valida per un insieme di dati iniziali ben definito e può essere eseguita da un opportuno esecutore. 18/10/2002 Introduzione ai sistemi informatici 7 18/10/2002 Introduzione ai sistemi informatici 8 Scomposizione in sottoproblemi Tutte le operazioni specificate dall algoritmo devono essere direttamente eseguibili dall esecutore (in questo caso si chiamano operazioni elementari) Algoritmo (definizione informale) Sequenza finita di istruzioni, comprensibili da un esecutore (può essere uno strumento automatico), che descrive come realizzare un compito (come risolvere un problema ). altrimenti è necessario scomporre il problema troppo complesso in sottoproblemi più semplici 18/10/2002 Introduzione ai sistemi informatici 9 18/10/2002 Introduzione ai sistemi informatici 10 Algoritmo I passi sono eseguiti in sequenza e l'ordine delle istruzioni è essenziale per la correttezza dell'algoritmo. Non basta organizzare i passi in sequenza, occorre valutare delle condizioni e in alcuni casi eseguire delle azioni ripetutamente. Le strutture di controllo: SEQUENZA Le istruzioni devono semplicemente essere eseguite nell ordine in cui sono presentate. : solleva il ricevitore componi il numero 18/10/2002 Introduzione ai sistemi informatici 11 18/10/2002 Introduzione ai sistemi informatici 12 Corso Informatica A Allievi Gestionali prof. C. Silvano 2

3 Le strutture di controllo: SELEZIONE Le istruzioni da eseguire sono determinate dalla valutazione di una data condizione : SE il numero è libero ALLORA attendi la risposta conduci la conversazione deponi il ricevitore ALTRIMENTI deponi il ricevitore 18/10/2002 Introduzione ai sistemi informatici 13 Le strutture di controllo: ITERAZIONE Le istruzioni devono essere eseguite ripetutamente fino a che non si verifica una determinata condizione : RIPETI componi una cifra FI al completamento del numero 18/10/2002 Introduzione ai sistemi informatici 14 Caratterizzazione dell esecutore Un esecutore è caratterizzato da: Il linguaggio che è in grado di interpretare L insieme della azioni che è in grado di compiere. L insieme delle regole che a ogni costrutto linguistico sintatticamente corretto associano le relative azioni da compiere. 18/10/2002 Introduzione ai sistemi informatici 15 Caratterizzazione dell esecutore Il linguaggio che l esecutore è in grado di interpretare deve essere definito in termini formali: caratterizzazione sintattica dell esecutore. L insieme della azioni che l esecutore è in grado di compiere deve essere univocamente definito. Tali azioni devono essere deterministiche: l esecuzione di una stessa azione deve produrre sempre lo stesso risultato. L insieme delle regole di associazione tra costrutti del linguaggio e azioni deve essere univocamente definito: caratterizzazione semantica dell esecutore. 18/10/2002 Introduzione ai sistemi informatici 16 Esecutori e linguaggi Un esecutore (calcolatore) è definito in base a tre elementi: l insieme delle operazioni che è capace di compiere; l insieme delle istruzioni che capisce (sintassi); quali operazioni associa ad ogni istruzione che riconosce (semantica). Il calcolatore capisce le istruzioni che fanno parte del linguaggio macchina. Soluzione effettiva per l esecutore Se il problema è semplice per l esecutore L esecutore lo svolge direttamente Altrimenti Il descrittore deve scomporre il problema in sottoproblemi finché l algoritmo non è espresso esclusivamente tramite operazioni elementari 18/10/2002 Introduzione ai sistemi informatici 17 18/10/2002 Introduzione ai sistemi informatici 18 Corso Informatica A Allievi Gestionali prof. C. Silvano 3

4 Soluzione effettiva per l esecutore La soluzione di un problema si dice effettiva per l esecutore se l esecutore è in grado di: Interpretare la descrizione della soluzione ( e quindi associare a essa le azioni che deve compiere per eseguirla) Eseguire le azioni, completando l esecuzione in un tempo finito! Procedura di soluzione di un problema Se la soluzione di un problema è effettiva, l esecutore la attua. Altrimenti il problema viene scomposto in sottoproblemi, e per ognuno di questi si applica nuovamente una procedura. 18/10/2002 Introduzione ai sistemi informatici 19 18/10/2002 Introduzione ai sistemi informatici 20 Procedura effettiva Un insieme di problemi è una procedura effettiva quando: Tutti i problemi dell insieme sono elementari; E fissato l ordine di soluzione dei problemi; E esplicitamente specificato il modo in cui un problema utilizza i risultati dei problemi che lo precedono. Problema e azione elementari I concetti di problema elementare e azione elementare sono interscambiabili ed evidenziano rispettivamente l aspetto descrittivo e quello esecutivo delle procedure effettive. 18/10/2002 Introduzione ai sistemi informatici 21 18/10/2002 Introduzione ai sistemi informatici 22 Proprietà di un azione elementare Finitezza l azione deve concludersi in un tempo finito Osservabilità l azione deve avere un effetto osservabile, cioè deve produrre qualcosa Riproducibilità a partire dallo stesso stato iniziale, la stessa azione deve produrre sempre lo stesso risultato finale Dal problema alla soluzione automatica Specifiche dei requisiti: descrizione precisa e corretta dei requisiti (verificabilità) ---> cosa? Progetto: procedimento con cui si individua la soluzione ---> come? Soluzione: algoritmo 18/10/2002 Introduzione ai sistemi informatici 23 18/10/2002 Introduzione ai sistemi informatici 24 Corso Informatica A Allievi Gestionali prof. C. Silvano 4

5 Problema ANALI Soluzione informale FORMALIZZAZIONE Processo di sviluppo di un programma Soluzione formale: ALGORITMO PROGRAMMAZIONE Programma Ling. ad alto livello COMPILAZIONE Programma Ling. macchina Proprietà degli algoritmi Correttezza L algoritmo perviene alla soluzione del compito cui è preposto. Efficienza L algoritmo perviene alla soluzione del problema usando la minima quantità di risorse fisiche: tempo di esecuzione, memoria, ESECUZIONE 18/10/2002 Introduzione ai sistemi informatici 25 18/10/2002 Introduzione ai sistemi informatici 26 Proprietà di un algoritmo Univocità Non deve esistere alcun grado di libertà da parte del processore nell esecuzione di ogni azione Effettività Le operazioni previste dall algoritmo devono poter essere eseguite in tempo finito Ingresso Un algoritmo è corretto se porta ad un risultato coerente per ogni possibile scelta dei dati in ingresso Uscita L algoritmo deve fornire uno o più dati in uscita Terminazione L esecuzione di un algoritmo deve terminare in un numero finito di passi 18/10/2002 Introduzione ai sistemi informatici 27 Concetti base Algoritmo descrizione di come si risolve un problema Programma algoritmo scritto in modo che possa essere eseguito da un calcolatore (linguaggio di programmazione) Linguaggio macchina linguaggio effettivamente compreso da un calcolatore, caratterizzato da istruzioni primitive semplici descritte in codifica binaria. Compito dell informatico è produrre algoritmi (cioè capire la sequenza di passi che portano alla soluzione di un problema) e codificarli in programmi (cioè renderli comprensibili al calcolatore) 18/10/2002 Introduzione ai sistemi informatici 28 Il problema e la soluzione Algoritmo = dati + istruzioni Prima di affrontare la soluzione occorre capire esattamente il problema Non serve saper risolvere il problema sbagliato In questo corso supporremo che il problema sia ben noto e chiaramente formulato e ci concentreremo sul formulare una soluzione Spesso in pratica è più difficile capire esattamente la natura del problema che non trovarne una soluzione! (Requirements engineering) Iniziali Composto da Algoritmo Istruzioni che operano sui dati Finali (soluzione) 18/10/2002 Introduzione ai sistemi informatici 29 18/10/2002 Introduzione ai sistemi informatici 30 Corso Informatica A Allievi Gestionali prof. C. Silvano 5

6 e istruzioni Tipi di dati Numeri naturali o interi o reali (1, -2, 0.34) Caratteri alfanumerici (A, B,..) logici o booleani (Vero, Falso) Array o vettore di n elementi ({1,2,3}) Istruzioni Operazioni di Input/Output (es. leggi, scrivi) Operazioni Aritmetico-logiche (es. max = A + B) Strutture di controllo (es. SE, RIPETI ) 18/10/2002 Introduzione ai sistemi informatici 31 Criteri di classificazione dei dati Visibilità da parte dell utente visibile (di ingresso o uscita) trasparente (dati temporanei di supporto) Variabilità nel tempo costanti variabili (acquisizione dall esterno o assegnazione) Struttura elementari (interi, alfanumerici, booleani, ) strutturati (array, matrici, ) 18/10/2002 Introduzione ai sistemi informatici 32 Rappresentazione degli algoritmi 1. Linguaggio naturale 2. Diagramma a blocchi 3. Pseudocodice 4. Linguaggio di programmazione Codifica degli algoritmi Algoritmo formulato per essere comunicato tra esseri umani sintetico e intuitivo codificato in linguaggi informali o semi-formali (linguaggio naturale, diagrammi di flusso, ) Algoritmo formulato per essere eseguito automaticamente preciso ed eseguibile codificato in linguaggi comprensibili dagli esecutori automatici (linguaggio macchina o linguaggio di programmazione ad alto livello) 18/10/2002 Introduzione ai sistemi informatici 33 18/10/2002 Introduzione ai sistemi informatici 34 Codifica degli algoritmi Regole base: Procedimento sequenziale Procedimentonon ambiguo Formulazione generale Prevedere tuttiicasi Problema: Calcolare il prodotto di due numeri interi positivi 18/10/2002 Introduzione ai sistemi informatici 35 18/10/2002 Introduzione ai sistemi informatici 36 Corso Informatica A Allievi Gestionali prof. C. Silvano 6

7 Leggi w Leggi y Somma w a se stesso y volte Visualizza il risultato Leggi w Leggi y sp = 0 ns = y Esegui { sp = sp + w ns = ns - 1 }Finché(ns = 0) z = sp Visualizza z 18/10/2002 Introduzione ai sistemi informatici 37 18/10/2002 Introduzione ai sistemi informatici 38 Strumenti per la descrizione degli algoritmi Semi-formali (specifiche iniziali, ancora intelligibili solo all essere umano) Linguaggi semi-formali SE A>0 ALLORA A=A+1 ALTRIMENTI A=0 Diagrammi di flusso (flow chart, schemi a blocchi): Formali (programmi da eseguire): linguaggi di programmazione START END PROCESS I/O DECION 18/10/2002 Introduzione ai sistemi informatici 39 18/10/2002 Introduzione ai sistemi informatici 40 Calcolare e poi stampare la somma dei primi N numeri naturali Scrivi S END S 0 S S+I I I+1 I > N? L'esecutore deve leggere un intero N e restituire il fattoriale di questo numero, cioè il valore ottenuto da N x (N-1) x (N-2) x x 1. Scrivere l algoritmo immaginando che i dati di ingresso siano sempre corretti (cioè sempre maggiori di zero). Modificare l algoritmo in modo da considerare anche la possibilità che siano inseriti valori inferiori a 1. 18/10/2002 Introduzione ai sistemi informatici 41 18/10/2002 Introduzione ai sistemi informatici 42 Corso Informatica A Allievi Gestionali prof. C. Silvano 7

8 Diverse alternative (es. N = 7) 1 * 2 = 2 2 * 3 = 6 6 * 4 = * 5 = * 6 = * 7 = * 6 = * 5 = * 4 = * 3 = * 2 = 5040 Le alternative sono diverse? P 1 P N P 1 P N I < N N > 2 I < N N > 2 I I + 1 P P * I N N - 1 P P * N I I + 1 P P * I N N - 1 P P * N 18/10/2002 Introduzione ai sistemi informatici 43 Cosa succede se il dato in ingresso non rispetta le specifiche (N > 0)? Per esempio, che risultato restituisce l esecutore per N = 0? e per N = -4? N = 0 P = 1 N = -4 P = 1 18/10/2002 Introduzione ai sistemi informatici 44 N = 0 P = 0 N = -4 P = -4 Come gestire le eccezioni P 1 I < N Scrivi Errore! N > 0 P 1 Problema 1: Determinare il maggiore di 2 numeri interi x e y Idea: un numero x è maggiore di un numero y se la loro differenza è positiva I I + 1 P P * I I < N I I + 1 P P * I Algoritmo per il caso normale. Come lo modifico per gestire anche i casi che non erano stati previsti? 18/10/2002 Introduzione ai sistemi informatici 45 18/10/2002 Introduzione ai sistemi informatici 46 Leggi un valore dall esterno e inseriscilo nella variabile x Leggi un secondo valore dall esterno e inseriscilo nella variabile y Calcola la differenza d fra x e y (d = x y) Se (d > 0) Stampa la frase il massimo è seguita dal valore contenuto in x Altrimenti Stampa la frase il massimo è seguita dal valore contenuto in y Problema 2: Determinare il maggiore di 3 numeri interi x, y e z Idea: Scomporre il problema in modo da utilizzare l algoritmo usato per la soluzione del Problema 1 18/10/2002 Introduzione ai sistemi informatici 47 18/10/2002 Introduzione ai sistemi informatici 48 Corso Informatica A Allievi Gestionali prof. C. Silvano 8

9 Se x è maggiore di y (Problema 1); la soluzione corrisponde al maggiore tra x e z (Problema 1) Altrimenti la soluzione corrisponde al maggiore tra y e z (Problema 1) Problema 3: Determinare il maggiore di n numeri interi x1, x2,, xn Idea: Generalizzazione del Problema 2 basato sull utilizzo dell algoritmo usato per la soluzione del Problema 1 18/10/2002 Introduzione ai sistemi informatici 49 18/10/2002 Introduzione ai sistemi informatici 50 Calcola il maggiore tra i primi due numeri (Problema 1); Finché (ci sono numeri da verificare) Trova il maggiore tra il nuovo numero e il numero maggiore trovato in precedenza Visualizza il numero maggiore trovato. 18/10/2002 Introduzione ai sistemi informatici 51 Corso Informatica A Allievi Gestionali prof. C. Silvano 9

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

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

Capitolo 3 Elaborazione e Strutturazione dell Informazione. (Introduzione ai Sistemi Informatici Sciuto et alii)

Capitolo 3 Elaborazione e Strutturazione dell Informazione. (Introduzione ai Sistemi Informatici Sciuto et alii) Capitolo 3 Elaborazione e Strutturazione dell Informazione (Introduzione ai Sistemi Informatici Sciuto et alii) Il calcolatore come strumento per gestire informazione acquisire dati IN elaborare archiviare

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

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

Il Concetto Intuitivo di Calcolatore. Esercizio. I Problemi e la loro Soluzione. (esempio)

Il Concetto Intuitivo di Calcolatore. Esercizio. I Problemi e la loro Soluzione. (esempio) Il Concetto Intuitivo di Calcolatore Elementi di Informatica e Programmazione Ingegneria Gestionale Università degli Studi di Brescia Docente: Prof. Alfonso Gerevini Variabile di uscita Classe di domande

Dettagli

Parte Seconda: Fondamenti di informatica

Parte Seconda: Fondamenti di informatica Parte Seconda: Trattamento dell informazione Fondamenti di informatica Gestione dell informazione Calcolatore IN Elaborazione archiviazione comunicazione OUT acquisizione dati dati elaborati e soluzioni

Dettagli

Dal problema all algoritmo

Dal problema all algoritmo Dal problema all algoritmo Un esempio di problema Problema Come si cucina un uovo al burro? Soluzione Far sciogliere in un tegamino 20 g. di burro, quando il burro assume un colore dorato rompere il guscio

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

Concetti Introduttivi. Il Computer

Concetti Introduttivi. Il Computer Concetti Introduttivi Il Computer Introduzione Informazione Notizia, dato o elemento che consente di avere conoscenza più o meno esatta di fatti, situazioni, modi di essere Messaggio Tutto ciò che porta

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 Il Problema computazionale È computazionale un

Dettagli

LABORATORIO DI INFORMATICA

LABORATORIO DI INFORMATICA LABORATORIO DI INFORMATICA Corso di laurea in Scienze della Formazione Primaria a.a.2014/2015 A cura del Prof. Sergio Miranda 2 LEZIONE N.6 Algoritmi GLI ALGORITMI (1/5) Un algoritmo è una sequenza di

Dettagli

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

INFORMATICA. Scienza dei calcolatori elettronici (computer science) Scienza dell informazione (information science)

INFORMATICA. Scienza dei calcolatori elettronici (computer science) Scienza dell informazione (information science) INFORMATICA Cosa è l informatica Scienza dei calcolatori elettronici (computer science) Scienza dell informazione (information science) E una scienza E una tecnologia Cosa può essere automatizzato nell

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

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

1 Esercizi in pseudocodice

1 Esercizi in pseudocodice Questa dispensa propone esercizi sulla scrittura di algoritmi in un linguaggio semiformale, utile all acquisizione delle abilità essenziali per implementare algoritmi in qualsiasi linguaggio di programmazione.

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

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

Algoritmi e Linguaggi

Algoritmi e Linguaggi Algoritmi e Linguaggi Programmi e linguaggi Un calcolatore è solo un esecutore rapidissimo di istruzioni Un programma è un insieme di istruzioni codificate in un opportuno linguaggio 2 / 21 Linguaggi e

Dettagli

Pag. 2. Somma binaria. Somma binaria. Somma binaria. Altre operazioni aritmetiche. La somma si può fare colonna per colonna

Pag. 2. Somma binaria. Somma binaria. Somma binaria. Altre operazioni aritmetiche. La somma si può fare colonna per colonna 1 Università degli studi di Parma Dipartimento di Ingegneria dell Informazione a.a. 2012/13 Rappresentazione di Numeri Naturali Facoltà di Medicina Veterinaria La Rappresentazione e la Codifica delle informazioni

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

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

L INFORMATICA c1. Informatica è qualcosa che ha a che fare con l uso del computer

L INFORMATICA c1. Informatica è qualcosa che ha a che fare con l uso del computer L INFORMATICA c1 Negli incontri precedenti ci siamo occupati di cercare la soluzione di alcuni problemi. Ora cerchiamo di definire cosa si intende per informatica. Informatica è qualcosa che ha a che fare

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

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

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

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

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

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

Algoritmi e Programmi. Wednesday, September 29, 2010

Algoritmi e Programmi. Wednesday, September 29, 2010 Algoritmi e Programmi 1 Algoritmi Gestione dell informazione uso e trasformazione dell informazione in modo funzionale agli obiettivi Le informazioni sono usate e trasformate attraverso algoritmi Il concetto

Dettagli

Il concetto di informatica. Graziano Pravadelli (2012)

Il concetto di informatica. Graziano Pravadelli (2012) Il concetto di informatica Graziano Pravadelli (2012) Informatica e telecomunicazione Cos è l informatica? lo studio sistematico degli algoritmi che descrivono e trasformano l informazione: la loro teoria,

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

FONDAMENTI DI INFORMATICA

FONDAMENTI DI INFORMATICA Fondamenti di Informatica FONDAMENTI DI INFORMATICA Domenico Talia talia@deis.unical.it A.A. 2002-2003 Facoltà di Ingegneria UNICAL Fondamenti di Informatica - D. Talia - UNICAL 1 Fondamenti di Informatica

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

Teoria dell Informazione

Teoria dell Informazione Corso di Laurea Magistrale in Scienze dell Informazione Editoriale, Pubblica e Sociale Teoria dell Informazione Cosa è l informazione L informazione è qualcosa che si possiede e si può dare ad un altro

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

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

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

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

CONCETTI FONDAMENTALI

CONCETTI FONDAMENTALI CONCETTI FONDAMENTALI Algoritmo Procedura di trasformazione di un insieme di dati iniziali in un insieme di risultati finali mediante una sequenza di istruzioni. Linguaggio di programmazione Programma

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

PROBLEMI E ALGORITMI VESPIA CATERINA LICEO CLASSICO AGLI ANGELI

PROBLEMI E ALGORITMI VESPIA CATERINA LICEO CLASSICO AGLI ANGELI PROBLEMI E ALGORITMI prof.ssa VESPIA CATERINA LICEO CLASSICO AGLI ANGELI C O N T E N U T I Problemi. Concetto di algoritmo. Caratteristiche di un algoritmo. Descrizione di algoritmi - Diagrammi di flusso.

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

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

Università degli Studi di Roma Tor Vergata Facoltà di Ingegneria Corso di Laurea in Ingegneria Medica. Compressione dati

Università degli Studi di Roma Tor Vergata Facoltà di Ingegneria Corso di Laurea in Ingegneria Medica. Compressione dati Università degli Studi di Roma Tor Vergata Facoltà di Ingegneria Corso di Laurea in Ingegneria Medica Compressione dati Compressione dei dati Il processo di compressione consiste nell effettuare codifiche

Dettagli

Fondamenti di Informatica. Definizione di Algoritmo. Algoritmo Euclideo. Prof.V.L.Plantamura Informatica e Comunicazione Digitale a.a.

Fondamenti di Informatica. Definizione di Algoritmo. Algoritmo Euclideo. Prof.V.L.Plantamura Informatica e Comunicazione Digitale a.a. Fondamenti di Informatica Prof.V.L.Plantamura Informatica e Comunicazione Digitale a.a. 006-007 Definizione di Algoritmo Def.: Per Algoritmo si intende un elenco di istruzioni che specificano una serie

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

Cosa è l Informatica?

Cosa è l Informatica? Cosa è l Informatica? Scienza degli elaboratori elettronici (Computer Science) Scienza dell informazione Scienza della rappresentazione, memorizzazione, elaborazione e trasmissione dell informazione Elaboratore

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

Cos è la programmazione?

Cos è la programmazione? La programmazione Cos è la programmazione? Termine usato per indicare le attività che trasformano l esigenza di risolvere un Problema in un Programma, inteso come sistema informatico capace di risolvere

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 Dipartimento di Matematica e Fisica Corso di Laurea in Matematica Appunti del corso di Informatica 1 (IN110 Fondamenti) 2 Algoritmi e diagrammi di flusso Marco Liverani (liverani@mat.uniroma3.it)

Dettagli

Informatica, Algoritmi, Linguaggi

Informatica, Algoritmi, Linguaggi Elementi di Informatica e Applicazioni Numeriche T Informatica, Algoritmi, Linguaggi Cos'è l'informatica? Che cos'è l'informatica? Cos'è l'informatica? Che cos'è l'informatica? Dell'informatica possiamo

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

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

FONDAMENTI DI INFORMATICA

FONDAMENTI DI INFORMATICA Fondamenti di Informatica FONDAMENTI DI INFORMATICA Domenico Talia talia@deis.unical.it A.A. 2002-2003 Facoltà di Ingegneria UNICAL Fondamenti di Informatica - D. Talia - UNICAL 1 Fondamenti di Informatica

Dettagli

PROGRAMMAZIONE: Le strutture di controllo

PROGRAMMAZIONE: Le strutture di controllo PROGRAMMAZIONE: Le strutture di controllo Prof. Enrico Terrone A. S: 2008/09 Le tre modalità La modalità basilare di esecuzione di un programma è la sequenza: le istruzioni vengono eseguite una dopo l

Dettagli

Elementi di informatica

Elementi di informatica Elementi di informatica Problemi, algoritmi e programmi 1 L ELABORATORE ELETTRONICO Il calcolatore elettronico è uno strumento in grado di eseguire insiemi di azioni elementari le azioni vengono eseguite

Dettagli

ELABORAZIONE DELL INFORMAZIONE. Problemi e Algoritmi. Esecutore. Azioni Elementari 13/05/2008. Processo di Soluzione di un Problema

ELABORAZIONE DELL INFORMAZIONE. Problemi e Algoritmi. Esecutore. Azioni Elementari 13/05/2008. Processo di Soluzione di un Problema Processo di Soluzione di un Problema 2 interpretazione esecutore istruttore analisi descritta interpretata ELABORAZIONE DELL INFORMAZIONE descrizione attuazione Informatica per le Discipline Umanistiche

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

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

Corso di Programmazione Problem Solving. Tipi di Problemi. Problemi Complessi Soluzione. Dott. Pasquale Lops. Primitivi. Complessi

Corso di Programmazione Problem Solving. Tipi di Problemi. Problemi Complessi Soluzione. Dott. Pasquale Lops. Primitivi. Complessi Materiale didattico preparato dal dott. Stefano Ferilli Corso di Programmazione Problem Solving Dott. Pasquale Lops lops@di.uniba.it Corso di Programmazione - DIB 1/30 Tipi di Problemi Primitivi Risolubili

Dettagli

CORSO DI PROGRAMMAZIONE E INFORMATICA GENERALE 1

CORSO DI PROGRAMMAZIONE E INFORMATICA GENERALE 1 CORSO DI PROGRAMMAZIONE E INFORMATICA GENERALE 1 Lezione 1 (Introduzione e Definizioni) Docenti Docente: Prof. Michele Colajanni Lezioni (Aula IV): martedì 10:00-12:45 Esercitazioni (Laboratorio): mercoledì

Dettagli

Cos è un algoritmo. Si dice algoritmo la descrizione di un metodo di soluzione di un problema che sia

Cos è un algoritmo. Si dice algoritmo la descrizione di un metodo di soluzione di un problema che sia Programmazione Un programma descrive al computer, in estremo dettaglio, la sequenza di passi necessari a svolgere un particolare compito L attività di progettare e realizzare un programma è detta programmazione

Dettagli

Fasi della programmazione. Gabriella Trucco

Fasi della programmazione. Gabriella Trucco Fasi della programmazione Gabriella Trucco Algoritmi Uso di algoritmi nella vita quotidiana Algoritmo: sequenza di passi che, se intrapresa da un esecutore, permette di ottenere i risultati attesi a partire

Dettagli

Informatica. Traccia. Algoritmi, dati e programmi. Elaborazione di informazione. informazione. rappresentazione dell informazione (dati) dati

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

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 Di seguito vengono riportate una serie di domande che possono essere poste durante la prova formale del corso. Le seguenti domande non sono da ritenersi esaustive ma esemplificative. 1. Architettura

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

Dal Problema all Algoritmo. Prof. Francesco Accarino IIS Altiero Spinelli Sesto San Giovanni

Dal Problema all Algoritmo. Prof. Francesco Accarino IIS Altiero Spinelli Sesto San Giovanni Dal Problema all Algoritmo Prof. Francesco Accarino IIS Altiero Spinelli Sesto San Giovanni Cosa Impareremo Informazioni e codici Definizione e soluzione di un problema Individuazione dei dati Definizione

Dettagli

DESCRIZIONI RIGOROSE c7

DESCRIZIONI RIGOROSE c7 DESCRIZIONI RIGOROSE c7 Es. cucinare la pasta asciutta per una famiglia La descrizione rigorosa della strategia risolutiva prevede Analisi del problema (con chiara individuazione degli obiettivi e dei

Dettagli

PROGRAMMAZIONE STRUTTURATA

PROGRAMMAZIONE STRUTTURATA PROGRAMMAZIONE STRUTTURATA Programmazione strutturata 2 La programmazione strutturata nasce come proposta per regolamentare e standardizzare le metodologie di programmazione (Dijkstra, 1965) Obiettivo:

Dettagli

Fondamenti di Informatica 1. Prof. B.Buttarazzi A.A. 2010/2011

Fondamenti di Informatica 1. Prof. B.Buttarazzi A.A. 2010/2011 Fondamenti di Informatica 1 Prof. B.Buttarazzi A.A. 2010/2011 Sommario Istruzioni di controllo Iterative Condizionali Algoritmi e Diagrammi di flusso Esercizi 28/03/2011 2 Istruzioni iterative while do

Dettagli

Corso di Fondamenti di Informatica

Corso di Fondamenti di Informatica Corso di Fondamenti di Informatica Obiettivi: studio delle strutture dati fondamentali studio degli strumenti e metodi per lo sviluppo di programmi di tipo tecnico-scientifico su piccola/media scala Approccio

Dettagli

Programmazione a blocchi. Algobuild Prof. Sergio Roselli

Programmazione a blocchi. Algobuild Prof. Sergio Roselli Programmazione a blocchi Algobuild Prof. Sergio Roselli Blocchi base Inizio programma I Fine programma F Input IN A Output Esecuzione OUT A A = 5 + 1 L interprete Algobuild Algobuildpermette di trascrivere

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

Istruzioni Condizionali

Istruzioni Condizionali Corso di Laurea Ingegneria Informatica Fondamenti di Informatica 1 Dispensa 6 Istruzioni Condizionali Carla Limongelli Settembre 2006 http://www.dia.uniroma3.it/~java/fondinf1/ Istruzioni condizionali

Dettagli

Altrimenti, il M.C.D. di a e b è anche divisore di r (e.g. a=15,b=6,r=3 che è il M.C.D.)

Altrimenti, il M.C.D. di a e b è anche divisore di r (e.g. a=15,b=6,r=3 che è il M.C.D.) Elaboratore Un elaboratore o computer è una macchina digitale, elettronica, automatica capace di effettuare trasformazioni o elaborazioni sui dati digitale l informazione è rappresentata in forma numerica

Dettagli

Corso di Informatica

Corso di Informatica Corso di Informatica Modulo T1 2-Proprietà degli algoritmi 1 Prerequisiti Conoscere il concetto di M.C.D. tra due numeri interi Concetto intuitivo di funzione matematica 2 1 Introduzione Sappiamo scrivere

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

Algoritmi e Diagrammi di flusso

Algoritmi e Diagrammi di flusso Algoritmi e Diagrammi di flusso Prof. Orazio Mirabella SOMMARIO La soluzione di un problema Cos è un algoritmo Esempi di problemi algoritmici Struttura di selezione Struttura di iterazione Esempi di algoritmi

Dettagli

Algoritmo. La programmazione. Algoritmo. Programmare. Procedimento di risoluzione di un problema

Algoritmo. La programmazione. Algoritmo. Programmare. Procedimento di risoluzione di un problema Algoritmo 2 Procedimento di risoluzione di un problema La programmazione Ver. 2.4 Permette di ottenere un risultato eseguendo una sequenza finita di operazioni elementari Esempi: Una ricetta di cucina

Dettagli

Scienza dei calcolatori elettronici (Computer Science) Scienza dell informazione. è uno strumento in grado di eseguire insiemi di azioni elementari.

Scienza dei calcolatori elettronici (Computer Science) Scienza dell informazione. è uno strumento in grado di eseguire insiemi di azioni elementari. Esistono varie definizioni: Informatica Scienza dei calcolatori elettronici (Computer Science) Scienza dell informazione Definizione proposta: Scienza della rappresentazione e dell elaborazione dell informazione.

Dettagli

Introduzione agli algoritmi

Introduzione agli algoritmi Introduzione agli algoritmi Consideriamo un lettore di CD musicali portatile Questo ha a disposizione: pulsanti di controllo display che indica se il lettore è in funzione il brano che è attualmente riprodotto

Dettagli

Diagrammi a blocchi 1

Diagrammi a blocchi 1 Diagrammi a blocchi 1 Sommario Diagrammi di flusso, o a blocchi." Analisi strutturata." Esercizi. 2 Diagrammi a blocchi È un linguaggio formale di tipo grafico per rappresentare gli algoritmi." Attraverso

Dettagli

Algoritmi e loro proprietà. Che cos è un algoritmo? Un esempio di algoritmo

Algoritmi e loro proprietà. Che cos è un algoritmo? Un esempio di algoritmo 1 Cos è l informatica? L informatica è la scienza della rappresentazione e dell elaborazione dell informazione Algoritmi e loro proprietà Proprietà formali degli Algoritmi Efficienza rispetto al tempo

Dettagli

Fondamenti Teorici e Programmazione Modulo A: Elementi di Programmazione Corso di Laurea in Informatica Umanistica a.a. 2013/2014

Fondamenti Teorici e Programmazione Modulo A: Elementi di Programmazione Corso di Laurea in Informatica Umanistica a.a. 2013/2014 Fondamenti Teorici e Programmazione Modulo A: Elementi di Programmazione Corso di Laurea in Informatica Umanistica a.a. 2013/2014 E.Occhiuto Dipartimento di Informatica email: occhiuto@di.unipi.it E. Occhiuto

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

LINGUAGGI DI ALTO LIVELLO

LINGUAGGI DI ALTO LIVELLO LINGUAGGI DI ALTO LIVELLO Si basano su una macchina virtuale le cui mosse non sono quelle della macchina hardware Linguaggi di alto livello Barriera di astrazione C Fortran Modula-2 Cobol Algol Basic Ada

Dettagli

Analisi e programmazione 1

Analisi e programmazione 1 Informatica Secondo l ACM l informatica è lo studio sistematico degli algoritmi che descrivono e trasformano l informazione: la loro teoria, analisi progetto efficienza realizzazione ed applicazione 1

Dettagli

Diagrammi a blocchi 1

Diagrammi a blocchi 1 Diagrammi a blocchi 1 Sommario Diagrammi di flusso, o a blocchi. Analisi strutturata. Esercizi. 2 Diagrammi a blocchi È un linguaggio formale di tipo grafico per rappresentare gli algoritmi. Attraverso

Dettagli

Corso di Laurea Ingegneria Informatica Fondamenti di Informatica

Corso di Laurea Ingegneria Informatica Fondamenti di Informatica Corso di Laurea Ingegneria Informatica Fondamenti di Informatica Dispensa E03 Esempi di algoritmi e programmi A. Miola Novembre 2011 1 Contenuti q Progettazione di algoritmi q Problemi di ingresso - uscita

Dettagli

ALGORITMI. Obiettivo: risolvere problemi mediante l uso di un elaboratore elettronico. Elaboratore elettronico

ALGORITMI. Obiettivo: risolvere problemi mediante l uso di un elaboratore elettronico. Elaboratore elettronico ALGORITMI Obiettivo: risolvere problemi mediante l uso di un elaboratore elettronico Dati input Elaboratore elettronico Risultati Per risolvere un problema è necessario fornire una descrizione chiara e

Dettagli

Fondamenti di Informatica

Fondamenti di Informatica Fondamenti di Informatica AlgoBuild: Strutture selettive, iterative ed array Prof. Arcangelo Castiglione A.A. 2016/17 AlgoBuild : Strutture iterative e selettive OUTLINE Struttura selettiva Esempi Struttura

Dettagli

Problemi, algoritmi, linguaggi

Problemi, algoritmi, linguaggi Problemi, algoritmi, linguaggi Luca Bortolussi Dipartimento di Matematica e Informatica Università degli studi di Trieste Programmazione La programmazione è l'attività con cui si predispone l'elaboratore

Dettagli

Sviluppo di programmi. E ora, finalmente. Si comincia! 1. Analizzare il problema. 2. Progettare una soluzione (1) E necessario capire:

Sviluppo di programmi. E ora, finalmente. Si comincia! 1. Analizzare il problema. 2. Progettare una soluzione (1) E necessario capire: Sviluppo di programmi Per scrivere un programma C corretto bisogna: E ora, finalmente Si comincia! DD Cap. pp.4974 Analizzare il problema (input, output, casi estremali) 2. Progettare una soluzione (algoritmo)

Dettagli

3. Programmi e algoritmi

3. Programmi e algoritmi 3. Programmi e algoritmi Andrea Marongiu (andrea.marongiu@unimore.it) Paolo Valente Contiene slides del corso «Fondamenti di Informatica» del Prof. Montessoro (Università degli Studi di Udine) Recall:

Dettagli

Analisi e Programmazione

Analisi e Programmazione Algoritmi 1 Analisi e Programmazione I Calcolatori Elettronici si differenziano da altri tipi di macchine per il fatto che possono essere predisposti alla risoluzione di problemi di diversa natura. A tale

Dettagli

Problema: calcolare il massimo tra K numeri

Problema: calcolare il massimo tra K numeri Problema: calcolare il massimo tra K numeri Scrivere un algoritmo che fornisca in input ad un programma un numero K e K interi positivi. L algoritmo deve restituire il valore massimo tra quelli introdotti

Dettagli