Scaricare la presentazione
La presentazione è in caricamento. Aspetta per favore
1
Le basi della programmazione
2
Problemi algoritmi programma
La programmazione Problemi algoritmi programma
3
È un insieme di passi da svolgere per giungere alla soluzione del
I problemi Il problema è un quesito che deve avere una risposta (prepara il caffè, scrivere un tema, calcolare l’equazione, ec..) Processo risolutivo È un insieme di passi da svolgere per giungere alla soluzione del problema
4
Figure del processo risolutivo
Risolutore : chi definisce il processo risolutivo Esecutore : colui che esegue il processo risolutivo descritto dal risolutore
5
Il computer Esegue i passi definiti e studiati dall’uomo
L’uomo rimane l’elemento Centrale di tutte le attività
6
Formalizzazione del problema
È un processo essenziale per raggiungere in ultimo stadio alla soluzione Del problema Fasi della formalizzazione del problema : rigorosa lettura del testo e rielaborazione in caso di ambiguità Analisi Obiettivo da raggiungere o soluzione Evidenziare dati : espliciti informazioni da assumere per giungere alla soluzione Impliciti dati disponibili all’inizio del procedimento
7
Per risolvere un problema
Individuare le informazioni di partenza Individuare l’obiettivo da raggiungere Individuare il processo risolutivo : Trasformare i dati a disposizione Sottoporli a un processo di elaborazione (logico matematico, ect.) Ottenere i dati finali Verificare la soluzione trovata
8
Ricerca della soluzione
Conoscere la realtà di interesse, la realtà che il problema prende in esame Utilizzare metodi risolutivi già sperimentati Scomporre il problema in sottoproblemi di complessità più limitata
9
Dal problema al programma
Il computer diviene lo strumento per l’elaborazione dei dati Fasi di un processo : Immissione dati (input) Trattamento (elaborazione) Emissione (output)
10
La risoluzione del problema :
Si scompone in passi o azioni L’azione per essere tale deve avere : Esecutore Oggetti sui cui opera l’esecutore La trasformazione sugli oggetti In un ben definito tempo
11
processo Le azioni sono : sequenziali Elementari cioè non scomponibili
L’insieme delle azioni elementari che si svolgono in modo Sequenziale prende il nome di PROCESSO
12
Storia algoritmo Proviene dalla matematica
Indica regole o operazioni da compiere per fare calcoli o risolvere problemi Deriva dal nome di un algebrista arabo del IX secolo Al-khuwarizmi
13
ALGORITMO Si intende una sequenza finita e ordinata di azioni, univocamente Interpretabili, ciascuna delle quali deve essere precisamente Definita. L’ esecuzione fornisce dei risultati di classi di problemi per ogni Valore di dati forniti in ingresso Altra definizione Per algoritmo si intende la descrizione di un insieme finito di istruzioni , che devono essere eseguite per portare a termine un dato compito e per raggiungere un risultato definito in precedenza
14
Caratteristiche fondamentali dell’algoritimo
Preciso e non ambiguo Finito Generale Dettagliato (ogni passo corrisponde azioni elementari) Deterministico Completo ed esaustivo Osservabile nei risultati
15
Un algoritmo scritto in linguaggio Comprensibile al computer
L’uomo per comunicare usa il linguaggio naturale Un algoritmo scritto in linguaggio Comprensibile al computer Prende il nome di programma sorgente L’attività di traduzione Dell’algoritmo prende il nome di codice
16
Lavoro di programmazione
I programmi comprensibili alla macchina Devono essere scritti in un linguaggio di programmazione (pascal, vb, c++, java) la persona in grado di scrivere programmi comprensibili per la macchina è il programmatore
17
Linguaggio di programmazione
È quel linguaggio che viene usato per tradurre l’algoritmo in una forma comprensibile all’elaboratore Il risultato di questa traduzione si chiama programma
18
Fase iniziale di programmazione
inizio Fase di analisi Problema analisi Fase di progetto algoritmo Fase di realizzazione o implementazione Traduzione linguaggio (Programma sorgente) Fase di verifica Correzione errori (debugging) Collaudo (testing) fine
19
Le istruzioni rappresentano le azioni
Il programma Composto da istruzioni e dati Le istruzioni rappresentano le azioni da svolgere sui dati DATI ISTRUZIONI PROGRAMMA
20
I linguaggi simbolici o di programmazione
Nel linguaggio dovremo rispettare : Regole sintattiche = modalità per scrivere le frasi o istruzioni in modo corretto Il lessico = le parole riconosciute dal linguaggio Gli identificatori = il nome che il programmatore assegna ai dati (variabili, costanti, numeriche alfanumeriche e logiche)
21
Rappresentazione degli algoritmi
Grafici informali
22
Metodi grafici I passi dell’algoritmo sono rappresentati mediante simboli, associati a regole di interpretazione, rappresentano : Le istruzioni Il flusso dell’elaborazione seguito durante lo svolgimento Il metodo grafico più diffuso, è denominato diagramma a blocchi o di flusso dall’inglese FLOWCHART
23
Metodi informali Consiste nel rappresentare i passi risolutivi del processo di un problema per mezzo di un linguaggio informale, simile a quello naturale, detto pseudolinguaggio o linguaggio per la progettazione di programmi Si dice psedocodice l’insieme di frasi scritte nel linguaggio di Progetto che rappresentano (codificano) le operazioni da compiere Per la risoluzione del problema
24
Tipi di dati Variabili e costanti
25
variabili Le variabili sono dei contenitori di dati, che possono cambiare durante l’ esecuzione dell’algoritmo Il valore di una variabile deve : essere memorizzato in una cella (contenitore) di memoria Individuarla attraverso un nome che la identifichi Definire il suo tipo, ciò permette di stabilire l’insieme di valori che può assumere e le operazioni che possono essere effettuate.
26
Schema di variabile Contenuto della variabile
Nome variabile Nome variabile Nome variabile Nome variabile Nome variabile 8 8 INDIRIZZO INDIRIZZO INDIRIZZO Cella di memoria
27
Contenuto della costante
Rappresenta un dato fisso che non può cambiare durante lo sviluppo dell’algoritmo. Il valore è : Memorizzato in una cella di memoria Identificata da un nome simbolico Nome costante Contenuto della costante 20 INDIRIZZO Cella di memoria
28
Nome variabile Contenuto variabile Aliquota_iva 20 Cella di memoria
29
dati Possono essere di tipo diverso :
Numerici Alfanumerici Logici Per lavorare correttamente è necessario dichiarare il loro tipo
30
Tipi di dati in Visual basic
Tipo dato Dimensione Descrizione Intervallo valori Operazioni ammesse Boolean 2 byte True /false 0 / 1 Not/ or /and/xor Byte 1 byte Numeri positivi da 0 a 255 0 – 255 + - * / MOD Currency 8 Intero con 4 cifre decimali utile nei calcoli finanziari ,5808 ,5807 + - * / MOD ^ Date 8 byte Data espressa con 8 caratteri e valori ora 1 gen 100 al 31 dic 9999
31
Numeri in virgola mobile + - * / MOD integer 2 byte Numeri interi
Double 8 byte Numeri in virgola mobile * / MOD integer 2 byte Numeri interi * / MOD long 4 byte Numeri interi * / MOD single 4 byte Numeri in virgola mobile - + 3,402823E38 * / MOD string 10+2 byte Valori alfanumerici & concatenamento variant 16 byte Converte un tipo in un altro in base alle necessità tutte object 4 byte oggetto Riferimento ad un oggetto
32
Ciclo di vita e visibilità
variabili Ciclo di vita e visibilità
33
Ciclo di vita delle variabili o lifetime
Ciclo di vita delle variabili è il periodo per il quale tale variabile resta attiva e utilizza memoria centrale Alcune hanno una durata pari all’intera applicazione Altre vengono create e distrutte diverse volte nel ciclo dell’applicazione
34
Visibilità delle variabili
L’area di visibilità o scope rules è: È la porzione di codice da cui si può accedere a tale variabile Alcune sono private e di solo a una porzione di codice in cui sono state dichiarate Altre sono public ossia visibili a tutto il codice
35
Programmazione strutturata
Strutture di controllo
36
Programmazione strutturata
algoritmo La stesura dell’algoritmo risolutivo di un problema è una fase molto delicata della programmazione Pertanto : È necessario stabilire un’insieme di regole necessarie alla corretta organizzazione del lavoro Le regole trasformano la programmazione da attività disordinata e laboriosa in attività sistematica e orientata al raggiungimento di un buon livello di qualità Costituisce il metodo di lavoro che va sotto il nome : Programmazione strutturata
37
Programmazione struttura
Metodo di strutturazione degli algoritmi, conforme ad un insieme di regole, che rendono più facile : la costruzione la lettura La manutenzione
38
Strutture di controllo
Sono Sequenziale Condizionale o di selezione Iterativa o ciclica
39
La teoria della programmazione strutturata enuncia il seguente dettato :
Qualsiasi algoritmo può essere scritto utilizzando Soltanto le tre Strutture di base o fondamentali : Sequenziale Condizionale iterativa Teorema di Bohm-Jacopini (1966)
40
Questi 3 modelli organizzativi sono detti : strutture di controllo
Sequenza Istruzione 1 Istruzione 2 Istruzione 3 ….. Istruzione N Condizionale o alternativa Se condizione Allora Istruzione 1 Altrimenti Istruzione 2 Fine se Ciclica o ripetizione Ripeti istruzione / i Finchè condizione
41
Rappresentazione grafica
Strutture di controllo
42
Struttura sequenziale
Istruzione 1 Istruzione 2 Le istruzioni vengono eseguite Una di seguito all’altra, Secondo l’ordine del flow chart Istruzione 3 Istruzione N
43
Struttura condizionale/ alternativa
condizione Istruzione 1 Istruzione 2 Se la condizione è vera viene Eseguita istruzione 1 Se la condizione è falsa Viene eseguita istruzione 2
44
Struttura ciclica / iterativa
Esegue istruzione/i finchè la Condizione rimane falsa, per Condizione vera esce dal ciclo Istruzione/i F condizione V
45
I linguaggi di programmazione
È il linguaggio che viene utilizzato per tradurre l’algoritmo in una forma comprensibile all’elaboratore Il risultato della traduzione è detta programma
46
I moderni linguaggi di programmazione sono :
Tipo evoluto o ad alto livello Utilizzano termini del linguaggio naturale Sono più vicini al problema Facilitano il lavoro del programmatore
47
Traduzione dei programmi
Il testo di un programma scritto usando il linguaggio di programmazione e detto Sorgente (deve essere tradotto nel linguaggio macchina) La fase di traduzione viene fatta dal programma traduttore che genera una sequenza di istruzioni eseguibili
48
Tipi di traduzione Interpretazione compilazione
49
inteprete Si dice che un programma sorgente viene interpretato, quando : Il programma che prende il nome di INTERPRETE considera il testo sorgente istruzione per istruzione, le traduce mentre le esegue È consigliato usarlo solo in fase di progettazione
50
compilazione Il programma traduttore è detto compilatore e trasforma l’intero programma sorgente in linguaggio macchina, memorizzando in un file i risultati. un programma compilato una sola volta può essere eseguito, senza bisogno di altri interventi Il risultato della compilazione si chiama programma oggetto
51
Fase di link Alla compilazione deve far seguito la fase di link = collegamento Viene svolta da un programma apposito detto LINKER Aggiunge al programma compilato i moduli del compilatore, che realizzano la le funzioni richieste dai vari comandi, e collega i dati presenti in M.C.
52
Controllo della correttezza Dei termini
Programma sorgente Testo del programma Controllo della correttezza Dei termini Analisi lessicale Controllo della corretta Dei costrutti dei termini Analisi sintattica Programma oggetto Programma Tradotto in Linguaggio Machina oggetto Linking LINKING collegatore Programma Eseguibile Programma eseguibile
Presentazioni simili
© 2024 SlidePlayer.it Inc.
All rights reserved.