Dal problema al processo risolutivo

Slides:



Advertisements
Presentazioni simili
Corso di Laurea in Biotecnologie Informatica (Programmazione)
Advertisements

Corso di Informatica (Programmazione)
Algoritmi e Programmazione strutturata
Programmazione dei Calcolatori Elettronici
GLI ALGORITMI Appunti preparati dalla prof.ssa Maria D’Angelo.
Qualche esercizio per fissare le idee. Esercizio 1. Scrivere un programma SommaApprossimata che chiede all’utente di inserire due numeri con la virgola,
2a + 10b abx2 3a + 1 y 2 a + 1 x + 2y a − Espressioni algebriche
Fondamenti di Informatica - D. Talia - UNICAL 1 Fondamenti di Informatica FONDAMENTI DI INFORMATICA Domenico Talia
I Polinomi Prof.ssa A.Comis.
INFORMATICA ALGORITMI, PROGRAMMI, E LINGUAGGI DI PROGRAMMAZIONE.
Fondamenti di Informatica - D. Talia - UNICAL 1 Fondamenti di Informatica PROBLEMI E ALGORITMI LINGUAGGIO MACCHINA.
Algoritmo algoritmo: un insieme ordinato di operazioni non ambigue ed effettivamente computabili che, quando eseguito, produce un risultato e si arresta.
LA PROGRAMMAZIONE: Algoritmi e programmi
La rappresentazione degli algoritmi
Tratto da: Anna Labella (a cura), E questo tutti chiamano Informatica, Manuali Scienze e Tecnologie – Formazione, La Sapienza Roma.
DAL DIAGRAMMA AL CODICE
Definizione di logaritmo
VISUAL BASIC.
La rappresentazione delle informazioni
Algoritmi Avanzati a.a.2015/2016 Prof.ssa Rossella Petreschi
MASSIMO COMUNE DENOMINATORE (M.C.D)
Algoritmi e soluzioni di problemi
IL CONCETTO DI ALGORITMO
Dal problema al processo risolutivo
Unità di apprendimento 7
Forme per rappresentare l’algoritmo:
I MONOMI.
Che cosa è un problema matematico
PON Docente: Maura Roberta Orlando I.C. Zingarelli, Bari
© 2007 SEI-Società Editrice Internazionale, Apogeo
PON Docente: Maura Roberta Orlando I.C. Zingarelli, Bari
Rappresentazione dei Numeri
Classe III A A.s – 2012 Programma di Informatica
IL CONCETTO DI ALGORITMO
Programmare.
Linguaggio C++ Selezione.
Programmazione e Laboratorio di Programmazione
L’area delle figure piane
Dall’analisi del problema alla definizione dell’algoritmo
Secondo Programma in C.
Struttura di un programma
I numeri relativi DEFINIZIONE. Si dicono numeri relativi tutti i numeri interi, razionali e irrazionali dotati di segno (positivo o negativo). ESEMPI Numeri.
Programmazione e Laboratorio di Programmazione
Operazioni su Naturali
INFORMATICA.
Struttura di un programma
Il problem solving La normativa Le Caratteristiche I processi
Sistemi informativi statistici
A = InputBox("Immetti un numero")
Dalle potenze ai numeri binari
INFORMATICA.
© 2007 SEI-Società Editrice Internazionale, Apogeo
Definizione di linguaggio di programmazione
Corso di Laurea Ingegneria Informatica Fondamenti di Informatica
I RADICALI ARITMETICI.
Sistemi Digitali.
Excel 3 - le funzioni.
Teoria della computabilità
Corso di Algoritmi e Strutture Dati APPUNTI SUL LINGUAGGIO C
Esercizio Dato un albero binario, definiamo altezza minimale di un nodo v la minima distanza di v da una delle foglie del suo sottoalbero, definiamo invece.
APPUNTI SUL LINGUAGGIO C
Unità D2 Dal problema all’algoritmo
EQUAZIONI DI SECONDO GRADO
N O E MODELLO GITA S Come progettare una gita in base alla destinazione da condividere con altri studenti. Un modello con cui gli studenti possono.
Programmazione e Laboratorio di Programmazione
Informatica CdL Scienze e Tecniche Psicologiche a.a
Algoritmi.
ALGORITMO E’ una successione finita di passi che consente di risolvere tutti i problemi di una classe e di determinare il risultato. Caratteristiche: Finito.
ALGORITMO E’ una successione finita di passi che consente di risolvere tutti i problemi di una classe e di determinare il risultato. Caratteristiche: Finito.
Transcript della presentazione:

Dal problema al processo risolutivo

Risolvere un problema Per risolvere un problema bisogna fornire al computer le istruzioni da eseguire e i dati si cui le istruzioni devono operare in un codice a lui comprensibile. La successione delle operazioni da compiere per raggiungere il risultato richiesto si chiama algoritmo.

