Programmazione imperativa

Slides:



Advertisements
Presentazioni simili
Introduzione al linguaggio C++
Advertisements

LINGUAGGIO DI PROGRAMMAZIONE C
Dati, istruzione e pseudocodice
Linguaggi algoritmici
Selezione A. Ferrari.
I DATI LE ISTRUZIONI LE STRUTTURE FONDAMENTALI
MATLAB. Scopo della lezione Programmare in Matlab Funzioni Cicli Operatori relazionali Esercizi vari.
Algoritmi e Programmazione
Informatica Generale Marzia Buscemi
Informatica Generale Susanna Pelagatti
Anno accademico Gli operatori e le espressioni in C.
Il linguaggio C Gli operatori e le espressioni C Language
Sommario Gli algoritmi I linguaggi per la formalizzazione di algoritmi
1 Istruzioni, algoritmi, linguaggi. 2 Algoritmo per il calcolo delle radici reali di unequazione di 2 o grado Data lequazione ax 2 +bx+c=0, quali sono.
Algebra di Boole ed elementi di logica
Algebra di Boole ed elementi di logica
DIPARTIMENTO DI ELETTRONICA E INFORMAZIONE Algoritmi e basi del C Marco D. Santambrogio – Ver. aggiornata al 3 Ottobre 2013.
Informatica 2. Concetti fondamentali di programmazione Programmare vuol dire scrivere un algoritmo in un linguaggio che faccia funzionare un calcolatore.
1 Corso di Informatica (Programmazione) Lezione 10 (12 novembre 2008) Programmazione in Java: espressioni booleane e controllo del flusso (selezione)
Corso di Laurea in Biotecnologie Informatica (Programmazione)
1 INTRODUZIONE ALLA PROGRAMMAZIONE STRUTTURATA. 2 PROCESSO INTRODUZIONE ALLA PROGRAMMAZIONE STRUTTURATA INIZIO FINE.
NUMERI RELATIVI.
Introduzione alla programmazione ll
Introduzione alla programmazione lll
DAL PROBLEMA ALL'ALGORITMO Problemi e Programmi Paolo Amico
Corso di Informatica A.A Corso di Informatica Laurea Triennale - Comunicazione&Dams Dott.ssa Adriana Pietramala Dott.ssa.
Fondamentidi Programmazione Corso: Fondamenti di Programmazione Classe: PARI-DISPARI Docente: Prof. Luisa Gargano Testo: Aho, Ulman, Foundations of Computer.
Istruzioni di selezione in Java Programmazione Corso di laurea in Informatica.
Unità Didattica 1 Algoritmi
Strutture di controllo in C -- Flow Chart --
Fondamenti di Informatica Algoritmi
Il Linguaggio C.
Algoritmi e Programmazione (in C) Stefano Cagnoni e Monica Mordonini
Elementi di Informatica
Programmazione in Java Claudia Raibulet
Elementi di Informatica
Da Problema a Programmazione
4 Tipi di dati & variabili
Javascript 6 Funzioni. Una funzione sarà eseguita in risposta ad un evento o ad una chiamata diretta. Le funzioni possono essere inserite comodamente.
Biologia Computazionale - Algoritmi
Dall’algoritmo al programma.
Algoritmi e Programmazione strutturata
PROGRAMMAZIONE: linguaggi
CODIFICA Da flow-chart a C++.
Algoritmi e linguaggi di programmazione
Lezione 6 Strutture di controllo Il condizionale
Dimitri Caruso Classe 2^ Beat ISIS G. Meroni Anno Scolastico 2007/08
Programmazione di Calcolatori
Programmazione di Calcolatori
CONCETTI DI BASE 1.0 FONDAMENTI 1.1 HARDWARE 1.2 SOFTWARE 1.3 RETI
ECDL Patente europea del computer
Linguaggi e Programmazione per l’Informatica Musicale
Anno accademico Le istruzioni di controllo in C.
Programmazione imperativa
COME RAGIONA UN COMPUTER
Linguaggi algoritmici
Algebra di Boole.
Introduzione a Javascript
Rappresentazione degli algoritmi
Vettori (a una dimensione)
Parte 3 Lo stato: variabili, espressioni ed assegnazioni
13 ottobre Decisioni F. Bombi 13 ottobre 2002.
Algoritmi e basi del C Struttura di un programma
PRIMI ELEMENTI DI PROGRAMMAZIONE
Rappresentazione in virgola mobile (floating-point) Permette di rappresentare numeri con ordini di grandezza molto differenti utilizzando per la rappresentazione.
Diagrammi a blocchi.
ALGORITMI Dal problema al programma Definizione di algoritmo
“ Pseudocodice ” Un programma per computer lavorerà su in insieme di “ variabili ” contenenti i dati del problema, soluzioni intermedie, soluzioni finali.
DIPARTIMENTO DI ELETTRONICA E INFORMAZIONE Algoritmi e basi del C Marco D. Santambrogio – Ver. aggiornata al 24 Agosto 2015.
Istruzioni e algoritmi. Istruzioni Operative I passi elementari che compongono l’algoritmo sono le istruzioni. Distinguiamo: Istruzioni di input Istruzioni.
Transcript della presentazione:

Programmazione imperativa LE BASI

ALGORITMO È un procedimento codificato finalizzato al raggiungimento di un risultato Prende dati in ingresso e rende dati in uscita RICETTA

DEFINIZIONE DI ALGORITMO Un algoritmo è un procedimento formale che risolve un determinato problema attraverso un numero finito di passi. Un problema risolvibile mediante un algoritmo si dice computabile. Il termine "algoritmo" deriva dalla trascrizione latina del nome del matematico persiano Al-Khwarizmi, che è considerato uno dei primi autori ad aver fatto riferimento a questo concetto.

ELEMENTI ALGORITMICI DATI IN INGRESSO E DATI IN USCITA MEMORIA DEL PROGRAMMA COMANDI CHE SI POSSONO ESEGUIRE ORDINE DI ESECUZIONE DEI PASSI RICETTA

LOCAZIONI La locazione è un contenitore di dati In essa è possibile scrivere e leggere dati Locazioni Variabili Campi Altro

LOCAZIONI La variabile è una particolare locazione La variabile è contraddistinta da: Un identificatore (nome univoco per individuarla) Un tipo (la forma dei dati che può contenere) Un valore (il contenuto attuale della variabile) ITI G.M. ANGIOY SASSARI

LOCAZIONI Un programma usa molte variabili Possono esserci più variabili dello stesso tipo I nomi sono possibilmente diversi Il tipo dipende dalla finalità d’impiego 7 voto 17 età 31 alunni 3,14 pi 2,50 Prezzo password ç@$$€770

TIPI DI DATO Il tipo di dato determina la natura dei dati che una locazione può contenere Si può pensare al tipo come alla forma del contenitore Un dato di un determinato tipo può essere memorizzato SOLO in una locazione compatibile con quel tipo

NUMERI INTERI Il tipo di dato intero permette di gestire dati numerici senza la virgola Si usano per dati soggetti a calcoli aritmetici È consentito applicare operazioni aritmetiche addizione, sottrazione, moltiplicazione, divisione intera e resto intero + - * / % 31 bambini

NUMERI DECIMALI Il tipo di dato decimale permette di gestire dati numerici con la virgola Si usano per dati soggetti a calcoli aritmetici a virgola mobile (floating point) È consentito applicare operazioni algebriche addizione, sottrazione, moltiplicazione, divisione con la virgola + - * / 2,50 Prezzo

LOGICI BOOLEANI NOT AND OR Il tipo di dato logico booleano (da George Boole) permette di gestire dati di verità Si usano per dati soggetti a operazioni di algebra booleana È consentito applicare operazioni logiche NOT AND OR true promosso

STRINGHE concatenazione Il tipo di dato STRINGA (cordicella di caratteri) permette di gestire frasi formate da caratteri Si usano per dati non soggetti a calcoli algebrici È consentito applicare operazioni su stringhe concatenazione messaggio p.greco@angioy.org

ESPRESSIONI CALCOLARE RISULTATI DI OPERAZIONI

NUMERI INTERI Le operazioni tra interi rendono interi Somma: 13 + 17  30 Differenza: 13 - 17  -4 Prodotto: 3 * 4  12 Divisione: 11 / 4  2 Resto: 11 % 4  3 studenti

