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

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

Programmazione: Sommario

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

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

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

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

Corso di Informatica di Base

Introduzione alla programmazione

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

MODULO 07. La soluzione dei problemi mediante gli algoritmi

3. Programmi e algoritmi

Concetti Introduttivi. Il Computer

Informatica Generale Andrea Corradini Gli algoritmi e la risoluzione di problemi

L ELABORATORE ELETTRONICO

Informatica. Come si risolve un problema?

Elementi di programmazione

Introduzione agli Algoritmi

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

Formalismi per la descrizione di algoritmi

Algoritmi e Programmi

ELABORAZIONE DELLE INFORMAZIONI (ALGORITMI E LINGUAGGI DI PROGRAMMAZIONE)

Problema: dati i voti di tutti gli studenti di una classe determinare il voto medio della classe.

Cosa è l Informatica?

Algoritmi. Pagina 1 di 5

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

CORSO DI PROGRAMMAZIONE E INFORMATICA GENERALE 1

LABORATORIO DI INFORMATICA

Rappresentazione con i diagrammi di flusso (Flow - chart)

L ELABORATORE ELETTRONICO!

Problemi, algoritmi, calcolatore

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

Sviluppo di programmi

Il concetto di calcolatore e di algoritmo

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

Cosa è un programma. Informatica di Base -- R.Gaeta 18

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

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

Fasi della programmazione. Gabriella Trucco

Lezione 1. Problemi Algoritmi Programmi

Linguaggi, Traduttori e le Basi della Programmazione

Risoluzione di problemi con l uso dell elaboratore elettronico

