Dall algoritmo al programma

Documenti analoghi
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. Reti di Calcolatori

Linguaggi di Programmazione

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

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

Introduzione alla programmazione

Introduzione agli Algoritmi

ELABORAZIONE DELLE INFORMAZIONI (ALGORITMI E LINGUAGGI DI PROGRAMMAZIONE)

Rappresentazione con i diagrammi di flusso (Flow - chart)

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

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

PROGRAMMAZIONE STRUTTURATA

Formalismi per la descrizione di algoritmi

ALGORITMI: PROPRIETÀ FONDAMENTALI

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

Lezione 6 Introduzione al C++ Mauro Piccolo

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

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

Algoritmi e Programmi

Introduzione a Visual Basic Lezione 1 Concetti base e istruzioni condizionali

Rappresentazione degli algoritmi

Corso di Informatica. Problemi ed algoritmi. Ing Pasquale Rota

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

RAPPRESENTAZIONE GLI ALGORITMI NOTAZIONE PER LA RAPPRESENTAZIONE DI UN ALGORITMO

Programmazione con il linguaggio LibreOffice Basic

Strutture di Controllo

Diagrammi di flusso. Un metodo per rappresentare graficamente gli algoritmi. sotto programma. Input/ Output. Start. predicato Elaborazione Stop

PROBLEMI ALGORITMI E PROGRAMMAZIONE

DAL DIAGRAMMA AL CODICE

Il linguaggio di programmazione Python

Corso di Informatica di Base

Descrizione di un algoritmo

Algoritmi e soluzione di problemi

Informatica Generale Andrea Corradini Gli algoritmi e la risoluzione di problemi

Istruzioni, algoritmi, linguaggi

Teoria dell Informazione

Programmazione a blocchi. Algobuild Prof. Sergio Roselli

L ELABORATORE ELETTRONICO

COMPLESSITÀ COMPUTAZIONALE DEGLI ALGORITMI

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

Laboratorio di Informatica. Esercitazione su algoritmi e diagrammi di flusso

Istruzioni macchina. Dove sono gli operandi? Ciclo della CPU. Elementi di un istruzione macchina. Rappresentazione delle istruzioni

Sviluppo di programmi

Elaborazione dell informazione

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

Introduzione agli algoritmi e alla programmazione in VisualBasic.Net

Cosa si intende con stato

MODULO 07. La soluzione dei problemi mediante gli algoritmi

= < < < < < Matematica 1

Introduzione a Visual Basic Lezione 2 Cicli e anomalie

Modulo 1 Concetti di base della Tecnologia dell Informazione

Cognome e Nome : Corso e Anno di Immatricolazione: Modalità di Laboratorio (Progetto/Prova) :

Studio degli algoritmi

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

STRUTTURA E LOGICA DI FUNZIONAMENTO DEL COMPUTER

I costrutti forniti dal linguaggio si dividono in corrispondenti classi di istruzioni

Come ragiona il computer. Problemi e algoritmi

LINGUAGGI DI ALTO LIVELLO. Si basano su una macchina virtuale le cui mosse non sono quelle della macchina hardware

Algoritmi, Strutture Dati e Programmi. UD 2.b: Programmazione in Pascal

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

Sistemi di Elaborazione delle Informazioni

Programmazione strutturata

Variabili. Unità 2. Domenico Daniele Bloisi. Corso di Programmazione e Metodi Numerici Ingegneria Aerospaziale BAER

Linguaggi, Traduttori e le Basi della Programmazione

Rappresentazione degli algoritmi

L ELABORATORE ELETTRONICO!

CONCETTI FONDAMENTALI

Fondamenti di Informatica T-1

Introduzione agli algoritmi e alla programmazione in VisualBasic.Net

DAGLI ALGORITMI AI LINGUAGGI. Linguaggi di Programmazione

Laboratorio di Programmazione

Introduzione alla programmazione strutturata

Linguaggi di Programmazione

Il linguaggio macchina

Informatica/ Ing. Meccanica/ Edile/ Prof. Verdicchio/ 30/06/2016/ Foglio delle domande / VERSIONE 1

MINIMANUALE VBA PER CREARE MACRO NEI FOGLI EXCEL

Architettura di un calcolatore e linguaggio macchina. Primo modulo Tecniche della programmazione

