INTRODUZIONE. ALLA PROGRAMMAZIONEColonna 1. in linguaggio C
|
|
- Ortensia Giuditta Bini
- 6 anni fa
- Visualizzazioni
Transcript
1 INTRODUZIONE 6 4 ALLA PROGRAMMAZIONEColonna 1 Colonna 2 Colonna 3 in linguaggio C 2 0 Riga 1 Riga 2 Riga 3 Riga 4 di Mauro Casula {
2 Scopi del seminario Essere chiaro ed esauriente; Spiegare nei dettagli i concetti della programmazione in generale; Usare tali concetti per trovare soluzioni nel miglior modo possibile; Vedere esempi pratici di programmazione in C (approfondimenti nel Workshop).
3 Importanza del linguaggio di programmazione Non esiste un linguaggio PERFETTO per risolvere bene tutti i possibili problemi nel miglior modo Quindi bisogna conoscere più linguaggi e usare quello più adatto alla soluzione trovata Quindi avere chiare le implicanze informatiche (anche di programmazione) del problema affrontato
4 Importanza del linguaggio di programmazione (II) Ogni linguaggio ha: i suoi pregi e i suoi difetti (compilato/interpretato, ottimizzaz., facilità di sviluppo); una sua sintassi specifica (ma i concetti rimangono); le sue librerie native (più quelle aggiuntive); le sue scorciatoie (liste, dizionari...); il suo fascino.
5 Prevenire è meglio che curare Prima di iniziare a programmare bisogna: pensare e avere chiaro lo scopo del programma da sviluppare; pensare e avere chiaro il modo in cui si intende risolvere il problema (algoritmo) e fissarlo tramite diagramma a blocchi o pseudo-codice; pensare e scegliere il linguaggio/architettura di sviluppo più adatto alla soluzione trovata coi punti precedenti; i problemi nasceranno sempre anche dopo aver pensato, ma almeno si parte in vantaggio (e di molto anche).
6 Esempio pratico Nel nostro caso: perché usare il C e non un altro linguaggio?
7 Un po' di curiosità Sviluppato da Dennis Ritchie e Ken Thompson ai Bell Labs nel 1972 per realizzare il sistema operativo UNIX Si chiama C, poiché è l evoluzione di un linguaggio più grezzo, meno funzionale e obsoleto chiamato B (ispirato al BCPL), inventato precedentemente sempre da Ken Thompson
8 Tipi di dati void: vuoto int / long / short / unsigned: numero intero float / double: numero decimale (reale) bool: booleano (vero/falso)
9 Istruzioni e Blocchi di istruzione Espressioni come y=5 o i++ sono istruzioni singole e devono essere seguite da un punto e virgola. In C, il punto e virgola quindi è un terminatore di istruzione; L'esecuzione delle istruzioni avviene sempre in modo sequenziale; Un blocco è una sequenza di istruzioni raggruppate all'interno di parentesi graffe { ; Il blocco, se viene eseguito, viene eseguito tutto e solo nel momento in cui il programma entrerà nel blocco e non in altri momenti.
10 Esempi di istruzioni e blocchi (I) ISTRUZIONI testo = pippo ; a = 210 ; b = 1 ; printf ( pippo ) ; y++ ; printf ( a+b=%d, a+b); if / else, do / while, switch; BLOCCHI { a++ ; printf ( a+b=%d, a+b); { a = 10 ; b = 7 ; printf ( a+b=%d, a+b); break / continue;
11 Esempi di istruzioni e blocchi (II) BLOCCHI { delta = b * b 4 * a * c ; if ( delta > 0 ) { printf ( Soluzioni distinte in campo Reale ) ; return 1 ; else if ( delta = 0 ) { printf ( Soluzioni coincidenti in campo Reale ) ; return 0 ; else { printf ( Non ha soluzioni in campo Reale ) ; return -1 ;
12 Struttura di un programma in C #include <stdio.h> #include void funzione1( void ); void funzione2( void ); int main ( int argc, char *argv[ ] ) {... funzione1();... funzione2();... void funzione1( void ){... void funzione2( void ){...
13 Problema 1 Sviluppare una semplice routine prima in pseudocodice, e poi in C, che chiuda una valvola quando il liquido di un serbatoio raggiunge un certo livello e la apra ad un altro certo livello. I livelli sono scelti da voi. Il serbatoio contiene max 10 litri. Si hanno a disposizione le seguenti funzioni e variabili definite esternamente: chiudi_valvola() apri_valvola() livello
14 Soluzione 1 (pseudo-codice) Inizio se: livello = 9.5 litri livello = 9.5? SI allora: chiudi_valvola() altrimenti: non fare nulla NO chiudi_valvola() se: livello = 0.5 litri livello = 0.5? SI allora: apri_valvola() altrimenti: non fare nulla NO apri_valvola() Fine
15 Soluzione 1 (codice C) void gestisci_valvola(void){ if (livello == 9.5){ chiudi_valvola(); if (livello == 0.5){ apri_valvola();
16 Problema 2 Sviluppare una semplice routine, in pseudo-codice, e poi in C, che stampi dei messaggi personalizzati al raggiungimento di certi livelli del liquido nel serbatoio dell' esempio precedente. I livelli sono scelti da voi. Il serbatoio contiene max 10 litri. Si hanno a disposizione le seguenti funzioni e variabili definite esternamente: printf( Testo da stampare ) livello
17 Soluzione 1 (pseudo-codice) Inizio se: livello = 9 litri allora: stampa( Quasi pieno ) livello = 9 NO SI stampa( Quasi pieno ) se: livello = 5 litri allora: stampa( Metà ) livello = 5 NO SI stampa( Metà ) se: livello = 1 litri allora: stampa( Quasi vuoto ) livello = 1 NO SI stampa( Quasi vuoto ) Fine
18 Soluzione 1a (codice C) void verifica_livello( int livello ) { if (livello == 9){ printf( Quasi pieno ); if (livello == 5){ printf( Metà ); if (livello == 1){ printf( Quasi vuoto );
19 Soluzione 1b (codice C) void verifica_livello(void){ switch(livello){ case 9: printf( Quasi pieno ) break; case 5: printf( Metà ); break; case 1: printf( Quasi vuoto ); break;
20 Problema 3 Modificare la precedente routine gestione_valvola(), in pseudo-codice, e poi in C, in maniera che il controllo del livello sia continuativo ed interrompibile. I livelli sono scelti da voi. Il serbatoio contiene max 10 litri. Si hanno a disposizione le seguenti funzioni e variabili definite esternamente: chiudi_valvola() apri_valvola() livello
21 Soluzione 3 (pseudo-codice) inizio ciclo Inizio ciclo se: livello = 9.5 litri allora: chiudi_valvola() se: livello = 0.5 litri allora: apri_valvola() livello = 9.5 NO livello = 0.5 SI SI chiudi_valvola() apri_valvola() se interrotto NO allora: esci altrimenti: torna a Inizio ciclo NO interrotto? SI Fine
22 Soluzione 3a (codice C) void verifica_livello(void){ while(!interrotto){ if (livello == 9.5) chiudi_valvola(); if (livello == 0.5) apri_valvola(); //while
23 Soluzione 3b (codice C) void verifica_livello(void){ bool interrotto = false; char input; do{ if (livello == 9.5){ chiudi_valvola(); if (livello == 0.5){ apri_valvola(); input = getch(); if (input == 'E' input == 'e') interrotto=true; while(!interrotto);
24 Problema 4 Sviluppare una semplice routine (basandosi anche sulle precedenti) in pseudo-codice, e poi in C, che verifichi lo stato dei 3 serbatoi di vernice da 50 litri ciascuno di un apparecchio per il tracciamento delle strisce delle strade. Si hanno a disposizione le seguenti funzioni e variabili definite esternamente: printf( Testo da stampare ) livello0, livello1, livello2, livello3
25 Soluzione 4 (pseudo-codice) n_serbatoi = 4 n_serbatoi = 4 cont_serb < 4 NO per ciascuno verifica: SI se: livello = 9 litri allora: stampa( Quasi pieno ) se: livello = 5 litri livello = 9 NO SI stampa( Quasi pieno ) allora: stampa( Metà ) livello = 5 SI stampa( Metà ) se: livello = 1 litri NO allora: stampa( Quasi vuoto ) NO livello = 1 SI stampa( Quasi vuoto ) Fine
26 Soluzione 4a (codice C) int liv_serbatoio, n_serbatoi = 4; for ( int n_ciclo = 0 ; n_ciclo < n_serbatoi ; n_ciclo++ ) { switch (n_ciclo) { case 0: liv_serbatoio = serbatoio0; break; case 1: liv_serbatoio = serbatoio1; break; case 2: liv_serbatoio = serbatoio2; break; case 3: liv_serbatoio = serbatoio3; break; void verifica_livello ( int livello ) { if (livello == 9){ printf( Quasi pieno ); if (livello == 5){ printf( Metà ); if (livello == 1){ printf( Quasi vuoto ); verifica_livello ( liv_serbatoio ) ;
27 Soluzione 4b (codice C) int liv_serbatoio [ 4 ] ;... assegna_livello ( liv_serbatoio );... for ( int n_ciclo = 0 ; n_ciclo < n_serbatoi ; n_ciclo++ ) { verifica_livello ( liv_serbatoio [ n_ciclo ] ) ; void verifica_livello ( int livello ) { if (livello == 9){ printf( Quasi pieno ); if (livello == 5){ printf( Metà ); if (livello == 1){ printf( Quasi vuoto );
28 Bibliografia e approfondimenti Il linguaggio C, B. Kernighan, D. Ritchie, 2 a ed., 2004, Pearson/Prentice-Hall C - Corso completo di programmazione, H. Deitel, P. Deitel, 3 a ed., Apogeo, LinguaggioC.pdf cated-c-code-you-have-ever-seen
29 Contatti su FB: sito: personale: personale GULMh:
30 FINE
C O P Y R I G H T ( C ) W W W. F O N D A M E N T I. I N F O
Il linguaggio C C O P Y R I G H T ( C ) 2 0 0 8 W W W. F O N D A M E N T I. I N F O P E R M I S S I O N I S G R A N T E D T O C O P Y, D I S T R I B U T E A N D / O R M O D I F Y T H I S D O C U M E N
DettagliProgrammazione strutturata
Programmazione strutturata C O P Y R I G H T ( C ) 2 0 0 8 W W W. F O N D A M E N T I. I N F O P E R M I S S I O N I S G R A N T E D T O C O P Y, D I S T R I B U T E A N D / O R M O D I F Y T H I S D O
DettagliELEMENTI DI INFORMATICA L-B. Ing. Claudia Chiusoli
ELEMENTI DI INFORMATICA L-B Ing. Claudia Chiusoli Materiale Lucidi delle lezioni Date degli appelli Testi di esami precedenti Informazioni e contatti http://www.lia.deis.unibo.it/courses/ Programma del
Dettagli1 PANORAMICA SUL LINGUAGGIO C
1 PANORAMICA SUL LINGUAGGIO C 1.1 Le origini del linguaggio C Il C fu inventato e implementato da Dennis Ritchie negli anni 70 su una macchina che impiegava il sistema operativo Unix. Il C è il risultato
DettagliElementi lessicali. Lezione 4. La parole chiave. Elementi lessicali. Elementi lessicali e espressioni logiche. Linguaggi di Programmazione I
Lezione 4 Elementi lessicali e espressioni logiche Matricole 2-3 Elementi lessicali il linguaggio C ha un suo vocabolario di base i cui elementi sono detti token esistono 6 tipi di token: parole chiave
DettagliC espressioni condizionali
C espressioni condizionali Esiste un particolare operatore, detto operatore condizionale, che rappresenta un istruzione if else. estremamente compattata?: Supponiamo di voler inserire nella variabile intera
DettagliAppunti del corso di Informatica 1. 6 Introduzione al linguaggio C
Università di Roma Tre Dipartimento di Matematica e Fisica Corso di Laurea in Matematica Appunti del corso di Informatica 1 (IN110 Fondamenti) 6 Introduzione al linguaggio C Marco Liverani (liverani@mat.uniroma3.it)
DettagliAppunti del corso di Informatica 1 (IN110 Fondamenti) 6 Introduzione al linguaggio C
Università di Roma Tre Facoltà di Scienze M.F.N. Corso di Laurea in Matematica Appunti del corso di Informatica 1 (IN110 Fondamenti) 6 Introduzione al linguaggio C Marco Liverani (liverani@mat.uniroma3.it)
DettagliRELAZIONE DELLA PROVA DI LABORATORIO DI INFORMATICA
RELAZIONE DELLA PROVA DI LABORATORIO DI INFORMATICA Anno scolastico Lab informatica AULA n 35 Data inizio svolgimento Progr. relazione primo trimestre secondo pentamestre Cognome e Nome DATI DELLO STUDENTE
DettagliALGORITMI E STRUTTURE DATI
ALGORITMI E STRUTTURE DATI Esercitazioni AndreA Orlandini http://www.dia.uniroma3.it/~orlandin/asd/ e-mail: orlandin@dia.uniroma3.it Orario di ricevimento: Martedì 14.00-16.00 Introduzione al C + Array
DettagliAlgoritmi e basi del C Struttura di un programma
Algoritmi e basi del C Struttura di un programma Marco D. Santambrogio marco.santambrogio@polimi.it Ver. aggiornata al 17 Marzo 2015 Compitini Compitini di INFO: 24 Aprile 2015 4.15pm @ C.G.1 (Ed. 9) 21
DettagliCorso di Calcolatori Elettronici Un computer è un dispositivo in grado di eseguire dei calcoli e di prendere delle decisioni logiche.
Corso di Calcolatori Elettronici Un computer è un dispositivo in grado di eseguire dei calcoli e di prendere delle decisioni logiche. APPUNTI SUL LINGUAGGIO C I computer elaborano i dati sotto il controllo
DettagliCorso di Fondamenti di Informatica Il sistema dei tipi in C++
Corso di Fondamenti di Informatica Il sistema dei tipi in C++ Anno Accademico Francesco Tortorella Struttura di un programma C++ // Programma semplice in C++ #include int main() { cout
DettagliBreve Manuale di Riferimento sulla Sintassi Linguaggi C++ e FORTRAN
Breve Manuale di Riferimento sulla Sintassi Linguaggi e versione aggiornata al 05/02/2004 Sommario Elementi di Base... 2 Dati, Tipi e Dichiarazioni... 2 Tipi di Dato di Base... 2 Tipi di Dato Strutturati...
DettagliLezione 6 Introduzione al C++ Mauro Piccolo
Lezione 6 Introduzione al C++ Mauro Piccolo piccolo@di.unito.it Linguaggi di programmazione Un linguaggio formale disegnato per descrivere la computazione Linguaggi ad alto livello C, C++, Pascal, Java,
DettagliFondamenti di Informatica 6. Algoritmi e pseudocodifica
Vettori e matrici #1 Fondamenti di Informatica 6. Algoritmi e pseudocodifica Corso di Laurea in Ingegneria Civile A.A. 2010-2011 1 Semestre Prof. Giovanni Pascoschi Le variabili definite come coppie
DettagliPolitecnico di Torino Sede di Alessandria Corso di informatica Programmazione in c: introduzione. e mail: sito: users.iol.
Politecnico di Torino Sede di Alessandria Corso di informatica Programmazione in c: introduzione prof. Lorenzo Porcelli e mail: genna18@iol.it sito: users.iol.it/genna18 Risoluzione di un problema Dato
DettagliINFORMATICA. Strutture iterative
INFORMATICA Strutture iterative Strutture iterative Si dice ciclo (loop) una sequenza di istruzioni che deve essere ripetuta più volte consecutivamente. Si consideri ad esempio il calcolo del fattoriale
DettagliComplementi. - Ridefinizione di tipo - - Costrutto switch - - Programmazione su più file - - Parametri della funzione main - Funzione system -
Complementi - Ridefinizione di tipo - - Costrutto switch - - Programmazione su più file - - Parametri della funzione main - Funzione system - Università degli Studi di Brescia Prof. Massimiliano Giacomin
DettagliLaboratorio di programmazione
Laboratorio di programmazione Lezione II Tatiana Zolo zolo@cs.unipr.it 1 IL PROGRAMMA C++ Istruzioni (espressioni terminate da ; ) istruzioni di dichiarazione (es. int x = 0;); istruzioni di assegnamento
DettagliLinguaggio C: introduzione
Dipartimento di Elettronica ed Informazione Politecnico di Milano Informatica e CAD (c.i.) - ICA Prof. Pierluigi Plebani A.A. 2008/2009 Linguaggio C: introduzione La presente dispensa e da utilizzarsi
DettagliUn esempio per iniziare. Il controllo del programma in C. Altri cenni su printf() Esercizi (printf) printf( 8!=%d, fatt);
Un esempio per iniziare Il controllo del programma in C DD Cap.3 pp.91-130 /* calcolo di 8!*/ #include #define C 8 int main() int i=1; int fatt=1; while (i
DettagliUnità Didattica 1 Linguaggio C. Fondamenti. Struttura di un programma.
Unità Didattica 1 Linguaggio C Fondamenti. Struttura di un programma. 1 La storia del Linguaggio C UNIX (1969) - DEC PDP-7 Assembly Language BCPL - un OS facilmente accessibile che fornisce potenti strumenti
DettagliIl linguaggio C. Notate che...
Il linguaggio C Notate che... 1 Il C è un linguaggio a blocchi int main (void) { blocco } 2 Il C è un linguaggio a blocchi (2) Non è possibile mischiare dichiarazioni e comandi! int main (void) { } Dichiarazione
DettagliEsercizi. La funzione swapint() primo tentativo
Politecnico di Milano Esercizi Puntatori, struct con campi puntatore, puntatori a struct, rapporto tra array e puntatori. FUNZIONI Passaggio di parametri per indirizzo, passaggio di array. #include
DettagliLinguaggio C Informatica Grafica
Linguaggio C Informatica Grafica Corsi di Informatica Grafica Prof. Manuel Roveri Dipartimento di Elettronica e Informazione roveri@elet.polimi.it Linguaggio C Breve storia Struttura di un programma Variabili
DettagliLaboratorio di Algoritmi e Strutture Dati Ingegneria e Scienze Informatiche - Cesena A.A
Ingegneria e Scienze Informatiche - Cesena A.A. 2013-2014 dilena@cs.unibo.it, pietro.dilena@unibo.it Note introduttive sul corso Modalità d esame Note introduttive sul corso Finalità: fornire competenze
DettagliEsercizio 2 (punti 7) Dato il seguente programma C: #include <stdio.h> int swap(int * nome, int length);
Fondamenti di Informatica L-A (A.A. 004/005) - Ingegneria Informatica Prof.ssa Mello & Prof. Bellavista I Prova Intermedia del 11/11/004 - durata h - COMPITO B Esercizio 1 (punti 1) Una associazione di
DettagliCorso di Informatica
Corso di Informatica CdL in Matematica e CdL in Matematica per le Applicazioni Prof. G. Nicosia Dipartimento di Matematica e Informatica Facoltà di Scienze MM.FF.NN. Università degli Studi di Catania A.
DettagliInformatica (A-K) 7. Linguaggio C - 1
Storia del linguaggio C Informatica (A-K) 7. Linguaggio C - 1 Corso di Laurea in Ingegneria Civile & Ambientale A.A. 2011-2012 2 Semestre Prof. Giovanni Pascoschi Linguaggio C 1972, nato come evoluzione
DettagliProgrammazione di base
Fondamenti di Informatica Primo Appello 01-17 8 febbraio 017 Rispondi alle domande negli appositi spazi. I punti assegnati per ogni domanda sono indicati nel riquadro a lato. L'esame contiene 10 domande,
DettagliLaboratorio di Informatica Ingegneria Clinica Lezione 7/11/2011. Prof. Raffaele Nicolussi
Laboratorio di Informatica Ingegneria Clinica Lezione 7/11/2011 Prof. Raffaele Nicolussi FUB - Fondazione Ugo Bordoni Via del Policlinico, 147-00161 Roma Docente Raffaele Nicolussi rnicolussi@fub.it Lezioni
DettagliIl linguaggio Java Istruzioni di Controllo
Il linguaggio Java Istruzioni di Controllo Istruzioni per il controllo di flusso Istruzioni di selezione if switch Istruzioni di iterazione while do-while for Istruzioni di salto break continue return
DettagliInformatica 1 Tipi e dichiarazioni in C++ C++ - Tipi e dichiarazioni 1
Informatica 1 Tipi e dichiarazioni in C++ C++ - Tipi e dichiarazioni 1 Cosa è il C++ E un linguaggio di programmazione derivato dal C Può essere usato per modificare il SO Unix e i suoi derivati (Linux)
DettagliLinguaggio C - le strutture di controllo: sequenza, selezione, iterazione
Dipartimento di Elettronica ed Informazione Politecnico di Milano Informatica e CAD (c.i.) - ICA Prof. Pierluigi Plebani A.A. 2008/2009 Linguaggio C - le strutture di controllo: sequenza, selezione, iterazione
DettagliGocce di Java. Gocce di Java. Selezione e ripetizione. Pierluigi Crescenzi. Università degli Studi di Firenze
Gocce di Java Pierluigi Crescenzi Università degli Studi di Firenze Variabili ed espressioni Booleane Variabile booleana: può assumere valore true o false Espressione Booleana: valore di ritorno true o
DettagliCorso di Informatica B - Sezione D. Esercitazioni Linguaggio C
Facoltà di Ingegneria Industriale Laurea in Ingegneria Energetica, Meccanica e dei Trasporti Corso di Informatica B - Sezione D Esercitazioni Linguaggio C Esercitazione del 2012-10-11 Davide Chicco davide.chicco@elet.polimi.it
DettagliIstruzioni semplici e strutturate
Consorzio NETTUNO Corso di Fondamenti di Informatica I secondo giorno di stage Istruzioni semplici e strutturate Dipartimento di Informatica e Sistemistica Università degli Studi di Napoli Federico II
DettagliFondamenti di Informatica
Fondamenti di Informatica Prima prova intermedia - 11 Novembre 2009 Si risolvano i seguenti esercizi. Il compitino prevede un punteggio massimo di 15/14-esimi, cui andranno sommati i punti ottenuti nel
DettagliProgrammazione I - Laboratorio
Programmazione I - Laboratorio Esercitazione 1 - Variabili, costanti, strutture di controllo e input/output Gianluca Mezzetti 1 Paolo Milazzo 2 1. Dipartimento di Informatica, Università di Pisa http://www.di.unipi.it/
DettagliLinguaggio C++ Linguaggi di terza generazione
Linguaggio C++ Linguaggi di terza generazione Insieme di primitive ad alto livello, ognuna traducibile in una sequenza di primitive in linguaggio macchina Es.: pesolordo pesocarico + pesoveicolo Due load,
DettagliLa sintassi del C APPENDICE H
APPENDICE H La sintassi del C Nella notazione della sintassi utilizzata, le categorie sintattiche (non terminali) sono state indicate da uno stile tipografico in corsivo, mentre le parole letterali e i
DettagliCorso di Fondamenti di Informatica
Corso di Fondamenti di Informatica Le classi di istruzioni in C++ 1 Le classi di istruzioni in C++ SEQUENZIALI Statement semplice Statement composto CONDIZIONALI if < expr.> else switch case
DettagliAlcuni esercizi. 1. Valutazione in cortocircuito 2. If e if innestati 3. Switch 4. Cicli
Alcuni esercizi 1. Valutazione in cortocircuito 2. If e if innestati 3. Switch 4. Cicli Stampa di voti Esempio 1 (switch) Realizzare un programma che legge da input un voto (carattere tra A ed E ) e ne
Dettagli#include <iostream> // libreria che gestisce flusso di input e output. using namespace std; // uso di librerie standard del C++
Qualsiasi programma in C++ segue lo schema: #include // libreria che gestisce flusso di input e output using namespace std; // uso di librerie standard del C++ int main() { // dichiarazioni
DettagliPROGRAMMAZIONE: Le strutture di controllo
PROGRAMMAZIONE: Le strutture di controllo Prof. Enrico Terrone A. S: 2008/09 Le tre modalità La modalità basilare di esecuzione di un programma è la sequenza: le istruzioni vengono eseguite una dopo l
DettagliPrimi passi col linguaggio C
Andrea Marin Università Ca Foscari Venezia Laurea in Informatica Corso di Programmazione part-time a.a. 2011/2012 Come introdurre un linguaggio di programmazione? Obiettivi: Introduciamo una macchina astratta
DettagliCorso di Informatica 1 Esercitazione n. 4
Corso di Informatica 1 Esercitazione n. 4 Marco Liverani Esercizio n. 1 Letti in input due numeri interi n > 0 e k > 1 costruire un array A di n numeri interi casuali minori di 100 che non siano multipli
DettagliEsercitazione 4. Comandi iterativi for, while, do-while
Esercitazione 4 Comandi iterativi for, while, do-while Comando for for (istr1; cond; istr2) istr3; Le istruzioni vengono eseguite nel seguente ordine: 1) esegui istr1 2) se cond è vera vai al passo 3 altrimenti
DettagliTipi di dati strutturati e Linguaggio C. Record o strutture Il costruttore struct in C
Tipi di dati strutturati e Linguaggio C Record o strutture Il costruttore struct in C Dati strutturati Record Un record o struttura è una struttura dati ottenuta aggregando elementi di tipo diverso che
DettagliLaboratorio di Algoritmi e Strutture Dati. Aniello Murano. people.na.infn.it/~murano. Murano Aniello LASD 05/06 Seconda Lezione.
Laboratorio di Algoritmi e Strutture Dati Aniello Murano http://people.na.infn.it people.na.infn.it/~murano 1 Il linguaggio C 2 1 Cenni storici Indice (Prima parte) Caratteristiche generali Identificatori
DettagliAlgoritmi, Strutture Dati e Programmi. UD 2.b: Programmazione in Pascal
Algoritmi, Strutture Dati e Programmi : Programmazione in Pascal Prof. Alberto Postiglione AA 2007-2008 Università degli Studi di Salerno Il Linguaggio di Programmazione Pascal Esistono molti linguaggi
Dettagli7. Strutture di controllo
Corso di Fondamenti di Informatica Corso di Laurea in Ingegneria Gestionale (L-Z) 7. Ing. Michele Ruta 1 di 17 Indice Istruzioni di selezione Mappate dal costrutto switch Istruzioni cicliche (di iterazione)
DettagliIstruzioni Condizionali in C
Concetti chiave Istruzioni Condizionali in C Tipi di Istruzioni Condizionali Espressioni Blocchi d istruzioni Istruzioni Condizionali: if-else Istruzioni Condizionali: switch-case Istruzione break Istruzioni
DettagliCorso di Fondamenti di Informatica Classi di istruzioni 2
Corso di Informatica Classi di istruzioni 2 Anno Accademico 2010/2011 Francesco Tortorella Strutture di controllo Caratteristica essenziale degli algoritmi è la possibilità di decidere le operazioni da
DettagliIstruzioni di Ciclo. Unità 4. Domenico Daniele Bloisi
Corso di Fondamenti di Informatica Ingegneria delle Comunicazioni BCOR Ingegneria Elettronica BELR Domenico Daniele Bloisi Docenti Parte I prof. Silvio Salza salza@dis.uniroma1.it http://www.dis.uniroma1.it/~salza/fondamenti.htm
DettagliIntroduzione a Java. Riferimenti
Introduzione a Java Si ringraziano Massimiliano Curcio e Matteo Giacalone 1: Introduction 1 Riferimenti! Java tutorial: http://java.sun.com/docs/books/tutorial/! Il Java tutorial è parte di una più ampia
DettagliIstruzioni iterative (o cicliche)
Dipartimento di Informatica e Sistemistica Antonio Ruberti Sapienza Università di Roma Istruzioni iterative (o cicliche) Corso di Fondamenti di Informatica Laurea in Ingegneria Informatica (Canale di Ingegneria
DettagliIl linguaggio C Il linguaggio C. Caratteristiche del C. Caratteristiche del C. Linguaggi di Programmazione I. Ferdinando Cicalese
03-10-2003 Il linguaggio C Linguaggio general-purpose Il linguaggio C Creato nel 1972 nei Bell Labs da Dennis Ritchie su PDP11 Usato per il Sistema Operativo Unix da Ken Thompson Negli anni 80 nasce ANSI
DettagliLinguaggio C. strutture di controllo: strutture iterative. Università degli Studi di Brescia. Docente: Massimiliano Giacomin
Linguaggio C strutture di controllo: strutture iterative Università degli Studi di Brescia Docente: Massimiliano Giacomin Elementi di Informatica e Programmazione Università di Brescia 1 Strutture iterative
Dettagli5. Codifica degli Algoritmi in C
40 5. Codifica degli Algoritmi in C La traduzione di algoritmi in linguaggi di programmazione rende posbile l esecuzione di programmi da parte del calcolatore. In questo corso codificheremo gli algoritmi
DettagliInformatica B. Sezione D. Scuola di Ingegneria Industriale Laurea in Ingegneria Energetica Laurea in Ingegneria Meccanica
Scuola di Ingegneria Industriale Laurea in Ingegneria Energetica Laurea in Ingegneria Meccanica Dipartimento di Elettronica, Informazione e Bioingegneria Informatica B Sezione D Franchi Alessio Mauro,
Dettagli$QDOLVLGHOSURJUDPPDTXDGUDWR
$QDOLVLGHOSURJUDPPDTXDGUDWR /* */ calcolare l area del quadrato #include main(){ int lato, area; printf("lato "); scanf("%d", &lato); if(lato < 0) printf("errore nei dati \n"); else { area =
DettagliERRATA CORRIGE. void SvuotaBuffer(void); void SvuotaBuffer(void) { if(getchar()!=10) {svuotabuffer();} }
ERRATA CORRIGE Pulizia del buffer di input: come fare? (1) Dopo aver richiamato getchar() per prelevare un carattere dal buffer di input, inseriamo una seconda chiamata a getchar(), senza assegnare il
DettagliIntroduzione a C# Prof. Francesco Accarino IIS Altiero Spinelli Sesto San Giovanni
Introduzione a C# Prof. Francesco Accarino IIS Altiero Spinelli Sesto San Giovanni C#: Strumento Principe per.net Primo linguaggio orientato alle componenti della famiglia C/C++ Tutto è DAVVERO un oggetto
DettagliLe Strutture di controllo Del Linguaggio C. Prof. Francesco Accarino IIS Altiero Spinelli Sesto San Giovanni
Le Strutture di controllo Del Linguaggio C Prof. Francesco Accarino IIS Altiero Spinelli Sesto San Giovanni STRUTTURE DI CONTROLLO PRIMITIVE SEQUENZA SELEZIONE (o scelta logica) ITERAZIONE NON PRIMITIVE
DettagliEsercizi C su array e matrici
Politecnico di Milano Esercizi C su array e matrici Massimo, media e varianza,, ordinamento, ricerca e merge, matrice simmetrica, puntatori Array Array o vettore Composto da una serie di celle int vett[4]
DettagliUnità Didattica 2 Linguaggio C. Espressioni, Operatori e Strutture linguistiche per il controllo del flusso
Unità Didattica 2 Linguaggio C Espressioni, Operatori e Strutture linguistiche per il controllo del flusso 1 Espressioni e assegnazioni Le espressioni sono definite dalla grammatica: espressione = variabile
DettagliIntroduzione alla programmazione in C
Introduzione alla programmazione in C Testi Consigliati: A. Kelley & I. Pohl C didattica e programmazione B.W. Kernighan & D. M. Ritchie Linguaggio C P. Tosoratti Introduzione all informatica Materiale
DettagliAlgoritmi e basi del C
Algoritmi e basi del C Marco D. Santambrogio marco.santambrogio@polimi.it Ver. aggiornata al 4 O/obre 2013 What it s all about! 2 What it s all about! 3 What it s all about! 4 Obiettivi Algoritmi Pseudocodice
DettagliIndice PARTE A. Prefazione Gli Autori Ringraziamenti dell Editore La storia del C. Capitolo 1 Computer 1. Capitolo 2 Sistemi operativi 21 XVII XXIX
Indice Prefazione Gli Autori Ringraziamenti dell Editore La storia del C XVII XXIX XXXI XXXIII PARTE A Capitolo 1 Computer 1 1.1 Hardware e software 2 1.2 Processore 3 1.3 Memorie 5 1.4 Periferiche di
DettagliL'Allocazione Dinamica della Memoria nel linguaggio C
L'Allocazione Dinamica della Memoria nel linguaggio C Prof. Rio Chierego riochierego@libero.it http://www.riochierego.it/informatica.htm Sommario Questo documento tratta l'allocazione dinamica della memoria
DettagliQualsiasi programma in C++ segue lo schema:
Qualsiasi programma in C++ segue lo schema: #include // libreria che gestisce flusso di input e output using namespace std; // uso di librerie standard del C++ int main() { // dichiarazioni
DettagliFondamenti di Informatica T-1 Modulo 2
Fondamenti di Informatica T-1 Modulo 2 Obiettivi di questa lezione 1. Valutazione in cortocircuito 2. If e if innestati 3. Switch 4. Cicli Valutazione in cortocircuito In C, le espressioni booleane sono
DettagliInformatica 1. Prova di recupero 21 Settembre 2001
Informatica 1 Prova di recupero 21 Settembre 2001 Si risolvano i seguenti esercizi. Ai fini della determinazione del voto finale il loro punteggio andrà sommato al punteggio del laboratorio. Il tempo complessivo
DettagliSommario. Introduzione... xv. Giorno 1 Elementi base del linguaggio C
Sommario Introduzione... xv Organizzazione del volume... xv Argomenti...xvi Domande...xvi Verifiche...xvi Domande e risposte...xvi Esercizi...xvi Non è richiesta alcuna precedente esperienza di programmazione...
DettagliProgrammazione, 5 a lezione
Programmazione, 5 a lezione Eugenio Omodeo Dipartimento di Matematica e Informatica, Università degli Studi di Trieste. Trieste, 12.10.2010 Esecuzione sequenziale I All avvio di un programma, il processo
DettagliUnità F1. Obiettivi. Il linguaggio C. Il linguaggio C++ Linguaggio C. Pseudolinguaggio. Primi programmi
Obiettivi Unità F1 Primi programmi Conoscere il significato di dichiarazione e definizione di variabili Conoscere i tipi di dato numerici Essere in grado di realizzare semplici algoritmi in pseudolinguaggio
DettagliLe funzioni, e le istruzioni di input/output
Linguaggio C Le funzioni, e le istruzioni di input/output 1 Funzioni! Sono sottoprogrammi per svolgere un particolare compito! Sequenze di istruzioni (raggruppate tramite le parentesi graffe) alle quali
DettagliAlgoritmi e basi del C
Algoritmi e basi del C Marco D. Santambrogio marco.santambrogio@polimi.it Ver. aggiornata al 3 O/obre 2013 Installation Party Dove: L.06 Quando: Sabato 12 Ottobre 9.00am - 12.00pm 2 WAT Il docente ha messo
DettagliCapitolo 2 Introduzione alla programmazione in C
Capitolo 2 Introduzione alla programmazione in C Introduzione Un semplice programma C: Stampa di una linea di testo Un altro semplice programma C: Sommare due interi Concetti sulla Memoria Aritmetica in
DettagliLe basi del linguaggio Java
Corso di Laurea Ingegneria Civile Fondamenti di Informatica Dispensa 10 Le basi del linguaggio Java Aprile 2010 Le basi del linguaggio Java 1 Prerequisiti Nozioni generali sulla sintassi e semantica del
DettagliESECUZIONE DI PROGRAMMI C SU MACCHINE REALI. Docente: Giorgio Giacinto AA 2008/2009. formalizzazione degli algoritmi in linguaggio C
Università degli Studi di Cagliari Corso di Laurea Specialistica in Ingegneria per l Ambiente ed il Territorio Corso di Laurea Specialistica in Ingegneria Civile - Strutture FONDAMENTI DI INFORMATICA 2
Dettagliwhile Istruzione while Cicli ed iterazioni Istruzioni di ripetizione in C Comportamento del while
icli ed iterazioni Sintassi dell istruzione Esercizio Media aritmetica Esecuzione del programma icli while annidati Esercizio Quadrato 2 Istruzioni di ripetizione in Nel linguaggio esistono tre distinte
DettagliMetodi statici. Dichiarazione e chiamata di metodi statici
Metodi statici Dichiarazione e chiamata di metodi statici Cos è un metodo Un metodo è un blocco di istruzioni che fornisce una funzionalità e viene identificato con un nome Può avere dei parametri ed un
DettagliIstruzioni di ciclo. Unità 4. Corso di Laboratorio di Informatica Ingegneria Clinica BCLR. Domenico Daniele Bloisi
Corso di Ingegneria Clinica BCLR Domenico Daniele Bloisi Docente Ing. Domenico Daniele Bloisi, PhD Ricercatore Dipartimento di Ingegneria Informatica, Automatica e Gestionale Antonio Ruberti Via Ariosto
DettagliSTRUTTURE DI CONTROLLO DEL C++
STRUTTURE DI CONTROLLO DEL C++ Le istruzioni if e else Le istruzioni condizionali ci consentono di far eseguire in modo selettivo una singola riga di codice o una serie di righe di codice (che viene detto
DettagliFunzioni in C. Funzioni. Strategie di programmazione. Funzioni in C. Come riusare il codice? (2/3) Come riusare il codice? (1/3)
Funzioni Il concetto di funzione Parametri formali e attuali Il valore di ritorno Definizione e chiamata di funzioni Passaggio dei parametri Corpo della funzione 2 Strategie di programmazione Riuso di
DettagliC: panoramica. Violetta Lonati
C: panoramica Violetta Lonati Università degli studi di Milano Dipartimento di Scienze dell Informazione Laboratorio di algoritmi e strutture dati Corso di laurea in Informatica AA 2009/2010 Violetta Lonati
DettagliProgrammazione di base
Fondamenti di Informatica Testo A Secondo Appello 016-17 febbraio 017 Rispondi alle domande negli appositi spazi. I punti assegnati per ogni domanda sono indicati nel riquadro a lato. L'esame contiene
DettagliSommario PREFAZIONE...XI CAPITOLO 1: INTRODUZIONE AI COMPUTER, A INTERNET E AL WEB... 1 CAPITOLO 2: INTRODUZIONE ALLA PROGRAMMAZIONE IN C...
Sommario PREFAZIONE...XI Aggiornamenti e novità... xi Lo scopo di questo libro... xii Diagramma delle dipendenze... xii La metodologia di insegnamento... xiii Panoramica sul libro... xvi Ringraziamenti...
DettagliLaboratorio di Algoritmi e Strutture Dati
Laboratorio di Algoritmi e Strutture Dati Aniello Murano http://people.na.infn.it people.na.infn.it/~murano 1 Obiettivi del Corso Familiarizzare lo studente con la progettazione di algoritmi e strutture
Dettagli5 - Istruzioni condizionali
5 - Istruzioni condizionali Programmazione e analisi di dati Modulo A: Programmazione in Java Paolo Milazzo Dipartimento di Informatica, Università di Pisa http://www.di.unipi.it/ milazzo milazzo di.unipi.it
DettagliESECUZIONE DI PROGRAMMI C SU MACCHINE REALI. Docente: Giorgio Giacinto AA 2009/2010
Università degli Studi di Cagliari Corso di Laurea Specialistica in Ingegneria per l Ambiente ed il Territorio Corso di Laurea Specialistica in Ingegneria Civile - Strutture FONDAMENTI DI INFORMATICA 2
DettagliStrategie di programmazione
Funzioni Funzioni in C Il concetto di funzione Parametri formali e attuali Il valore di ritorno Definizione e chiamata di funzioni Passaggio dei parametri Corpo della funzione 2 Funzioni in C Strategie
DettagliDall Algoritmo al Programma. Prof. Francesco Accarino IIS Altiero Spinelli Sesto San Giovanni
Dall Algoritmo al Programma Prof. Francesco Accarino IIS Altiero Spinelli Sesto San Giovanni IL PROGRAMMA Gli algoritmi sono modelli di descrizione astratti e per controllarne il funzionamento devono essere
Dettagli<istruzione> ::= <istruzione-semplice> <istruzione> ::= <istruzione-di-controllo> <istruzione-semplice> ::= <espressione> ;
ISTRUZIONI Le istruzioni esprimono azioni che, una volta eseguite, comportano una modifica permanente dello stato interno del programma o del mondo circostante. Le strutture di controllo permettono di
DettagliRealizzare un programma che legga da input tre numeri interi e stampi a video la loro somma e la media.
Esercizio 1 Realizzare un programma che legga da input tre numeri interi e stampi a video la loro somma e la media. #include Esercizio 1 - Soluzione int main() int num1, num2, num3, somma; float
DettagliProgrammazione I - Laboratorio
Programmazione I - Laboratorio Esercitazione 4 - Puntatori, vettori e stringhe Gianluca Mezzetti 1 Paolo Milazzo 2 1. Dipartimento di Informatica, Università di Pisa http://www.di.unipi.it/ mezzetti mezzetti
DettagliLinguaggio C. Generalità sulle Funzioni. Variabili locali e globali. Passaggio di parametri per valore.
Linguaggio C Generalità sulle Funzioni. Variabili locali e globali. Passaggio di parametri per valore. 1 Funzioni Generalizzazione del concetto di funzione algebrica: legge che associa a valori delle variabili
Dettagli