Algoritmi e basi del C

Dimensione: px
Iniziare la visualizzazioe della pagina:

Download "Algoritmi e basi del C"

Transcript

1 Algoritmi e basi del C Marco D. Santambrogio marco.santambrogio@polimi.it Ver. aggiornata al 9 Marzo 2016

2 Info logistiche Sito del corso Le lezioni sono TUTTE già online Interessati ai progetti? 2

3 Linguaggio naturale 3

4 Linguaggio naturale 4

5 Linguaggio naturale: ambiguo! 5

6 Obiettivi Algoritmi Pseudocodice Diagramma di flusso Una prima introduzione al C Un primo programma Tipi di dato Strutture di controllo 6

7 What it s all about! 7

8 What it s all about! 8

9 What it s all about! 9

10 What it s all about! 10

11 What it s all about! 11

12 Algoritmi 12

13 Algortimo e Programma Algoritmo Descrizione della soluzione di problema scritta in modo da poter essere eseguita da un esecutore (eventualmente diverso dall autore dell algoritmo) Sequenza di istruzioni che operano su dati. Programma Algoritmo scritto in modo da poter essere eseguito da un calcolatore (esecutore automatico) 13

14 Come realizzare un algoritmo Parte 0/4: La brutta notizia! how to solve it di Poyla G

15 Come realizzare un algoritmo Parte 1/4: Capire il problema Quale e il problema generale che si scerca di risolvere? 15

16 Come realizzare un algoritmo Parte 2/4: Fare/creare un piano Ci possono essere diverse strategie per risolvere lo stesso problema Ipotizzare e verificare Cercare dei pattern Risolvere problemi più piccoli Disegnare uno schema 16

17 Come realizzare un algoritmo Parte 3/4: Portare avanti il piano Mettere in azione il vostro piano! Rimanere sul piano deciso a meno che non vi siano evidenti motivi per credere che esso non funzionerà più La pazienza è il vostro miglior alleato 17

18 Come realizzare un algoritmo Parte 4/4: Ragionare e comprendere Comprendere quello che si è fatto e dove l algoritmo individuato possa essere applicato al meglio La pratica è fondamentale! 18

19 Testare il proprio lavoro!!! Se vi è qualche cosa che non funziona nel vostro programma/ algoritmo, gli utenti lo troveranno! 19

20 Acquisto DVD Novita Novita Dove lo cerco? In quale settore? Indicatori di settore Azione Trovato il settore, come trovo il mio DVD? Ordine alfabetico 20

21 Alogoritmo per l acquisto DVD 1. Acquisisci il nome del settore (s) del DVD (d) 2. Vai al settore (s) 3. Cerca (t) 4. Prendi il DVD (d) Acquisisci e Cerca sono anche loro algoritmi 21

22 CERCA: contesto e problema Contesto Sei nel settore (s) corretto Nel settore sono presenti diversi DVD Il settore puo essere visto come un insieme di DVD: s={d 0, d 1,, d n } Problema Devo trovare il DVD (d t ) tra tutti i DVD presenti nel settore (s) Aiuto: il settore e ordinato I DVD sono ordinati alfabeticamente 22

23 Algoritmo CERCA Noti s={d 0, d 1,, d n }, ord. alfabeticamente DVD cercato = d t 1.Ci sono DVD? Allora 1. Leggo il titolo del primo DVD in s 2. Se il titolo e il titolo cercato Allora concludo la ricerca con successo Altrimenti passo al DVD successivo Altrimenti concludo la ricerca con esito negativo 23

24 CERCA: osservazioni Cosa succede se il settore e vuoto? Come funziona la mia ricerca? Se in s vi sono DVD e io cerco Zorro? Scenario ancora peggiore Voglio cercare il numero del mio professore di IEIM (Santambrogio) nella rubrica telefonica di Milano.. Esistono diversi modi per risolvere un problema 24

25 CERCA migliorata Noti s={d 0, d 1,, d n }, ord. alfabeticamente DVD cercato = d t 1. Ci sono DVD? Allora 1. Leggo il titolo del DVD (d x ) nel mezzo di s 2. Se il titolo di d x e il titolo cercato Allora concludo la ricerca con successo Altrimenti se d x < d t» allora ricomincio da 1 considerando la meta superiore di s» Altrimenti ricomincio da 1 considerando la meta inferiore di s Altrimenti concludo la ricerca con esito negativo 25

26 Graficamente: Noti dt s={d0, d1,, d11} d0 d1 d2 d3 d4 d5 d6 d7 d8 d9 d10 d11 26