INTRODUZIONE ALLA PROGRAMMAZIONE AD ALTO LIVELLO IL LINGUAGGIO JAVA. Fondamenti di Informatica - D. Talia - UNICAL 1. Fondamenti di Informatica

Programmazione C Massimo Callisto De Donato

Laboratorio di Programmazione Laurea in Bioinformatica

Informatica Teorica. Macchine a registri

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

Dal problema a un programma comprensibile dal calcolatore. Il Progetto degli Algoritmi. Dall analisi del problema all esecuzione

PARTE III MACCHINE A REGISTRI

Compitino di Laboratorio di Informatica CdL in Matematica 13/11/2007 Teoria Compito A

La codifica digitale

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

Concetti Introduttivi. Il Computer

Transcript:

Dall algoritmo al programma

Il concetto di algoritmo Un algoritmo è una sequenza di passi necessari per risolvere un problema o eseguire una computazione In alcuni casi, lo stesso problema/computazione può essere risolto in modi diversi, ai cui corrispondono diversi algoritmi Un programma non è altro che la descrizione di un algoritmo scritta nel linguaggio di programmazione scelto.

Esempio di algoritmo: ricerca di una voce nell elenco telefonico Sia cognome la voce da cercare Sia E l elenco da sfogliare Ripeti se E è vuoto allora cognome non esiste, termina. dividi a metà l elenco E esamina tutte le voci della pagina che hai di fronte se trovi cognome allora annota il numero e termina. se cognome < prima voce pagina considera come E la prima metà dell elenco altrimenti considera come E la seconda metà dell elenco Fine

Diagrammi di flusso Notazione grafica usata per descrivere in modo intuitivo le azioni di cui è fatto un algoritmo. Viene usata per descrivere i passi salienti di un algoritmo, senza doversi preoccupare dei dettagli sintattici del programma corrispondente Una volta che l algoritmo è stato descritto con un diagramma di flusso, deve però essere trasformato nel programma corrispondente. Ogni azione è rappresentata da un blocco

Blocchi di flusso: inizio e fine algoritmo START STOP

Blocchi di flusso: una o più azioni elementari PIPPO = PIPPO + 1 PLUTO = 0

Blocchi di flusso: Blocco condizionale T condizione F Diagramma 1 Diagramma 2

Blocchi di flusso: Blocco di ripetizione F condizione T Diagramma 1

Blocchi di flusso: Input/Output Input/output

Il concetto di variabile Per eseguire una qualsiasi computazione, abbiamo bisogno di poter immagazzinare i risultati temporanei e finali della computazione stessa. Ogni linguaggio ad alto livello mette a disposizione le variabili: contenitori in cui immagazzinare i dati della computazione Concettualmente, le variabili sono come pezzi di carta su cui si possono annotare/modificare i valori di un calcolo che si sta facendo

Il concetto di variabile Ogni variabile ha un nome mnemonico, che si usa nel programma per riferirsi alla var. stessa. Una variabile contiene un valore che può essere modificato a piacimento Durante l esecuzione di un programma, il sistema operativo mantiene una associazione tra il nome di ogni var. e l indirizzo della cella di memoria in cui è memorizzato il suo valore Quindi una variabile è semplicemente una astrazione della cella di memoria fisica.

Il concetto di variabile Quando si scrive un programma è necessario dichiarare quali variabili vogliamo usare. Le variabili possono essere di tipo diverso, per indicare che le usiamo per memorizzare dati di tipo diverso: Variabile LETTERA, tipo: carattere; Variabile SOMMA, tipo: intero;

L importanza delle variabili Le variabili sono lo strumento fondamentale per assicurare la flessibilità dei programmi. Lo stesso programma, eseguito con variabili di valore diverso da risultati diversi. Lo stesso programma si adatta cioè alle esigenze del momento, senza dover essere riscritto

Esempi di algoritmi

Calcolo dell area di un rettangolo Leggi da input l altezza (H) Leggi da input la base (B) Calcola l area Dai in output il risultato

Calcola l area di un rettangolo START Leggi Altezza Leggi Base Area = Base*Altezza Stampa Area STOP

Conversione lire in euro Leggi da input l importo in lire Calcola il corrispettivo in Euro Dai in output il risultato