Linguaggi per il computer Le istruzioni di un algoritmo devono essere convertite in un codice comprensibile (codifica). Il risultato della traduzione si chiama programma (o codice). Distinguiamo tra linguaggi di alto livello e di basso livello

Linguaggi di programmazione Linguaggi di alto livello, perché …………………………………………………………………………………………. Linguaggi utilizzati per scrivere programmi: C++, Java, Visual Basic,… Linguaggi di programmazione Utilizzato dal computer al suo interno; è composto da istruzioni elementari inviate al processore: esse sono formate da sequenze di bit , cioè 0 e 1. Linguaggio macchina Linguaggi di basso livello, ……………………….

Problemi da risolvere: il modello Nell’affrontare un problema è opportuno farne un’analisi, individuarne …………………………………………………….. L’analisi del problema produce ………………………………………… Un modello è ……………………………… ……………..…………….

Modelli iconici ………………………….

Modelli matematici Modelli ………………………….

Dal problema al modello …………………………………………………………. Il processo risolutore …………………………… input output

Esempio Calcolare l’area di un triangolo rettangolo note le misure dei due cateti Richiesta: calcolare l’area del triangolo Dati di input: le misure dei cateti, per esempio 5 e 10 Relazioni: la formula dell’area del triangolo Processo risolutivo: calcolo dell’area: area = (cateto1 x cateto2) : 2 Soluzione numerica: calcolo dell’area: area = (5 x 10) : 2 = 25 Output: 25

Passi per risolvere un problema Individuare con precisione le richieste, cioè gli obiettivi del problema. Costruire un modello. Nella costruzione del modello si deve tenere conto solo delle informazioni significative per la risoluzione del problema Individuare le relazioni, i teoremi, le proprietà che possono essere utili per individuare il processo risolutivo Costruire la procedura di risoluzione, tenendo conto di tutte le possibilità Esecuzione della procedura risolutiva e comunicazione dei risultati 

Algoritmo Un algoritmo è ……………………………………………………………………………………………………..

Passi per risolvere un problema In generale, per risolvere un problema affronteremo i seguenti passi: individuazione degli obiettivi costruzione del modello del problema individuazione del processo risolutivo costruzione dell’algoritmo esecuzione dell’algoritmo comunicazione dei risultati

Il risolutore e l’esecutore

Esempio Esempio del libro di testo Pianificazione di un viaggio RICHIESTE: Quanto costa il viaggio? Quanto il soggiorno? Quanto il totale e quanto per persona? MODELLO: individuazione delle informazioni significative e delle formule (Litri carburante; costo carburante, costo pedaggio, costo soggiorno) Carburante Pedaggio Viaggio Bed & Breakfast Soggiorno 

Esempio (continua) INDIVIDUAZIONE DEL PROCESSO RISOLUTIVO DATI DISPONIBILI: numero persone, consumo automobile, costo al litro del carburante,… PROCEDIMENTO: descrizione del modo di effettuare il calcolo 

Esempio (continua) COSTRUZIONE DELL’ALGORITMO Si deve distinguere chi deve eseguire l’algoritmo: se è una persona, si indicano i calcoli da eseguire con un linguaggio naturale se è una computer, si devono progettare algoritmi che siano eseguibili da una macchina, per comunicare con esso e si deve usare un linguaggio appropriato.

Abilità di un computer e caratteristiche di un linguaggio Quando si scrive un algoritmo si deve tenere conto di alcuni fattori: le abilità che possiamo attribuire a un computer le caratteristiche e le possibilità del linguaggio che usiamo per scrivere l’algoritmo

Abilità Possiamo attribuire a un computer le seguenti abilità: calcolare la somma, la differenza, il prodotto e il quoziente di due numeri (+, -, x, :); svolgere operazioni di confronto (>, ≥, <, ≤, ≠, ⌐); trasferire dati da una zona all’altra della memoria; acquisire dati dall’esterno; comunicare dati all’ambiente esterno. NOTA: NON possiamo attribuire l’abilità al computer di prendere iniziative in modo autonomo

I dati nell’algoritmo Ai dati presenti nell’algoritmo deve essere dati un nome (per esempio Distanza, CostoCarburanteAlLitro, …) deve essere specificato il tipo dei dati che intendiamo utilizzare, per esempio dati numerici (numeri interi o reali) o dati alfanumerici (singoli caratteri o stringhe) Lato = 100 Nome =‘’Carlo’’ Via = ‘’Corso Italia 32’’

Riepilogo La stesura di un algoritmo eseguibile da parte di un computer deve contenere i nomi dei dati e degli oggetti usati e la loro tipologia la successione delle operazioni da compiere sui dati per produrre i risultati

Esercizi Scrivere un algoritmo per risolvere il problema del calcolo del perimetro di un quadrato Scrivere un algoritmo per risolvere il problema del calcolo dell’area di un rettangolo A= axb P=4xl a lato = l b