27 Leggo dx e lo confronto con dt dx=d6 d6 = dt? NO d6 < dt 27

28 Ricomincio sulla meta superiore d6 dt d7 d8 d9 d10 d11 dx=d9 28

29 Leggo d x e lo confronto con d t d x =d 9 d 9 = d t? SI d 9 Termino con successo la mia ricerca comprando d 9 29

30 Come si specifica un algoritmo? Utilizzando dello pseudocodice Se A > B allora B = A altrimenti A = B Utilizzando dei diagrammi di flusso (aka schemi a blocchi) Inizio Fine Assegnamento Leggi Test Scrivi 30

31 Come specificare un algortimo Vorremmo farci nuovi amici! 31

32 Come specificare un algortimo Vorremmo farci nuovi amici! 32

33 L Algoritmo dell amicizia Dr. Sheldon Cooper, PhD 33

34 Massimo Comune Divisore Definizione Dicesi Massimo Comune Divisore (M.C.D.) il piu grande tra i divisori comuni a due o piu numeri Esempi Dati A=12, B=15 Divisori comuni: 1, 3 - MCD=3 Dati A=10, B=30 e C=20 Divisori comuni: 1, 2, 5, 10 - MCD=10 34

35 MCD: pseudocodice 1. Leggi A e B 2. min= il minimo tra A e B 3. tmp = 1 4. MCD = 1 5. Finche tmp < min 1. tmp = tmp Se tmp divide A e B 1. Allora MCD = tmp 6. Stampa MCD 35

36 MCD: diagramma di flusso Inizio Leggi A e B min=minimo{a,b} tmp=1 MCD=1 Stampa MCD no tmp<min? Fine si tmp = tmp + 1 tmp divide A e B si MCD = tmp no 36

37 Fonti per lo studio + Credits Fonti per lo studio how to solve it, Poyla G PolyaHowToSolveIt.pdf Informatica arte e mestiere, S. Ceri, D. Mandrioli, L. Sbattella, McGrawHill Capitolo 3 Introduzione ai sistemi informatici, D. Sciuto, G. Buonanno, L. Mari, 4a Ed, McGrawHill Capitolo 3, 4 The Art & Craft of Computing, S. Ceri, D. Mandrioli, L. Sbattella, Addison-Wesley Capitolo 3

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 4 O/obre 2013 What it s all about! 2 What it s all about! 3 What it s all about! 4 Obiettivi Algoritmi Pseudocodice

Dettagli

DIPARTIMENTO DI ELETTRONICA E INFORMAZIONE. Marco D. Santambrogio Ver. aggiornata al 9 O/obre 2010

DIPARTIMENTO DI ELETTRONICA E INFORMAZIONE. Marco D. Santambrogio Ver. aggiornata al 9 O/obre 2010 Marco D. Santambrogio marco.santambrogio@polimi.it Ver. aggiornata al 9 O/obre 2010 Algoritmi Pseudocodice Diagramma di flusso Una prima introduzione al C Un primo programma Tipi di dato Strutture di controllo

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 8 Marzo 2013 Come non ricordare che giornata sia oggi 8 marzo 1459: nasce Bernardino Corio Storico italiano

Dettagli

Prima&esercitazione&

