Scaricare la presentazione
La presentazione è in caricamento. Aspetta per favore
PubblicatoCosima Castellani Modificato 9 anni fa
1
Fondamenti di Informatica 2 Ingegneria Informatica Docente: Giovanni Macchia a.a. 2002-2003
2
Funzioni argomenti di default Nei prototipi è possibile definire degli argomenti di default, fornendo un valore di default che viene automaticamente utilizzato se si omette il relativo argomento nella invocazione della funzione. Es; int f (int =1, int=1, int=2) ; int main( ) {... f( ); // utilizza i valori di default f(i); // utilizza il secondo e terzo valore di default f(i,j); // utilizza il terzo valore di default.. }
3
Funzioni overloading delle funzioni E’ possibile definire due o più funzioni con lo stesso nome a patto che le dichiarazioni dei parametri siano diverse. In questa situazione si dice che le funzioni che hanno lo stesso nome subiscono l’overload e questa caratteristica prende il nome di overload di funzioni.
4
Funzioni overloading di funzioni Es: const double PI = 3.14159; int area (int x, int y) = {return x*y ;}; // area di un rettangolo di // lati x e y double area (double x) = {return x*x*PI ;}; // area di un cerchio // di raggio x int main( ) { double bc, ic=3.75; int br, ir=20,yr=30 ; br = area(ir, yr); bc = area(ic); return 0; }
5
Funzioni funzioni ricorsive Una funzione ricorsiva è una funzione che richiama se stessa direttamente o indirettamente. Una funzione ricorsiva implementa una definizione ricorsiva. La definizione ricorsiva è usata per definire insiemi infiniti e consiste di due parti: nella prima parte, chiamata caso base, sono definiti gli elementi che servono per costruire gli altri elementi dell’insieme nella seconda parte, chiamata passo ricorsivo, si definiscono le regole per definire nuovi elementi dell’insieme a partire dal caso base
6
Funzioni funzioni ricorsive Il fattoriale ! ha la seguente definizione ricorsiva 1 se n=0 o 1(caso base) n! = n * (n-1)!se n>1 (passo ricorsivo) L’implementazione avviene tramite la funzione unsigned long int fact(unsigned long int n ) { if (n<=1) return 1; else return n * fact(n-1) ; }
Presentazioni simili
© 2024 SlidePlayer.it Inc.
All rights reserved.