NUMERI DECIMALI Le operazioni tra decimali rendono decimali Somma: 3.25 + 1.02  4.27 Differenza: 3.14 - 7.50  -4,36 Prodotto: 1.50 * 1.25  1,875 Divisione: 3.50 / 1.50  2,333333333… Prezzo

LOGICI BOOLEANI Le operazioni tra booleani rendono booleani promosso NOT   true false AND talse OR promosso

LOGICI BOOLEANI

STRINGHE Le operazioni tra stringhe rendono stringhe Concatenazione: ″capo″ + ″doglio″  ″capodoglio″ ″Piu″ + ″ ″ + ″Mino″  “Piu Mino” “mura” + “tore”  “muratore” “mura” + “@” + “vera”  “mura@vera” messaggio p.greco@angioy.org

DIAGRAMMI DI FLUSSO COME RAPPRESENTARE UN PROGRAMMA

ELEMENTI DEL DIAGRAMMA Elemento di inizio o di fine algoritmo Elemento di ingresso o di uscita dei dati Elemento di attività generica (istruzioni) Elemento di selezione condizionale di flusso Elemento di subroutine (sottoprogramma) Direzione del flusso INIZIO I/O ATTIVITÀ DECISIONE ATTIVITÀ

DIAGRAMMA DI FLUSSO Un diagramma di flusso è un modello per rappresentare gli algoritmi in passi Uno schema di un D.d.F. rappresenta un algoritmo specifico È come una ricetta di cucina INIZIO ACQUA IN PENTOLA ACCENDI FUOCO PENTOLA SU FUOCO falso vero BOLLE? ATTENDI VERSA METTI IL TÉ FINE

DIAGRAMMA DI FLUSSO Un diagramma di flusso è un modello per rappresentare gli algoritmi in passi Uno schema di un D.d.F. rappresenta un algoritmo specifico È come una ricetta di cucina

ISTRUZIONI COME ISTRUIRE UN PROGRAMMA

ISTRUZIONI Sono i comandi che si possono eseguire in un programma Esistono molte istruzioni; quelle fondamentali sono: Istruzioni di assegnazione Caso particolare: istruzione di INGRESSO Caso particolare: istruzione di USCITA Blocco sequenza Istruzioni decisionali Istruzioni iterative

ASSEGNAZIONE UN’ISTRUZIONE FONDAMENTALE

locazione  espressione ASSEGNAZIONE È una istruzione Permette di scrivere un dato in una locazione Esistono diverse sintassi In generale assume la seguente forma: locazione  espressione La locazione è individuata mediante il suo identificatore L’espressione è una sequenza di simboli valutabile che rende un valore

locazione  espressione ASSEGNAZIONE locazione  espressione Una locazione può conservare un solo valore; se le si assegna un valore nuovo, essa perde quello vecchio che viene distrutto.

studenti  maschi + femmine ASSEGNAZIONE 29 maschi Quando si assegna un valore a una locazione, questa lo conserva. Il nome della locazione permette di leggerne il valore e usarlo in una nuova espressione. 29 maschi  29 2 femmine 2 femmine  2 31 studenti 29 + 2 studenti  maschi + femmine

nome_squadra  “Serpi Verdi” mail  “serpiverdi@angioy.it” ASSEGNAZIONE nome_squadra  “Serpi Verdi” studenti  31 età_media  16.35 iscrizione  true punti  32500 mail  “serpiverdi@angioy.it”

studenti  maschi + femmine media  punti / studenti ASSEGNAZIONE maschi  29 femmine  2 studenti  maschi + femmine punti  100 punti  punti + 25 media  punti / studenti

contatore  contatore + 1 INCREMENTI contatore accumulatore contatore  0 contatore  contatore + 1 somma  0 somma  somma + agnelli somma  somma + buoi somma  somma + capre somma  somma + daini somma  somma + emu

alfa  valoreInizialeA beta  valoreInizialeB SCAMBIO scambio alfa  valoreInizialeA beta  valoreInizialeB . . . appoggio  alfa alfa  beta alfa  appoggio beta alfa appoggio

ESERCIZI Calcolare la media dei numeri 7 17 37 Calcolare la seguente espressione logica: (FALSO OR VERO) AND (FALSO OR NOT VERO) FALSO OR VERO AND FALSO OR NOT VERO Unire le seguenti frasi: equi no zio 101 303 707