Prima&esercitazione& Prima&esercitazione& Prima esercitazione: algoritmi e tipi di dato Riccardo(Ca*aneo( ( Dipar/mento(di(Ele*ronica,(Informazione(e(Biomedica( matteo.ferroni@polimi.it Politecnico(di(Milano& Matteo Ferroni

Dettagli

Come affrontare un problema

Come affrontare un problema Come affrontare un problema Marco D. Santambrogio marco.santambrogio@polimi.it Ver. aggiornata al 24 Agosto 2015 Massimo Comune Divisore Definizione Dicesi Massimo Comune Divisore (M.C.D.) il piu grande

Dettagli

Come affrontare un problema

Come affrontare un problema Come affrontare un problema Marco D. Santambrogio marco.santambrogio@polimi.it Ver. aggiornata al 3 Novembre 2015 Compitino! 2 Compitino! 25 Novembre 3 Compitino! 25 Novembre @4.30pm! 4 Massimo Comune

Dettagli

Algoritmi e basi del C Struttura di un programma

Algoritmi e basi del C Struttura di un programma Algoritmi e basi del C Struttura di un programma Marco D. Santambrogio marco.santambrogio@polimi.it Ver. aggiornata al 11 Marzo 2014 Informazione: dato + significato Che giorno è oggi? 14 Marzo o anche

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 24 Agosto 2015 Benvenuti nel fantastico mondo del C 2 Il primo programma: ciao mondo 3 Ciao Mondo: stdio.h Come

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 3 O/obre 2013 Installation Party Dove: L.06 Quando: Sabato 12 Ottobre 9.00am - 12.00pm 2 WAT Il docente ha messo

Dettagli

DIPARTIMENTO DI ELETTRONICA E INFORMAZIONE. Costrutti iterativi. Marco D. Santambrogio Ver. aggiornata al 26 Marzo 2014

DIPARTIMENTO DI ELETTRONICA E INFORMAZIONE. Costrutti iterativi. Marco D. Santambrogio Ver. aggiornata al 26 Marzo 2014 Costrutti iterativi Marco D. Santambrogio marco.santambrogio@polimi.it Ver. aggiornata al 26 Marzo 2014 Mi mancano 2 Mi mancano 3 Obiettivi Costrutti iterativi do.. while While for 4 Problema: caratteri

Dettagli

Algoritmi e basi del C Struttura di un programma

Algoritmi e basi del C Struttura di un programma Algoritmi e basi del C Struttura di un programma Marco D. Santambrogio marco.santambrogio@polimi.it Ver. aggiornata al 17 Marzo 2015 Compitini Compitini di INFO: 24 Aprile 2015 4.15pm @ C.G.1 (Ed. 9) 21

Dettagli

DIPARTIMENTO DI ELETTRONICA E INFORMAZIONE. Costrutti iterativi. Marco D. Santambrogio Ver. aggiornata al 27 Marzo 2015

DIPARTIMENTO DI ELETTRONICA E INFORMAZIONE. Costrutti iterativi. Marco D. Santambrogio Ver. aggiornata al 27 Marzo 2015 Costrutti iterativi Marco D. Santambrogio marco.santambrogio@polimi.it Ver. aggiornata al 27 Marzo 2015 Umh Per farvi aggiungere al gruppo su Facebook usate un nome significativo! 2 Umh Per farvi aggiungere

Dettagli

DIPARTIMENTO DI ELETTRONICA E INFORMAZIONE. Costrutti iterativi. Marco D. Santambrogio Ver. aggiornata al 20 Marzo 2013

DIPARTIMENTO DI ELETTRONICA E INFORMAZIONE. Costrutti iterativi. Marco D. Santambrogio Ver. aggiornata al 20 Marzo 2013 Costrutti iterativi Marco D. Santambrogio marco.santambrogio@polimi.it Ver. aggiornata al 20 Marzo 2013 WAT? WAT Il bello dei feedback l'ingegnere Nacci è stato molto chiaro nelle spiegazioni L'esercitatore

Dettagli

Algoritmi. Informatica B. Daniele Loiacono

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

Dettagli

Algoritmi. Informatica B. Daniele Loiacono

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

Dettagli

Lab 3 Info B. Buon 314mo giorno del 2015! Marco D. Santambrogio Matteo Ferroni

Lab 3 Info B. Buon 314mo giorno del 2015! Marco D. Santambrogio Matteo Ferroni Lab 3 Info B Marco D. Santambrogio marco.santambrogio@polimi.it Matteo Ferroni matteo.ferroni@polimi.it Ver. aggiornata al 10 Novembre2015 Buon 314mo giorno del 2015! Demo 2 Demo 3 Demo Esame il 25Nov

Dettagli

Algoritmi e (cenni sul) calcolatore

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

Dettagli

Informatica B (Docente Vittorio Zaccaria)

Informatica B (Docente Vittorio Zaccaria) Informatica B (Docente Vittorio Zaccaria) Informatica B - Codice Corso: 081369 - A.A. 2011/2012 INGEGNERIA MECCANICA (BV) - INGEGNERIA IV (1 liv.) - Scaglione S - Z INGEGNERIA ENERGETICA (BV) - INGEGNERIA

Dettagli

Codifica binaria dell informazione

Codifica binaria dell informazione Codifica binaria dell informazione Marco D. Santambrogio marco.santambrogio@polimi.it Ver. aggiornata al 20 Marzo 2016 Un obiettivo per domarli tutti 2 Un obiettivo per domarli tutti 3 Obiettivi Rappresentazione

Dettagli

Lab 4 Info B. Marco D. Santambrogio Matteo Ferroni Ver. aggiornata al 24 Agosto 2015

Lab 4 Info B. Marco D. Santambrogio Matteo Ferroni Ver. aggiornata al 24 Agosto 2015 Lab 4 Info B Marco D. Santambrogio marco.santambrogio@polimi.it Matteo Ferroni matteo.ferroni@polimi.it Ver. aggiornata al 24 Agosto 2015 Calendario dei Labs: C 20 Ottobre 2015, 10am-12pm, @ LM1 Installation

Dettagli

Lab 4 Info B. Marco D. Santambrogio Matteo Ferroni Ver. aggiornata al 20 O0obre 2015

Lab 4 Info B. Marco D. Santambrogio Matteo Ferroni Ver. aggiornata al 20 O0obre 2015 Lab 4 Info B Marco D. Santambrogio marco.santambrogio@polimi.it Matteo Ferroni matteo.ferroni@polimi.it Ver. aggiornata al 20 O0obre 2015 Calendario dei Labs: MATLAB 15 Dic 2015, 10.30am-12.30pm, @ B6.27

Dettagli

Programmazione. Dipartimento di Matematica. Ing. Cristiano Gregnanin. 29 febbraio Corso di laurea in Matematica

Programmazione. Dipartimento di Matematica. Ing. Cristiano Gregnanin. 29 febbraio Corso di laurea in Matematica Programmazione Dipartimento di Matematica Ing. Cristiano Gregnanin Corso di laurea in Matematica 29 febbraio 2016 1 / 33 INTRODUZIONE AGLI ALGORITMI Prima di riuscire a scrivere un programma, bisogna conoscere

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

Problemi e algoritmi. Il che cosa e il come. F. Damiani - Alg. & Lab. 04/05 (da U. de' Liguoro - Alg. & Spe. 03/04)

Problemi e algoritmi. Il che cosa e il come. F. Damiani - Alg. & Lab. 04/05 (da U. de' Liguoro - Alg. & Spe. 03/04) Problemi e algoritmi Il che cosa e il come Il che cosa ed il come Problema: descrive che cosa si deve calcolare Specifica (di un algoritmo): descrive che cosa calcola un algoritmo Algoritmo: descrive come

Dettagli

Problemi e algoritmi. Il che cosa ed il come. Il che cosa ed il come. Il che cosa e il come

Problemi e algoritmi. Il che cosa ed il come. Il che cosa ed il come. Il che cosa e il come Problemi e algoritmi Il che cosa e il come Problema: descrive che cosa si deve calcolare Specifica (di un algoritmo): descrive che cosa calcola un algoritmo Algoritmo: descrive come effettuare un calcolo

Dettagli

Stringhe e tipi di dati strutturati

Stringhe e tipi di dati strutturati Stringhe e tipi di dati strutturati Marco D. Santambrogio marco.santambrogio@polimi.it Ver. aggiornata al 21 Marzo 2013 Info sui Labs http://tinyurl.com/ieimlabextra Ricordate di portare un adattatore!

Dettagli

1.1 Concetti base dell Informatica: Algoritmi

1.1 Concetti base dell Informatica: Algoritmi 1.1 Concetti base dell Informatica: Algoritmi Insegnamento di Informatica Elisabetta Ronchieri Corso di Laurea di Economia, Universitá di Ferrara I semestre, anno 2014-2015 Elisabetta Ronchieri (Universitá)

Dettagli

Il sistema di elaborazione

Il sistema di elaborazione Il sistema di elaborazione Marco D. Santambrogio marco.santambrogio@polimi.it Ver. aggiornata al 15 Maggio 2015 Obiettivi Codifica delle istruzioni e dei dati per l esecuzione automatica Architettura dei

Dettagli

Codifica binaria dell informazione

Codifica binaria dell informazione Codifica binaria dell informazione Marco D. Santambrogio marco.santambrogio@polimi.it Ver. aggiornata al 13 Agosto 2014 Un obiettivo per domarli tutti 2 Obiettivi Rappresentazione dell informazione Da

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

Introduzione al corso

Introduzione al corso Dipartimento di Elettronica ed Informazione Politecnico di Milano Informatica e CAD (c.i.) - ICA Prof. Pierluigi Plebani A.A. 2010/2011 Introduzione al corso La presente dispensa e da utilizzarsi ai soli

Dettagli

DIPARTIMENTO DI ELETTRONICA E INFORMAZIONE. Recap sul C. Marco D. Santambrogio Ver. aggiornata al 11 Aprile 2013

DIPARTIMENTO DI ELETTRONICA E INFORMAZIONE. Recap sul C. Marco D. Santambrogio Ver. aggiornata al 11 Aprile 2013 Recap sul C Marco D. Santambrogio marco.santambrogio@polimi.it Ver. aggiornata al 11 Aprile 2013 Feedback NUOVO, per le exe: http://tinyurl.com/ieimexe2013 Per i lab: http://tinyurl.com/feedback-labieim2013

Dettagli

Array n-dimensionali e tipi di dati strutturati

Array n-dimensionali e tipi di dati strutturati Array n-dimensionali e tipi di dati strutturati Marco D. Santambrogio marco.santambrogio@polimi.it Ver. aggiornata al 5 Novembre 2013 Info di servizio Demo 1mo compitino In LM5 @ 12pm - venerdì 8 Nov In

Dettagli

Elementi di Informatica e Programmazione

Elementi di Informatica e Programmazione Elementi di Informatica e Programmazione Introduzione Corsi di Laurea in: Ingegneria Civile Ingegneria per l Ambiente e il Territorio Università degli Studi di Brescia Docente: Daniela Fogli Informazioni

Dettagli

Informatica di Base - 6 c.f.u.

Informatica di Base - 6 c.f.u. Università degli Studi di Palermo Dipartimento di Ingegneria Informatica Informatica di Base - 6 c.f.u. Anno Accademico 2007/2008 Docente: ing. Salvatore Sorce Progettazione di algoritmi e attributi Linguaggio

Dettagli

Introduzione al corso

Introduzione al corso Dipartimento di Elettronica ed Informazione Politecnico di Milano Informatica e CAD (c.i.) - ICA Prof. Pierluigi Plebani A.A. 2008/2009 Introduzione al corso La presente dispensa e da utilizzarsi ai soli

Dettagli

L ELABORATORE ELETTRONICO

L ELABORATORE ELETTRONICO L ELABORATORE ELETTRONICO Il calcolatore elettronico è uno strumento in grado di eseguire insiemi di azioni ( mosse ) elementari le azioni vengono eseguite su oggetti (dati) per produrre altri oggetti

Dettagli

Laboratorio di Informatica

Laboratorio di Informatica Laboratorio di Informatica Ingegneria Meccanica Esercitazione 5, 6 novembre 2007 versione 10 novembre 2007 Da Esercitazione 3 (I) 5. Scrivere un programma che, acquisito da stdin un valore intero (int)

Dettagli

ELEMENTI DI INFORMATICA L. Ing. Claudia Chiusoli

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

Dettagli

Recap su: array e puntatori

Recap su: array e puntatori Recap su: array e puntatori Marco D. Santambrogio marco.santambrogio@polimi.it Ver. aggiornata al 20 Aprile 2015 Sui codici a lunghezza fissa 2 Sui codici a lunghezza fissa 3 Sui codici a lunghezza fissa

Dettagli

Algoritmi. Un tema centrale dell informatica è lo studio degli algoritmi.

Algoritmi. Un tema centrale dell informatica è lo studio degli algoritmi. Algoritmi Un tema centrale dell informatica è lo studio degli algoritmi. Ora nostro obiettivo sarà quello di esplorare a sufficienza questa materia fondamentale per poter capire e apprezzare appieno l

Dettagli

La formalizzazione dell informazione: Dati e Diagrammi di Flusso

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

Dettagli

Array n-dimensionali e tipi di dati strutturati

Array n-dimensionali e tipi di dati strutturati Array n-dimensionali e tipi di dati strutturati Marco D. Santambrogio marco.santambrogio@polimi.it Ver. aggiornata al 8 Aprile 2016 Logistica Laboratori Lunedì (3.30pm 6pm) EG7 (No portatili e basta) L26.1.3

Dettagli

DIPARTIMENTO DI ELETTRONICA E INFORMAZIONE. Array e stringhe. Marco D. Santambrogio Ver. aggiornata al 6 Aprile 2016

DIPARTIMENTO DI ELETTRONICA E INFORMAZIONE. Array e stringhe. Marco D. Santambrogio Ver. aggiornata al 6 Aprile 2016 Array e stringhe Marco D. Santambrogio marco.santambrogio@polimi.it Ver. aggiornata al 6 Aprile 2016 Logistica Laboratori 2 Logistica Laboratori @DrepssedDarth 3 Logistica Laboratori Lunedì (3.30pm 6pm)

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

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

Lezione 8. Soluzione di un problema Problema. Soluzione di un problema. Comprensione del Problema. Analisi. Introduzione agli algoritmi Lezione 8 Introduzione agli algoritmi Lezione tratta dal libro: D. Sciuto, G. Buonanno, W. Fornaciari, L. Mari Introduzione ai sistemi informatici Seconda Edizione, McGraw-Hill Capitolo 2: La formalizzazione

Dettagli

Introduzione. Informatica B. Daniele Loiacono

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

Dettagli

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

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

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

Dettagli

Informatica! appunti dalle lezioni dal 18/09/2012 al 28/09/2012!!

Informatica! appunti dalle lezioni dal 18/09/2012 al 28/09/2012!! Informatica! appunti dalle lezioni dal 18/09/2012 al 28/09/2012!! Definizioni! Informatica: scienza per l elaborazione automatica dell informazione! Informatica = Informazione + Automatica! Informazione:

Dettagli

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

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

Dettagli

Algoritmi e loro proprietà. Proprietà formali degli Algoritmi Efficienza rispetto al tempo Efficienza rispetto allo spazio

Algoritmi e loro proprietà. Proprietà formali degli Algoritmi Efficienza rispetto al tempo Efficienza rispetto allo spazio Algoritmi e loro proprietà Proprietà formali degli Algoritmi Efficienza rispetto al tempo Efficienza rispetto allo spazio Cos è l informatica? L informatica è la scienza della rappresentazione e dell elaborazione

Dettagli

Introduzione. Informatica Generale. Lezioni: lunedì h. 11:10-13:00 lab. Zironi martedì h. 11:10-13:00 lab. Zironi mercoledì h. 9:10-11:00 lab.

Introduzione. Informatica Generale. Lezioni: lunedì h. 11:10-13:00 lab. Zironi martedì h. 11:10-13:00 lab. Zironi mercoledì h. 9:10-11:00 lab. Introduzione Informatica Generale Lezioni: lunedì h. 11:10-13:00 lab. Zironi martedì h. 11:10-13:00 lab. Zironi mercoledì h. 9:10-11:00 lab. Zironi Docenti: Dott.ssa Federica Mandreoli Ricevimento: lunedì

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

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

Cos è l informatica? Un esempio di algoritmo. Che cos è un algoritmo? Algoritmi e loro proprietà. non ambigue ed effettivamente calcolabili

Cos è l informatica? Un esempio di algoritmo. Che cos è un algoritmo? Algoritmi e loro proprietà. non ambigue ed effettivamente calcolabili Algoritmi e loro proprietà Proprietà formali degli Algoritmi Efficienza rispetto al tempo Efficienza rispetto allo spazio Cos è l informatica? L informatica è la scienza della rappresentazione e dell elaborazione

Dettagli

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

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

Dettagli

L uomo come esecutore di algoritmi

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

Dettagli

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

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

Dettagli

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

Introduzione all informatica

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

Dettagli

Esercitazioni di Informatica B A.A. 2010/2011 Pseudocodice. Nicola Vitucci

Esercitazioni di Informatica B A.A. 2010/2011 Pseudocodice. Nicola Vitucci Esercitazioni di Informatica B A.A. 2010/2011 Pseudocodice Cos'è lo pseudocodice? Abbiamo visto che prima di scrivere del codice è importante innanzitutto avere le idee chiare sul problema da affrontare

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

A lezione sono stati presentati i seguenti passi per risolvere un problema:

A lezione sono stati presentati i seguenti passi per risolvere un problema: Calcolo delle radici di un polinomio Problema: Dati i coefficienti a,b,c di un polinomio di 2 grado della forma: ax^2 + bx + c = 0, calcolare le radici. A lezione sono stati presentati i seguenti passi

Dettagli

Laboratorio di Calcolo di Aerodinamica: II Lezione

Laboratorio di Calcolo di Aerodinamica: II Lezione Ingegneria Aerospaziale a.a. 2016/17 Laboratorio di Calcolo di Aerodinamica: II Lezione Francesco Battista francesco.battista@uniroma1.it DIMA: Dipartimento di Ingegneria Meccanica e Aerospaziale Programma:

Dettagli

Il sistema di elaborazione

Il sistema di elaborazione Il sistema di elaborazione Marco D. Santambrogio marco.santambrogio@polimi.it Ver. aggiornata al 20 Maggio 2015 Un po di logistica 2 2ndo Compitino 21 Maggio @ NECST Lab (12.30pm) 22 Maggio @ CG1 (2pm)

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

Progettazione di algoritmi e attributi

Progettazione di algoritmi e attributi Università degli Studi di Palermo Dipartimento di Ingegneria Informatica Elaborazione di Immagini e Suoni / Riconoscimento e Visioni Artificiali 12 c.f.u. Anno Accademico 2008/2009 Docente: ing. Salvatore

Dettagli

CORSO DI INFORMATICA Maria Grazia Celentano

CORSO DI INFORMATICA Maria Grazia Celentano CORSO DI INFORMATICA Maria Grazia Celentano INFORMATICA E PROGRAMMAZIONE L Informatica è definita come la Scienza della Rappresentazione e dell Elaborazione dell informazione o, in altri termini, lo studio

Dettagli

DIPARTIMENTO DI ELETTRONICA E INFORMAZIONE. Array, matrici. Marco D. Santambrogio Ver. aggiornata al 21 Marzo 2013

DIPARTIMENTO DI ELETTRONICA E INFORMAZIONE. Array, matrici. Marco D. Santambrogio Ver. aggiornata al 21 Marzo 2013 Array, matrici Marco D. Santambrogio marco.santambrogio@polimi.it Ver. aggiornata al 21 Marzo 2013 WAT? Questa volta non ce ne sono WAT 2 Obiettivi Gli array, questi sconosciuti Gli array in C Array n-dimensionali

Dettagli

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

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

Dettagli

Laboratorio di Informatica

Laboratorio di Informatica Laboratorio di Informatica Ingegneria Meccanica Esercitazione 4, 30 ottobre 2007 versione 3 novembre 2007 Esercizi preliminari (I) 1. Scrivere un programma che, acquisita da stdin un singolo valore intero

Dettagli

Algoritmi. Andrea Passerini Informatica. Algoritmi

Algoritmi. Andrea Passerini Informatica. Algoritmi Andrea Passerini passerini@disi.unitn.it Informatica Elaboratore Un elaboratore o computer è una macchina digitale, elettronica, automatica capace di effettuare trasformazioni o elaborazioni sui dati digitale

Dettagli

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

Università degli Studi di Verona. Algoritmie Diagrammidiflusso. Gennaio Sergio Marin Vargas. Dipartimento di Biotecnologie Università degli Studi di Verona Dipartimento di Biotecnologie Laurea in Biotecnologie Corso di Informatica2014/2015 Algoritmie Diagrammidiflusso Gennaio 2015 - Sergio Marin Vargas Problemi e soluzioni

Dettagli

Informatica per la Storia dell Arte

Informatica per la Storia dell Arte Università degli Studi di Palermo Dipartimento di Ingegneria Chimica, Gestionale, Informatica, Meccanica Informatica per la Storia dell Arte Anno Accademico 2013/2014 Docente: ing. Salvatore Sorce Algoritmi

Dettagli

Appunti di informatica. Lezione 4 anno accademico 2015-2016 Mario Verdicchio

Appunti di informatica. Lezione 4 anno accademico 2015-2016 Mario Verdicchio Appunti di informatica Lezione 4 anno accademico 2015-2016 Mario Verdicchio Numeri primi Si definisce primo un numero intero maggiore di 1 che ha due soli divisori: se stesso e 1 Esempi di numeri primi:

Dettagli

Che cosa si intende per INFORMATICA?

Che cosa si intende per INFORMATICA? Che cosa si intende per INFORMATICA? Scienza della rappresentazione e dell elaborazione dell informazione L informazione è il concetto principale dell Informatica. L elaborazione dell informazione avviene

Dettagli

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

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

Dettagli

Dispensa di Informatica II.1

Dispensa di Informatica II.1 ALGORITMI La dispensa di seguito proposta si pone come tutorial per poter porre le basi per la realizzazione di algoritmi che poi potranno eventualmente essere sviluppati in moduli software con metodologia

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

Lab 1 Info B. Diego Carrera Ing. Gian Enrico Conti 17 Ottobre 2016

Lab 1 Info B. Diego Carrera Ing. Gian Enrico Conti 17 Ottobre 2016 Lab 1 Info B Diego Carrera diego.carrera@polimi.it Ing. Gian Enrico Conti gianenrico.conti@mail.polimi.it 17 Ottobre 2016 Lab 1: Agenda Informazioni sui laboratori C: richiami Esercizi Lab1 2 Lab 1: Agenda

Dettagli

Diagramma a blocchi per la selezione, in un mazzo di chiavi, di quella che apre un lucchetto

Diagramma a blocchi per la selezione, in un mazzo di chiavi, di quella che apre un lucchetto Diagramma a blocchi per la selezione, in un mazzo di chiavi, di quella che apre un lucchetto 14 1. Dato un numero dire se è positivo o negativo 2. e se il numero fosse nullo? 3. Eseguire il prodotto tra

Dettagli

DIPARTIMENTO DI ELETTRONICA E INFORMAZIONE. Array e stringhe. Marco D. Santambrogio Ver. aggiornata al 28 O0obre 2014

DIPARTIMENTO DI ELETTRONICA E INFORMAZIONE. Array e stringhe. Marco D. Santambrogio Ver. aggiornata al 28 O0obre 2014 Array e stringhe Marco D. Santambrogio marco.santambrogio@polimi.it Ver. aggiornata al 28 O0obre 2014 Frase insieme di caratteri Che cosa è una frase? Un insieme di caratteri Come la rappresento? Un insieme,

Dettagli

Sistemi di Elaborazione delle Informazioni

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

Dettagli

Lab 2 Info B. Diego Carrera Ing. Gian Enrico Conti 7 Novembre 2016

Lab 2 Info B. Diego Carrera Ing. Gian Enrico Conti 7 Novembre 2016 Lab 2 Info B Diego Carrera diego.carrera@polimi.it Ing. Gian Enrico Conti gianenrico.conti@mail.polimi.it 7 Novembre 2016 Per macchine PoliMI https://virtualdesktop.polimi.it 2 Richiami: Stringhe Le stringhe

Dettagli

Algoritmo. Programmazione

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

Dettagli

preparazione pane frattau per 4 persone

preparazione pane frattau per 4 persone Algoritmi introduzione Quando, nella vita di tutti i giorni, ci troviamo di fronte alla necessità di risolvere un problema, seguiamo, anche se non ce ne rendiamo conto, una sequenza di passi abbastanza

Dettagli

1.1 Concetti base dell Informatica: Algoritmi

1.1 Concetti base dell Informatica: Algoritmi 1.1 Concetti base dell Informatica: Algoritmi Insegnamento di Informatica Elisabetta Ronchieri Corso di Laurea di Economia, Università di Ferrara I semestre, anno 2014-2015 Elisabetta Ronchieri (Università)

Dettagli

L ELABORATORE ELETTRONICO!

L ELABORATORE ELETTRONICO! L ELABORATORE ELETTRONICO! Il calcolatore elettronico è uno strumento in grado di eseguire insiemi di azioni ( mosse ) elementari le azioni vengono eseguite su oggetti (dati) per produrre altri oggetti

Dettagli

Introduzione agli Algoritmi 4. Problemi. Dal Problema alla Soluzione

Introduzione agli Algoritmi 4. Problemi. Dal Problema alla Soluzione Sommario Problemi e soluzioni Definizione informale di algoritmo e esempi Proprietà degli algoritmi Input/Output, Variabili Algoritmi senza input o output 1 2 Problema Definizione (dal De Mauro Paravia):

Dettagli

Sistemi di Elaborazione delle Informazioni

Sistemi di Elaborazione delle Informazioni SCUOLA DI MEDICINA E CHIRURGIA Università degli Studi di Napoli Federico II Corso di Sistemi di Elaborazione delle Informazioni Dott. Francesco Rossi a.a. 2016/2017 1 I linguaggi di programmazione e gli

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

Laboratorio di Calcolatori 1 Corso di Laurea in Fisica A.A. 2006/2007

Laboratorio di Calcolatori 1 Corso di Laurea in Fisica A.A. 2006/2007 Laboratorio di Calcolatori 1 Corso di Laurea in Fisica A.A. 2006/2007 Dott.Davide Di Ruscio Dipartimento di Informatica Università degli Studi di L Aquila Lezione del 07/02/07 Nota Questi lucidi sono tratti

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

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

Corso di Informatica A.A Corso di Informatica A.A. 2009-2010 Lezione 7 Lezione 7 1 Algoritmi e loro proprietà Efficienza rispetto al tempo Efficienza rispetto allo spazio Efficienza degli algoritmi Una volta determinato un algoritmo

Dettagli

Fondamenti di Informatica Programma dettagliato del corso e appunti integrativi del libro di testo consigliato Anno Accademico

Fondamenti di Informatica Programma dettagliato del corso e appunti integrativi del libro di testo consigliato Anno Accademico acoltà di ngegneria Università di irenze Corso di Laurea in ngegneria Meccanica ondamenti di nformatica Programma dettagliato del corso e appunti integrativi del libro di testo consigliato Anno Accademico

Dettagli