INFORMATICA. Scienza degli elaboratori elettronici (Computer. informazione

Concetti di base dell ICT

Elementi di programmazione

INFORMATICA Algoritmi come formalizzazione della risoluzione di un problema

FONDAMENTI DI INFORMATICA

Elaboratore Elettronico

ALGORITMI: PROPRIETÀ FONDAMENTALI

Corso di Fondamenti di Informatica

Il Concetto di Algoritmo Corso di Informatica Laurea in Fisica

Unità di apprendimento 6. Dal problema al programma

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

Lez. 5 La Programmazione. Prof. Salvatore CUOMO

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

INFORMATICA DI BASE Linguaggio C Prof. Andrea Borghesan

I Esercitazione: Istallazione Sistema Operativo

Algoritmi, linguaggi e programmi. Emilio Di Giacomo e Walter Didimo

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

Sistemi di Elaborazione delle Informazioni

Introduzione alla programmazione strutturata

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

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

Elementi di informatica

3. Indicare cosa sta a significare la figura geometrica del rombo in un diagramma a blocchi

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

1 Esercizi in pseudocodice

Corso di Informatica. Problemi ed algoritmi. Ing Pasquale Rota

Corso di Informatica

Lez. 8 La Programmazione. Prof. Pasquale De Michele (Gruppo 2) e Raffaele Farina (Gruppo 1) 1

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

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

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

Scaletta. Cenni di computabilità. Cosa fa un programma? Definizioni (1/2) Definizioni (2/2) Problemi e domande. Stefano Mizzaro 1

Laboratorio di Programmazione

Sistemi Web per il turismo - lezione 3 -

RAPPRESENTAZIONE GLI ALGORITMI NOTAZIONE PER LA RAPPRESENTAZIONE DI UN ALGORITMO

INFORMATICA GENERALE Prof. Alberto Postiglione. Università degli Studi di Salerno. UD 3.1a: Gli Algoritmi

Introduzione: informatica. 18/2/2013 Informatica applicata alla comunicazione multimediale Cristina Bosco

FONDAMENTI DI INFORMATICA

FONDAMENTI DI PROGRAMMAZIONE Corso di Laurea in MATEMATICA a.a. 2016/2017

Teoria dell Informazione

Informatica. Elaborazione di informazione

Fondamenti VBA. Che cos è VBA

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

Corso di Informatica Modulo T1 1-Il concetto di algoritmo

Introduzione alla programmazione. Walter Didimo

Elaborazione dell informazione

Fondamenti di Informatica 1 (I Modulo) Introduzione agli algoritmi. Roberto Basili a.a

Interazione tra matematica e informatica

Descrizione di un algoritmo

ALGORITMI E PROGRAMMAZIONE STRUTTURATA. Prof R. Bresolin a.s

Algoritmi e soluzione di problemi

Algoritmi e Linguaggi

INFORMATICA 1 Corso di Laurea in Fisica a.a. 2007/08

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

Introduzione al funzionamento di un calcolatore elettronico

Unità di apprendimento 6. Dal problema al programma

Scrivere il software. Scrivere il software. Interprete. Compilatore e linker. Fondamenti di Informatica

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

INFORMATICA GENERALE Prof. Alberto Postiglione Dipartimento Scienze della Comunicazione Università degli Studi di Salerno

Transcript:

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

Il Problema computazionale È computazionale un problema che da alcuni dati iniziali porta ad un risultato in uscita tramite almeno una sequenza preordinata di passi; Esempi nella vita pratica si trovano facilmente nell arte culinaria o nella musica.

Esempi Il Risotto alla Zucca: - Abbiamo gli ingredienti (riso, zucca, olio, prezzemolo, cipolla, sale, etc.) con le giuste quantità; - Seguiamo la ricetta; - Serviamo il piatto a tavola.

Altro esempio L esecuzione della nona di Beethoven: - Abbiamo l orchestra, il direttore ed i musicisti; - Seguiamo lo spartito; - La musica riempie la sala.

Ma Non è così facile come sembra! Per scrivere la sequenza di passi bisogna essere un bravo cuoco o un bravo compositore (o entrambi, come Rossini); Anche per sapere eseguire bisogna imparare l arte (bisogna avere un ottimo esecutore).

Il cuore dell informatica definizione di un particolare problema computazionale scrittura di un algoritmo che lo risolve scrittura del programma che traduce i passi dell algoritmo in termini comprensibili dal computer

Il cuore dell informatica Ovvero, dato un problema bisogna definire un procedimento (l algoritmo) che possa essere eseguito automaticamente da un esecutore a partire dai dati in ingresso per risolvere il problema (fornire i risultati in uscita) algoritmo input esecutore output

Quindi problema risolutore algoritmo essere umano esecutore calcolatore esecuzione

Cosa è un Algoritmo Un algoritmo (procedimento) è una sequenza finita di passi (azioni) che un esecutore è in grado di eseguire affinché venga risolto (in un tempo finito) un dato problema computazionale. Ogni passo deve essere eseguibile dall esecutore e in un tempo finito. Un algoritmo determina un procedimento sequenziale (un passo dopo l altro secondo un ordine specificato chiamato flusso di esecuzione) La cosa difficile è scrivere una sequenza di passi che risolvano il problema computazionale e NON scrivere un programma per il calcolatore

Esecutore di algoritmi Un esecutore è caratterizzato da il linguaggio che è in grado di interpretare l insieme di azioni che è in grado di compiere l insieme delle regole che ad ogni frase corretta del linguaggio (costrutto linguistico) associano le relative azioni da compiere

Caratteristiche di un algoritmo Tutte le azioni specificate dall algoritmo devono essere eseguibili dall esecutore sono azioni elementari In caso contrario, si deve scomporre un problema complesso in più sotto-problemi più semplici Per ogni problema più semplice deve esistere un istruzione nel linguaggio adottato per la scrittura degli algoritmi la cui esecuzione lo risolve.

Esempio di algoritmo L esecutore è un essere umano che è solo in grado di premere tasti ed usare il mouse Accendere il calcolatore Accendere il monitor Scrivere il nome utente Scrivere la password Premere il tasto invio Se compare il messaggio di password scaduta allora cambiare la password altrimenti accedere al desktop di windows

Esempio: scomposizione in sotto-problemi Ma l esecutore sa direttamente eseguire il comando cambiare la password? NO! Abbiamo definito in maniera precisa ed univoca che cosa l esecutore è in grado di fare per cui dobbiamo scrivere un algoritmo per la risoluzione del problema cambiare la password scrivere una sequenza di almeno sei caratteri ri-scrivere, per conferma, la stessa sequenza premere il tasto invio Per esercizio, avendo ormai esperienza di come si accede all aula 15, completate l algoritmo!!

Caratteristiche di un algoritmo Formulazione generale la soluzione individuata non deve dipendere solo da valori predefiniti dei dati, cosi che l algoritmo sia utilizzabile nel maggior numero possibile di casi Passi eseguibili univoci e non ambigui abbastanza, a volontà, un pochetto, non sono adatti ad esecutori come i calcolatori. Determinismo una volta fatto un passo, in maniera univoca quello successivo può essere determinato dall esecutore anche se ci sono alternative Finitezza del numero di passi Terminazione prima o poi l esecuzione dell algoritmo deve terminare La finitezza del numero dei passi implica la terminazione?

Caratteristiche di un algoritmo Ogni passo (azione) deve terminare entro un intervallo finito di tempo produrre un effetto osservabile produrre lo stesso effetto ogni volta che viene eseguito a partire dalle stesse condizioni iniziali

Elementi degli algoritmi Oggetti: le entità su cui opera l algoritmo Dati iniziali del problema, informazioni ausiliarie, risultati parziali e finali Le informazioni sono dette dati (anche i risultati parziali e finali) e possono essere variabili o costanti Operazioni: Interventi da effettuare sui dati Calcoli, confronti, ricopiature,acquisizioni, emissioni, ecc. Flusso di controllo: l indicazione delle possibili successioni dei passi dell algoritmo La correttezza dei risultati dipende non solo dalla corretta esecuzione delle singole operazioni, ma anche dalla corretta sequenza con cui sono eseguite

Flusso di controllo e di esecuzione Flusso di controllo: la descrizione a priori di tutte le possibili sequenze nell esecuzione dei passi dell algoritmo, in particolare di operazioni in alternativa e di operazioni da ripetere più volte ciclicamente Flusso di esecuzione: la sequenza di operazioni effettivamente seguita durante una particolare esecuzione dell algoritmo e che dipende dai particolari valori che i dati assumono in quell esecuzione