Programmazione Procedurale in Linguaggio C++
|
|
- Lia Salerno
- 7 anni fa
- Visualizzazioni
Transcript
1 Programmazione Procedurale in Linguaggio C++ Sottoprogrammi Parte 2 (a) Sintassi e Semantica versione 2.0 Questolavoroè concessoin uso secondoi termini di unalicenzacreative Commons (vedi ultima pagina) G. Mecca Università della Basilicata mecca@unibas.it Sottoprogrammi: Sintassi e Semantica >> Sommario Sommario Introduzione Definizione di Funzioni Definizione di Procedure Utilizzo di Sottoprogrammi Sintassi per la Chiamata di Funzioni Sintassi per la Chiamata di Procedure Semantica 2
2 Sottoprogrammi: Sintassi e Semantica >> Introduzione Introduzione Sottoprogrammi moduli in cui è possibile dividere un programma complesso ne esistono due forme Funzioni blocchi di istruzioni per calcolare un valore Procedure blocchi di istruzioni per realizzare operazioni complesse 3 Sottoprogrammi: Sintassi e Semantica >> Introduzione Introduzione Sottoprogrammi definiti dall utente del tutto analoghi dal punto di vista dell utilizzo ai sottoprogrammi predefiniti Sottoprogrammi predefiniti funzioni predefinite (es: sin()) procedure predefinite (es: getline()) Differenza fondamentale in più, è necessario definire il sottoprogramma 4
3 Sottoprogrammi: Sintassi e Semantica >> Introduzione Introduzione Programmazione modulare un programma è fatto di vari moduli Modulo sottoprogramma o programma principale Funzionamento i moduli si chiamano a vicenda e comunicano attraverso il passaggio dei parametri 5 Sottoprogrammi: Sintassi e Semantica >> Introduzione Introduzione Parametro dato generico utilizzato nel sottoprogramma al momento della chiamata gli viene associato un argomento (dato specifico ) Parametri standard (o per valore ) non possono essere utilizzati per modificare il valore del corrispondente argomento Parametri per riferimento (o per variabile ) possono essere utilizzati per modificare il corrispondente argomento 6
4 Sottoprogrammi: Sintassi e Semantica >> Definizione di Funzioni Definizione di Funzioni Definizione di una funzione fatta di due parti Intestazione (o Prototipo ) fornisce le informazioni necessarie per poter chiamare la funzione in altri moduli Corpo fornisce le informazioni necessarie per poter eseguire la funzione quando viene chiamata 7 Sottoprogrammi: Sintassi e Semantica >> Definizione di Funzioni Intestazione Funzione predefinita; es: sin() Per poterla utilizzare devo conoscere il nome della funzione (sin) il numero e il tipo degli argomenti (1 argomento di tipo double) >> parametri il tipo del risultato restituito (double) Intestazione di una funzione contiene esattamente queste informazioni 8
5 Sottoprogrammi: Sintassi e Semantica >> Definizione di Funzioni Corpo Rispetto ad una funzione predefinita è necessario specificare altre informazioni per poter eseguire la funzione In particolare istruzioni da eseguire per calcolare il valore valore da restituire al termine dell esecuzione Corpo serve a specificare queste altre informazioni 9 Sottoprogrammi: Sintassi e Semantica >> Definizione di Funzioni Esempio: discriminante tipo del risultato nome della funzione parametri float discriminante (float a, float b, float c) { } float d; d = b*b-4*a*c; return d; istruzione di ritorno e valore da restituire operazioni da eseguire per calcolare il valore intestazione corpo 10
6 Sottoprogrammi: Sintassi e Semantica >> Definizione di Funzioni Esempio: giocata tipo del risultato nome della funzione parametri string giocata (int numero) { } string s; if (numero==1) s="carta"; else if (numero==2) s="forbici"; else if (numero==3) s="sasso"; return s; valore da restituire operazioni da eseguire per calcolare il valore intestazione corpo 11 Sottoprogrammi: Sintassi e Semantica >> Definizione di Funzioni Definizione di Funzioni Sintassi <tiporisultato> <nome> (<parametri>) <corpo> Dove <tiporisultato> è un tipo di dato <nome> è un identificatore <corpo> è un blocco di istruzioni <parametri> è l elenco dei parametri 12
7 Sottoprogrammi: Sintassi e Semantica >> Definizione di Funzioni Definizione di Funzioni Elenco dei parametri <tipop1> <nomep1>, <tipop2> <nomep2>... Dove <tipop1>, <tipop2>... sono tipi di dato <nomep1>, <nomep2>... sono identificatori Nota ci sono sottoprogrammi che NON hanno parametri (casi rari); in questo caso si utilizzano le parentesi vuote () 13 Sottoprogrammi: Sintassi e Semantica >> Definizione di Funzioni Definizione di Funzioni Istruzione return il corpo deve contenerne almeno una Sintassi return <espressione>; Dove <espressione> deve restituire un valore compatibile con il tipo del risultato 14
8 Sottoprogrammi: Sintassi e Semantica >> Definizione di Funzioni Definizione di Funzioni Semantica l esecuzione dell istruzione return interrompe l esecuzione della funzione viene calcolato il valore dell espressione il valore viene restituito al modulo chiamante Nota può esserci anche più di un istruzione return in punti diversi del sottoprogramma 15 Sottoprogrammi: Sintassi e Semantica >> Definizione di Procedure Definizione di Procedure Definizione di una procedura anche in questo caso fatta di intestazione e corpo Differenze rispetto alle funzioni non viene restituito alcun valore può essere necessario modificare gli argomenti attraverso i parametri Parametri per riferimento sintassi opportuna per segnalarli 16
9 Sottoprogrammi: Sintassi e Semantica >> Definizione di Procedure Intestazione Procedura predefinita; es: getline() Per poterla utilizzare devo conoscere il nome della procedura (getline) il numero e il tipo degli argomenti (1 argomento di tipo istream, 1 argomento di tipo string) >> parametri il fatto che il secondo arg. viene modificato Intestazione di una procedura contiene esattamente queste informazioni 17 Sottoprogrammi: Sintassi e Semantica >> Definizione di Procedure Esempio: leggiequazione non c è risultato nome della procedura parametri per riferimento void leggiequazione (float &a, float &b, float &c) { } cout << "Inserisci i coefficienti dell'equazione \n"; cin >> a; cin >> b; cin >> c; return; istruzione di ritorno operazioni da eseguire intestazione corpo 18
10 Sottoprogrammi: Sintassi e Semantica >> Definizione di Procedure Esempio: nuovamano void nuovamano( string nome, int& punteggiocomputer, int& punteggiogiocatore, int& pareggi ) { int giocatacomputer; int giocatagiocatore; int esito; giocatacomputer = generagiocatacomputer(); giocatagiocatore = schermomenumano(nome); esito = controllaesito(giocatacomputer, giocatagiocatore); schermoesitomano(nome,esito,giocatacomputer,giocatagiocatore); if (esito==1) punteggiocomputer++; else if (esito==2) punteggiogiocatore++; else pareggi++; return; } 19 Sottoprogrammi: Sintassi e Semantica >> Definizione di Procedure Definizione di Procedure Sintassi void <nome> (<parametri>) <corpo> Dove <tiporisultato> è un tipo di dato <nome> è un identificatore <corpo> è un blocco di istruzioni <parametri> l elenco dei parametri 20
11 Sottoprogrammi: Sintassi e Semantica >> Definizione di Procedure Definizione di Procedure Parametri standard (o per valore ) <tipopar> <nomepar> Parametri per riferimento <tipopar>& <nomepar> Semantica ATTENZIONE: omettere la & è un errore logico molto frequente i parametri per riferimento possono essere utilizzati per modificare i corrispondenti argomenti i parametri standard no 21 Sottoprogrammi: Sintassi e Semantica >> Definizione di Procedure Utilizzo dei Parametri In sintesi le funzioni sono utilizzate per calcolare un valore (non modificano gli argomenti) normalmente hanno solo parametri standard le procedure sono utilizzate per effettuare operazioni (tra cui modifiche agli argomenti) possono avere sia parametri standard che per riferimento 22
12 Sottoprogrammi: Sintassi e Semantica >> Definizione di Procedure Definizione di Procedure Nota il corpo deve contenere un istruzione return può essercene più di una Sintassi dell istruzione return nelle proc. return; Infatti in questo caso non è necessario restituire nessun valore (differenza con le funzioni) 23 Sottoprogrammi: Sintassi e Semantica >> Utilizzo dei Sottoprogrammi Utilizzo dei Sottoprogrammi Una volta definiti i sottoprogrammi possono essere chiamati da altri moduli Terminologia modulo chiamante modulo chiamato Analogo il chiamante chiede un servizio al chiamato il chiamato fornisce un servizio al chiamante 24
13 Sottoprogrammi: Sintassi e Semantica >> Utilizzo dei Sottoprogrammi Utilizzo dei Sottoprogrammi Utilizzo delle funzioni esclusivamente all interno di espressioni, per calcolare valori Utilizzo delle procedure sotto forma di nuove istruzioni In entrambi i casi è necessario specificare gli argomenti 25 Sottoprogrammi: Sintassi e Semantica >> Utilizzo dei Sottoprogrammi Chiamata di Funzioni Espressione: -istruzione di assegnazione -istruzione di stampa (cout<<) -struttura di controllo (cond.) Sintassi <nomefunzione>(<arg1>, <arg2>,...<argn>) Dove <nomefunzione> è il nome della funzione <arg1>, <arg2>,...<argn> sono gli argomenti se la funzione non ha parametri si possono omettere le parentesi vuote Nota chiamata ammessa solo in un espressione 26
14 Sottoprogrammi: Sintassi e Semantica >> Utilizzo dei Sottoprogrammi Esempio: discriminante float discriminante (float a, float b, float c) { float d; d = b*b-4*a*c; return d; } void main() { chiamata della funzione float a1, b1, c1; espressione float a2, b2, c2;... if ( discriminante( a1, b1, c1 ) >= Sottoprogrammi: Sintassi e Semantica >> Utilizzo dei Sottoprogrammi Chiamata di Funzioni Argomenti espressioni generiche in particolare costanti simboliche o numeriche (es: pigreco oppure 3.14) oppure variabili (es: a1) devono corrispondere in numero e ordinatamente in tipo con i parametri In realtà possono essere utilizzanti altri parametri 28
15 Sottoprogrammi: Sintassi e Semantica >> Utilizzo dei Sottoprogrammi Chiamata di Funzioni Infatti il modulo chiamante può essere un altro sottoprogramma Esempio float primaradice (float a, float b, float c) { float x; x = (-b + sqrt(discriminante(a, b, c)))/(2*a); return x; } a, b e c sono i parametri di primaradice e vengono usati come argomenti per discriminante 29 Sottoprogrammi: Sintassi e Semantica >> Utilizzo dei Sottoprogrammi Esempi float discriminante(float a, float b, float c) { return b*b-4*a*c; } float a1, b1, c1, d; a1 = 2; b1 = 6; c1 = 1; if (discriminante(a1, b1, c1)>= 0)... valore: 28 d = discriminante(a1, b1, c1); valore: 28 cout << discriminante(2, b1-1, c1*2); valore: 9 d = discriminante(1,1,discriminante(a1,b1-1,c1*2)); cout << discriminante( a, b1); valore:
16 Sottoprogrammi: Sintassi e Semantica >> Utilizzo dei Sottoprogrammi Chiamata di Procedure Sintassi <nomeprocedura>(<arg1>,<arg2>,...<argn>); Dove <nomeprocedura> è il nome della procedura <arg1>, <arg2>,...<argn> sono gli argomenti Nota la chiamata deve essere un istruzione a sè stante terminata da ; 31 Sottoprogrammi: Sintassi e Semantica >> Utilizzo dei Sottoprogrammi Esempio: leggiequazione void leggiequazione (float &a, float &b, float &c) { cout << "Inserisci i coefficienti dell'equazione \n"; cin >> a; cin >> b; cin >> c; return; } void main() { float a1, b1, c1; float a2, b2, c2; leggiequazione( a1, b1, c1 ); leggiequazione( a2, b2, c2 );... chiamata 32
17 Sottoprogrammi: Sintassi e Semantica >> Utilizzo dei Sottoprogrammi Chiamata di Procedure Argomenti da modificare associati a parametri per riferimento devono essere effettivamente valori modificabili ovvero devono corrispondere ad uno spazio di memoria il cui valore sia modificabile non possono essere costanti numeriche non possono essere costanti simboliche 33 Sottoprogrammi: Sintassi e Semantica >> Utilizzo dei Sottoprogrammi Chiamata di Procedure Argomenti da modificare devono essere variabili oppure a parametri del sottoprogramma chiamante (>> spazio nella memoria) void leggi (float& a,float& b,float& c){...} void main() { float a1, b1, c1, x, y; leggi (a1, b1, c1); leggi (a1, x, y); leggi (a1*2, 3, y); void prova (float x) { float y, z, w; leggi (y, z, w); leggi (x, y, z); 34
18 Sottoprogrammi: Sintassi e Semantica >> Utilizzo dei Sottoprogrammi Errore Frequente ATTENZIONE non è necessario specificare il tipo degli argomenti if (discriminante(a1, b1, c1) >= 0... leggiequazione(a1, b1, c1); if (discriminante(float a1, float b1, float c1 )>=0... leggiequazione(float a1, float b1, float c1); 35 Sottoprogrammi: Sintassi e Semantica >> Utilizzo dei Sottoprogrammi Chiamata di Sottoprogramma Semantica si interrompe il modulo chiamante avviene il passaggio dei parametri (>>) comincia l esecuzione del corpo del sottoprogramma quando viene incontrata l istruzione return, l esecuzione del corpo termina termina l effetto del passaggio dei parametri riprende l esecuzione del modulo chiamante 36
19 Sottoprogrammi: Sintassi e Semantica >> Sommario Riassumendo Sottoprogrammi dichiarazione e utilizzo Dichiarazione intestazione corpo Utilizzo (Chiamata) chiamata di funzione chiamata di procedura 37 Termini della Licenza Termini della Licenza This work is licensed under the Creative Commons Attribution- ShareAlike License. To view a copy of this license, visit or send a letter to Creative Commons, 559 Nathan Abbott Way, Stanford, California 94305, USA. Questo lavoro viene concesso in uso secondo i termini della licenza Attribution-ShareAlike di Creative Commons. Per ottenere una copiadella licenza, è possibile visitare oppure inviare una lettera all indirizzo Creative Commons, 559 Nathan Abbott Way, Stanford, California 94305, USA. 38
Programmazione Procedurale in Linguaggio C++
Programmazione Procedurale in Linguaggio C++ Elementi di Base Parte 6 Il FORTRAN versione 2.0 Questolavoroè concessoin uso secondoi termini di unalicenzacreative Commons (vedi ultima pagina) G. Mecca Università
DettagliProgrammazione Procedurale in Linguaggio C++
Programmazione Procedurale in Linguaggio C++ Elementi di Base Parte 3 Istruzioni di Assegnazione versione 2.0 Questolavoroè concessoin uso secondoi termini di unalicenzacreative Commons (vedi ultima pagina)
DettagliProgrammazione Procedurale in Linguaggio C++
Programmazione Procedurale in Linguaggio C++ Tipi Strutturati Parte 3 Record versione 2.1 Questolavoroè concessoin uso secondoi termini di unalicenzacreative Commons (vedi ultima pagina) G. Mecca Università
DettagliProgrammazione Orientata agli Oggetti in Linguaggio Java
Programmazione Orientata agli Oggetti in Linguaggio Java Sintassi e Semantica: Convenzioni di Stile versione 1.1 Questo lavoro è concesso in uso secondo i termini di una licenza Creative Commons (vedi
DettagliProgrammazione Orientata agli Oggetti in Linguaggio Java
Programmazione Orientata agli Oggetti in Linguaggio Java Classi e Oggetti: Metafora Parte a versione 2.2 Questo lavoro è concesso in uso secondo i termini di una licenza Creative Commons (vedi ultima pagina)
DettagliProgrammazione Procedurale in Linguaggio C++
Programmazione Procedurale in Linguaggio C++ Tipi Strutturati Concetti Avanzati versione 2.5 Questo lavoro è concesso in uso secondo i termini di una licenza Creative Commons (vedi ultima pagina) G. Mecca
DettagliProgrammazione Procedurale in Linguaggio C++
Programmazione Procedurale in Linguaggio C++ Concetti Introduttivi Parte 2 Linguaggi di Programmazione versione 2.0 Questolavoroè concessoin uso secondoi termini di unalicenzacreative Commons (vedi ultima
DettagliProgrammazione Orientata agli Oggetti in Linguaggio Java
Programmazione Orientata agli Oggetti in Linguaggio Java Test e Correzione: Introduzione versione 1.0 Questo lavoro è concesso in uso secondo i termini di una licenza Creative Commons (vedi ultima pagina)
DettagliTecnologie di Sviluppo per il Web
Tecnologie di Sviluppo per il Web Programmazione Web: Introduzione versione 3.0 Questo lavoro è concesso in uso secondo i termini di una licenza Creative Commons (vedi ultima pagina) G. Mecca mecca@unibas.it
DettagliProgrammazione Procedurale in Linguaggio C++
Programmazione Procedurale in Linguaggio C++ Sottoprogrammi Concetti Avanzati Tecniche di Test e Correzione versione 2.4 Questo lavoro è concesso in uso secondo i termini di una licenza Creative Commons
DettagliTecnologie di Sviluppo per il Web
Tecnologie di Sviluppo per il Web Programmazione Web: Conclusioni versione 2.1 Questo lavoro è concesso in uso secondo i termini di una licenza Creative Commons (vedi ultima pagina) G. Mecca mecca@unibas.it
DettagliProgrammazione Orientata agli Oggetti in Linguaggio Java
Programmazione Orientata agli Oggetti in Linguaggio Java Ruoli e Responsabilità: C# versione 1.1 Questo lavoro è concesso in uso secondo i termini di una licenza Creative Commons (vedi ultima pagina) G.
DettagliProgrammazione Procedurale in Linguaggio C++
Programmazione Procedurale in Linguaggio C++ Strutture di Dati La Matrice versione. Questo lavoro è concesso in uso secondo i termini di una licenza Creative Commons (vedi ultima pagina) G. Mecca Università
DettagliProgrammazione Procedurale in Linguaggio C++
Programmazione Procedurale in Linguaggio C++ Tipi Strutturati Parte 3 Record G. Mecca M. Samela Università della Basilicata Tipi Strutturati: Record >> Sommario Sommario Introduzione Dichiarazione di Record
DettagliTecnologie di Sviluppo per il Web
Tecnologie di Sviluppo per il Web Applicazioni Web J2EE Framework per il Modello 2 Struts versione 3.0 Questo lavoro è concesso in uso secondo i termini di una licenza Creative Commons (vedi ultima pagina)
DettagliProgrammazione Procedurale in Linguaggio C++
Programmazione Procedurale in Linguaggio C++ Elementi di Base Parte 3 Istruzioni di Assegnazione G. Mecca M. Samela Università della Basilicata Elementi di Base >> Sommario Sommario Introduzione Istruzioni
DettagliFunzioni, Stack e Visibilità delle Variabili in C
Funzioni, Stack e Visibilità delle Variabili in C Programmazione I e Laboratorio Corso di Laurea in Informatica A.A. 2016/2017 Calendario delle lezioni Lez. 1 Lez. 2 Lez. 3 Lez. 4 Lez. 5 Lez. 6 Lez. 7
DettagliConcetto di Funzione e Procedura METODI in Java
Fondamenti di Informatica Concetto di Funzione e Procedura METODI in Java Fondamenti di Informatica - D. Talia - UNICAL 1 Metodi e Sottoprogrammi Mentre in Java tramite le classi e gli oggetti è possibile
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...
DettagliProgrammazione Orientata agli Oggetti in Linguaggio Java
Programmazione Orientata agli Oggetti in Linguaggio Java Ruoli e Responsabilità: Introduzione versione 2.3 Questo lavoro è concesso in uso secondo i termini di una licenza Creative Commons (vedi ultima
DettagliProgrammazione Orientata agli Oggetti in Linguaggio Java
Programmazione Orientata agli Oggetti in Linguaggio Java Tecniche di Programmazione: Date versione 1.1 Questo lavoro è concesso in uso secondo i termini di una licenza Creative Commons (vedi ultima pagina)
Dettagli7 - Programmazione procedurale: Dichiarazione e chiamata di metodi ausiliari
7 - Programmazione procedurale: Dichiarazione e chiamata di metodi ausiliari Programmazione e analisi di dati Modulo A: Programmazione in Java Paolo Milazzo Dipartimento di Informatica, Università di Pisa
Dettaglinome (lista_parametri) Funzioni funzioni predefinite: sqrt(x) log(x) usare queste funzioni significa: specificare il valore degli argomenti
Università di Roma Tor Vergata L9-1 Funzioni funzioni predefinite: sqrt(x) log(x) usare queste funzioni significa: specificare il valore degli argomenti utilizzare il valore restituito quanti argomenti
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
DettagliProgrammazione Procedurale in Linguaggio C++
Programmazione Procedurale in Linguaggio C++ Tipi Strutturati Parte 1 Introduzione G. Mecca M. Samela Università della Basilicata Tipi Strutturati: Introduzione >> Sommario Sommario Panoramica Alcuni Esempi
DettagliIntroduzione ai Calcolatori Elettronici
Introduzione ai Calcolatori Elettronici Elementi di Base dell ICT Information and Communication Technology Concetti Introduttivi A.A. 2013/2014 Domenica Sileo Università degli Studi della Basilicata Elementi
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
DettagliCorso sul linguaggio Java
Corso sul linguaggio Java Modulo JAVA2 2.1- Funzioni 1 Prerequisiti Programmazione elementare in Java Tecnica top-down Concetto matematico di funzione Compilazione e link di programmi Esecuzione di funzioni
DettagliDefinizione di metodi in Java
Definizione di metodi in Java Un metodo in Java definisce un operazione ad alto livello (sottoprogramma) che consente di manipolare dati e oggetti. Durante la computazione effettuata da un programma, un
DettagliProgrammazione Orientata agli Oggetti in Linguaggio Java
Programmazione Orientata agli Oggetti in Linguaggio Java Programmazione Grafica: Thread versione 1.0 Questo lavoro è concesso in uso secondo i termini di una licenza Creative Commons (vedi ultima pagina)
DettagliIl problema dello zaino
Il problema dello zaino (knapsack problem) Damiano Macedonio mace@unive.it Copyright 2010 2012 Moreno Marzolla, Università di Bologna (http://www.moreno.marzolla.name/teaching/asd2011b/) This work is licensed
DettagliProgrammazione Orientata agli Oggetti in Linguaggio Java
Programmazione Orientata agli Oggetti in Linguaggio Java Design Pattern: Storia Parte b versione 2.1 Questo lavoro è concesso in uso secondo i termini di una licenza Creative Commons (vedi ultima pagina)
DettagliLinguaggio C: le funzioni. Visibilità variabili e passaggio parametri
Dipartimento di Elettronica ed Informazione Politecnico di Milano Informatica e CAD (c.i.) - ICA Prof. Pierluigi Plebani A.A. 2008/2009 Linguaggio C: le funzioni. Visibilità variabili e passaggio parametri
DettagliLinguaggio C: le funzioni. Introduzione e sintassi
Dipartimento di Elettronica ed Informazione Politecnico di Milano Informatica e CAD (c.i.) - ICA Prof. Pierluigi Plebani A.A. 2008/2009 Linguaggio C: le funzioni. Introduzione e sintassi La presente dispensa
DettagliSommario. Introduzione Architettura Client-Server. Server Web Browser Web. Architettura a Due Livelli Architettura a Tre Livelli
Sommario Introduzione Architettura Client-Server Architettura a Due Livelli Architettura a Tre Livelli Server Web Browser Web Introduzione La storia inizia nel 1989 Tim Berners-Lee al CERN, progetto WWW
DettagliProgrammazione Orientata agli Oggetti in Linguaggio Java
Programmazione Orientata agli Oggetti in Linguaggio Java Tecniche di Programmazione: Thread Parte a versione 1.0 Questo lavoro è concesso in uso secondo i termini di una licenza Creative Commons (vedi
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
DettagliProgrammazione Orientata agli Oggetti in Linguaggio Java
Programmazione Orientata agli Oggetti in Linguaggio Java Classi e Oggetti: Conclusioni Parte b versione 2.1 Questo lavoro è concesso in uso secondo i termini di una licenza Creative Commons (vedi ultima
DettagliLinguaggio C: le funzioni. Introduzione e sintassi
ISIS "Guido Tassinari" di Pozzuoli Indirizzo Informatico - Articolazione Informatica Informatica Prof. A.S. 2012/2013 Linguaggio C: le funzioni. Introduzione e sintassi 21/10/2012 Introduzione Spesso alcuni
DettagliScope delle variabili e passaggio parametri. Danilo Ardagna Politecnico di Milano
Scope delle variabili e passaggio parametri Danilo Ardagna Politecnico di Milano 1-4-2014 Introduzione! Con le funzioni è stato introdotto un meccanismo per definire dei piccoli programmi all interno di
DettagliVariabili. Unità 2. Domenico Daniele Bloisi. Corso di Programmazione e Metodi Numerici Ingegneria Aerospaziale BAER
Corso di Programmazione e Metodi Numerici Ingegneria Aerospaziale BAER Domenico Daniele Bloisi Docenti Metodi Numerici prof. Vittoria Bruni vittoria.bruni@sbai.uniroma1.it Programmazione prof. Domenico
DettagliFunzioni di libreria. Richiedono tutte. #include <math.h> fabs(x) sqrt(x) pow(x,a) exp(x) log(x)
Funzioni di libreria Richiedono tutte #include x x a x fabs(x) sqrt(x) pow(x,a) x e ln(x) exp(x) log(x) log 10 ( x ) log10(x) sen(x) cos(x) tg(x) arcsen(x) arccos(x) arctg(x) senh(x) cosh(x) tgh(x)
DettagliTecnologie di Sviluppo per il Web
Tecnologie di Sviluppo per il Web Applicazioni Web J2EE: Java Servlet Parte a versione 3.1 Questo lavoro è concesso in uso secondo i termini di una licenza Creative Commons (vedi ultima pagina) G. Mecca
DettagliFUNZIONI COME COMPONENTI SW FUNZIONI COME COMPONENTI SW FUNZIONI MODELLO CLIENTE/SERVITORE
FUNZIONI Spesso può essere utile avere la possibilità di costruire nuove istruzioni che risolvano parti specifiche di un problema Una funzione permette di dare un nome a una espressione rendere tale espressione
Dettagliuguale livello gerarchico non vi sono funzioni più importanti di altre main main
FUNZIONI in C/C++ Un programma C++ è un insieme di funzioni indipendenti e di uguale livello gerarchico (nel senso che non vi sono funzioni più importanti di altre o dotate, in qualche modo, di diritti
DettagliReti di calcolatori Introduzione al corso
Reti di calcolatori Introduzione al corso Gruppo Reti TLC nome.cognome@polito.it http://www.telematica.polito.it/ RETI DI CALCOLATORI Introduzione al corso - 1 Copyright Quest opera è protetta dalla licenza
DettagliLe funzioni in JavaScript. Modularizzazione
Modularizzazione Quando abbiamo a che fare con un problema complesso spesso lo suddividiamo in problemi più semplici che risolviamo separatamente, per poi combinare insieme le soluzioni dei sottoproblemi
DettagliL organizzazione dei programmi
L organizzazione dei programmi Lo sviluppo top-down L.S. Touschek - A.S. 2015/2016 - I fondamenti del Linguaggio C F. Cardarelli Lo sviluppo top-down I problemi complessi Blocco 1 Istruzione 1 Istruzione
DettagliProgrammazione Orientata agli Oggetti in Linguaggio Java
Programmazione Orientata agli Oggetti in Linguaggio Java Programmazione XML: JDOM versione 2.0 Questo lavoro è concesso in uso secondo i termini di una licenza Creative Commons (vedi ultima pagina) G.
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
DettagliIl linguaggio C. Prof. E. Occhiuto INFORMATICA 242AA a.a. 2010/11 pag. 1
Il linguaggio C I linguaggi di programmazione ad alto livello sono linguaggi formali ( sintassi e semantica formalmente definite) però sono compatti e comprensibili. Le tipologie di linguaggi sono: procedurali
DettagliTecnologie di Sviluppo per il Web
Tecnologie di Sviluppo per il Web JavaScript Introduzione versione 2.1 Questo lavoro è concesso in uso secondo i termini di una licenza Creative Commons (vedi ultima pagina) G. Mecca Università della Basilicata
DettagliFunzioni. Unità 1. Domenico Daniele Bloisi. Corso di Programmazione e Metodi Numerici Ingegneria Aerospaziale BAER
Corso di Programmazione e Metodi Numerici Ingegneria Aerospaziale BAER Domenico Daniele Bloisi Docenti Metodi Numerici prof. Vittoria Bruni vittoria.bruni@sbai.uniroma1.it Programmazione prof. Domenico
DettagliProgrammazione Orientata agli Oggetti. Emilio Di Giacomo e Walter Didimo
Programmazione Orientata agli Oggetti Emilio Di Giacomo e Walter Didimo Una metafora dal mondo reale la fabbrica di giocattoli progettisti Un semplice giocattolo Impara i suoni Dall idea al progetto Toy
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
DettagliFunzioni e. Alessandra Giordani Mercoledì 16 maggio 2012
Funzioni e passaggio parametri Alessandra Giordani agiordani@disi.unitn.it Mercoledì 16 maggio 2012 http://disi.unitn.it/~agiordani/ Cosa vedremo oggi Le funzioni Il passaggio dei parametri Le dichiarazioni
DettagliINTRODUZIONE ALLA PROGRAMMAZIONE AD ALTO LIVELLO IL LINGUAGGIO JAVA. Fondamenti di Informatica - D. Talia - UNICAL 1. Fondamenti di Informatica
Fondamenti di Informatica INTRODUZIONE ALLA PROGRAMMAZIONE AD ALTO LIVELLO IL LINGUAGGIO JAVA Fondamenti di Informatica - D. Talia - UNICAL 1 Fondamenti di Informatica - Programma Un programma è una formulazione
DettagliIntroduzione alla programmazione in linguaggio C
Introduzione alla programmazione in linguaggio C Il primo programma in C commento Header della libreria Funzione principale Ogni istruzione in C va terminata con un ; Corso di Informatica AA. 2007-2008
DettagliMappatura dei canali logici sui canali fisici
Mappatura dei canali logici sui canali fisici Renato Lo Cigno www.dit.unitn.it/locigno/didattica/wn/...copyright Quest opera è protetta dalla licenza Creative Commons NoDerivs-NonCommercial. Per vedere
DettagliVariabili. Unità 2. Domenico Daniele Bloisi. Corso di Fondamenti di Informatica Ingegneria delle Comunicazioni BCOR Ingegneria Elettronica BELR
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 alla rete Internet
Introduzione alla rete Internet Gruppo Reti TLC nome.cognome@polito.it http://www.telematica.polito.it/ INTRODUZIONE ALLE RETI TELEMATICHE - 1 Copyright Quest opera è protetta dalla licenza Creative Commons
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
Dettagli9 - Array. Programmazione e analisi di dati Modulo A: Programmazione in Java. Paolo Milazzo
9 - Array 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 Corso di Laurea
DettagliProgrammazione Orientata agli Oggetti in Linguaggio Java
Programmazione Orientata agli Oggetti in Linguaggio Java Sintassi e Semantica: C# Parte b versione 2.3 Questo lavoro è concesso in uso secondo i termini di una licenza Creative Commons (vedi ultima pagina)
DettagliEsercizi di Algoritmi e Strutture Dati
Esercizi di Algoritmi e Strutture Dati Moreno Marzolla http://www.moreno.marzolla.name/ Ultima Modifica: 7 ottobre 202 Copyright Portions of this work are Copyright 202, Moreno Marzolla. This work is licensed
DettagliSotto programmi - Funzioni in C
Sotto programmi - Funzioni in C R. Gallo Settembre 2009 Sommario Le funzioni C/C++ sono l'implementazione in codice C/C++ di uno strumento presente in tutti i linguaggi di programmazione: i sottoprogrammi
DettagliJavaScript Core Language. Prof. Francesco Accarino IIS Atiero Spinelli Sesto San Giovanni via leopardi 132
JavaScript Core Language Prof. Francesco Accarino IIS Atiero Spinelli Sesto San Giovanni via leopardi 132 Condizioni L utilizzo di operatori relazionali e logici consente di formulare delle condizioni
DettagliIntroduzione alla rete Internet
Introduzione alla rete Internet Gruppo Reti TLC nome.cognome@polito.it http://www.telematica.polito.it/ INTRODUZIONE ALLE RETI TELEMATICHE - 1 Copyright Quest opera è protetta dalla licenza Creative Commons
DettagliMetodi. Un metodo è una porzione di codice a cui si associa un nome. Un istruzione eseguita da un metodo può essere:
Metodi Un metodo è una porzione di codice a cui si associa un nome. Un istruzione eseguita da un metodo può essere: invocazione: esecuzione di un metodo assegnamento: cambia lo stato di un campo ripetizione:
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
DettagliInformatica 3. LEZIONE 2: Sintassi e semantica
Informatica 3 LEZIONE 2: Sintassi e semantica Modulo 1: Introduzione ai concetti di sintassi e semantica Modulo 2: Il concetto di binding Modulo 3: Variabili Modulo 4: Routine Convenzioni dei nomi Informatica
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
DettagliIntroduzione alla programmazione in C(++)
Testi Testi Consigliati: Introduzione alla programmazione in C(++) A. Kelley & I. Pohl C didattica e programmazione A. Kelley & I. Pohl C didattica e programmazione B.W. Kernighan & D. D. M. M. Ritchie
DettagliLinguaggio C - sezione dichiarativa: costanti e variabili
Dipartimento di Elettronica ed Informazione Politecnico di Milano Informatica e CAD (c.i.) - ICA Prof. Pierluigi Plebani A.A. 2008/2009 Linguaggio C - sezione dichiarativa: costanti e variabili La presente
DettagliInformatica 3. Informatica 3. LEZIONE 2: Sintassi e semantica. Lezione 2- Modulo 1. Le componenti di un linguaggio di programmazione
Informatica 3 Informatica 3 LEZIONE 2: Sintassi e semantica Lezione 2- Modulo 1 Modulo 1: Introduzione ai concetti di sintassi e semantica Modulo 2: Il concetto di binding Modulo 3: Variabili Modulo 4:
DettagliTecnologie di Sviluppo per il Web
Tecnologie di Sviluppo per il Web Programmazione Web: Architetture versione 2.2 Questo lavoro è concesso in uso secondo i termini di una licenza Creative Commons (vedi ultima pagina) G. Mecca mecca@unibas.it
DettagliCostanti e Variabili
Parte 3 Costanti e Variabili Identificatori Un identificatore è un nome che viene associato a diverse entità (costanti, tipi, variabili, funzioni, ecc.) e serve ad identificare la particolare entità Gli
Dettagli7 Procedure. Estensioni sintattiche Dec ::= void Ide (Ptype Ide) Block Com ::= Ide(Exp);
7 Procedure Nei linguaggi di programmazione è di fondamentale importanza riuscire a scrivere dei programmi che siano facili da leggere e da modificare. Lo scopo di funzioni e procedure è quello di permettere
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
DettagliWeb Content Management and E- Learning
Web Content Management and E- Learning Dott. Fabio Fioravanti fioravanti@sci.unich.it http://www.sci.unich.it/~fioravan Corso di Laurea in Economia e Management Facoltà di Scienze Manageriali UNICH - AA
DettagliDefinizione di classi. Walter Didimo
Definizione di classi Walter Didimo Definizione di classi Fino ad ora abbiamo imparato a: creare oggetti da classi già pronte usare gli oggetti creati, invocando metodi la creazione e l uso di oggetti
DettagliUniversità degli Studi di Cassino Corso di Fondamenti di Informatica Visibilità e tempo di vita delle variabili
Corso di Fondamenti di Informatica Visibilità e tempo di vita delle variabili Anno Accademico Francesco Tortorella Il concetto di visibilità Un programma C++ può assumere una struttura complessa grazie
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: 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
DettagliUniversità degli Studi di Cassino Corso di Fondamenti di Informatica Tipi strutturati: Array. Anno Accademico 2010/2011 Francesco Tortorella
Corso di Informatica Tipi strutturati: Array Anno Accademico 2010/2011 Francesco Tortorella Gli array In alcuni casi, l informazione che bisogna elaborare consiste di un aggregazione di valori, piuttosto
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
DettagliParametri by reference. Funzioni. Passaggio dei parametri. Parametri by reference. Soluzione. Problemi
Funzioni Introduzione Operatori & e * Passaggio by reference Passaggio di vettori Esercizio strcpy 2 Passaggio dei parametri Il linguaggio C prevede il passaggio di parametri by value Il chiamato non può
DettagliSottoprogrammi: astrazione procedurale
Sottoprogrammi: astrazione procedurale Incapsulamento di un segmento di programma presente = false; j = 0; while ( (j
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
DettagliProgrammazione in Python. Moreno Marzolla
Programmazione in Python Moreno Marzolla http://www.moreno.marzolla.name/ Copyright 2011, Moreno Marzolla (http://www.moreno.marzolla.name/teaching/labinf2011/) This work is licensed under the Creative
DettagliCorso di Linguaggi di Programmazione
Corso di Linguaggi di Programmazione Lezione 5 Alberto Ceselli alberto.ceselli@unimi.it Università degli Studi di Milano 12 Marzo 2013 Le funzioni sono oggetti di prima classe in Scheme In Scheme le funzioni
DettagliFondamenti di Informatica
Fondamenti di Informatica Capitolo 3 Funzioni Federico Ceriani federico.ceriani@nulltech.it ITS Meccatronico di Legnago A.S. 2016-2017 Contenuti Concetto di funzione Sintassi Tipo di ritorno Argomenti
DettagliFunzioni. (Passaggio dei parametri per riferimento) Passaggio dei parametri
Funzioni (Passaggio dei parametri per riferimento) Passaggio dei parametri Per passaggio dei parametri si intende l associazione fra parametri attuali e parametri formali che avviene al momento della chiamata
DettagliProgrammazione Procedurale in Linguaggio C++
Programmazione Procedurale in Linguaggio C++ Elementi di Base Parte 1 Introduzione G. Mecca M. Samela Università della Basilicata Elementi di Base >> Sommario Sommario Linguaggi di Programmazione Sintassi
DettagliCalcolatori Elettronici Lezione A4 Programmazione a Moduli
Calcolatori Elettronici Lezione A4 Programmazione a Moduli Ing. Gestionale e delle Telecomunicazioni A.A. 2007/08 Gabriele Cecchetti Sommario Programmazione a moduli Programmi con linguaggi misti Tempo
DettagliIl linguaggio C. Puntatori e dintorni
Il linguaggio C Puntatori e dintorni 1 Puntatori : idea di base In C è possibile conoscere e denotare l indirizzo della cella di memoria in cui è memorizzata una variabile (il puntatore) es : int a = 50;
DettagliFunzioni in Linguaggio C
Concetti Chiave Funzioni in Linguaggio C Dichiarazione Definizione Chiamata Passaggio dei parametri Valore di ritorno Tipo void Visibilità e mascheramento dei nomi Le Funzioni In C i sottoprogrammi sono
DettagliCORSO DI PROGRAMMAZIONE
ISTITUTO TECNICO INDUSTRIALE G. M. ANGIOY SASSARI CORSO DI PROGRAMMAZIONE INTRODUZIONE ALLE ISTRUZIONI ITERATIVE DISPENSA 03.01 03-01_Iterazioni_[ver_15] Questa dispensa è rilasciata sotto la licenza Creative
DettagliProgrammazione modulare
Programmiamo in.. Programmazione modulare Un programma complesso si suddivide in più sottoprogrammi o funzioni. Un programma suddiviso in piccoli pezzi, è più semplice da gestire da aggiornare da correggere
DettagliProgrammazione Orientata agli Oggetti in Linguaggio Java
Programmazione Orientata agli Oggetti in Linguaggio Java Test e Correzione: Conclusioni Parte a versione 2.3 Questo lavoro è concesso in uso secondo i termini di una licenza Creative Commons (vedi ultima
Dettagli