Conversione lire in Euro START Leggi Lire Euro = Lire/1936,27 Stampa Euro STOP

Scambio dei valori di due variabili Leggi valore prima variabile X Leggi valore seconda variabile Y Conserva X in una variabile temporanea Aux Assegna il valore di Y ad X Assegna il valore di Aux a Y Scrivi X Scrivi Y

Scambio dei valori di due variabili

Massimo tra due numeri Leggi X Leggi Y Se X > Y Stampa X Altrimenti Stampa Y

Massimo tra due numeri

Pari o dispari Leggi N Dividi N per 2 Se Resto = 0 Scrivi N è pari Altrimenti Scrivi N è dispari

Pari o dispari

Primi esempi in VB CdL Biologia Docente: Dr. Annamaria Bria

Linguaggi di Programmazione Programmazione. Insieme delle attività e tecniche svolte per creare un programma (codice sorgente) da far eseguire ad un computer.

Che lingua comprende un Computer? Il linguaggio macchina o codice macchina è dato dall insieme di parole che si possono creare con l alfabeto binario: comprende due soli simboli, generalmente indicati con 0 e 1 (bit). Ogni modello di processore è in grado di comprendere un proprio particolare linguaggio macchina. 00000100000011

Linguaggi di Programmazione Il linguaggio di programmazione è un linguaggio formale, dotato di un vocabolario, di una sintassi e di una semantica ben definiti. - A Basso Livello: Assembly - Ad alto livello: c++,java, PHP, Di seguito con il termine linguaggio di programmazione ci riferiremo solo a quelli di alto livello

Linguaggi di Programmazione Si vuole scrivere un programma che sommi la paga base e la paga straordinaria di un impiegato per calcolare la paga lorda. MACCHINA ASSEMBLY ALTO LIVELLO. +1300042774 +140593419 +1200274027 Load pagabase Add straordinario Store pagalorda pagalorda = pagabase + Straordinario

Linguaggi di Programmazione

Il mio primo programma VB Private Sub Form_Activate() print Buongiorno!" End Sub

Somma di due numeri ALGORITMO PROGRAMMA VB INIZIO Dichiara A come numero Dichiara B come numero Leggi A Leggi B Dichiara somma come numero Somma = A+B Stampa Somma FINE Sub SOMMA( ) Dim A as Integer Dim B as Integer Dim Somma as Integer A = InputBox("Immetti un numero") B = InputBox( Immetti un secondo numero ) Somma = A+B Print La somma é: ; Somma End Sub

Area di un rettangolo ALGORITMO INIZIO Dichiara base come numero Dichiara altezza come numero Leggi base Leggi altezza Dichiara area come numero area = base * altezza Stampa area FINE PROGRAMMA VB Sub Area( ) Dim base as Integer Dim altezza as Integer Dim area as Integer base = InputBox("Dammi base") altezza = InputBox( Dammi altezza ) area = base*altezza Print Area = ; area End Sub

Massimo di due numeri ALGORITMO INIZIO Dichiara numero1 come numero Dichiara numero2 come numero SE numero1 > numero2 Stampa numero1 Altrimenti Stampa numero2 FINE PROGRAMMA VB Sub MAX( ) Dim numero1 as Integer Dim numero2 as Integer numero1 = InputBox("Dammi num1") numero2 = InputBox("Dammi num2") IF numero1> numero2 Then Print max: ; numero1 ELSE Print max: ; numero2 END IF End Sub

Esempio vendite ALGORITMO Scrivere un programma che prende in Input il valore totale delle vendite di un dipendente e stampa: «Hai ottenuto il bonus» Se le vendite superano la cifra di 10.000. Il programma stampa «lavora di più» Se le vendite sono inferiori a 10.000. PROGRAMMA

Esempio vendite ALGORITMO Scrivere un programma che prende in Input il valore totale delle vendite e: Stampa «Hai ottenuto il bonus» Se le vendite superano la cifra di 10.000. Il programma stampa «lavora di più» Se le vendite sono inferiori a 10.000. PROGRAMMA VB Sub Vendite() Dim vendite as Integer vendite = InputBox("Immetti il totale delle vendite") If vendite > 10000 Then msgbox( Hai ottenuto il bonus ) Else msgbox( lavora di più ) End If END Sub