Programmazione funzionale - Tipi di funzione

Le funzioni sono di due tipi:

  • Funzioni predefinite
  • Funzioni definite dall'utente

In questo capitolo, discuteremo in dettaglio delle funzioni.

Funzioni predefinite

Queste sono le funzioni integrate in Language per eseguire operazioni e sono memorizzate nella Standard Function Library.

For Example - 'Strcat' in C ++ e 'concat' in Haskell sono usati per aggiungere le due stringhe, 'strlen' in C ++ e 'len' in Python sono usati per calcolare la lunghezza della stringa.

Programma per stampare la lunghezza della stringa in C ++

Il seguente programma mostra come stampare la lunghezza di una stringa usando C ++ -

#include <iostream> 
#include <string.h> 
#include <stdio.h> 
using namespace std;  

int main() {     
   char str[20] = "Hello World"; 
   int len; 
   len = strlen(str); 
   cout<<"String length is: "<<len; 
   return 0; 
}

Produrrà il seguente output:

String length is: 11

Programma per stampare la lunghezza della stringa in Python

Il seguente programma mostra come stampare la lunghezza di una stringa usando Python, che è un linguaggio di programmazione funzionale -

str = "Hello World"; 
print("String length is: ", len(str))

Produrrà il seguente output:

('String length is: ', 11)

Funzioni definite dall'utente

Le funzioni definite dall'utente sono definite dall'utente per eseguire attività specifiche. Ci sono quattro diversi modelli per definire una funzione:

  • Funzioni senza argomenti e senza valore di ritorno
  • Funziona senza argomenti ma con un valore di ritorno
  • Funziona con argomento ma senza valore di ritorno
  • Funziona con argomento e un valore di ritorno

Funzioni senza argomenti e senza valore di ritorno

Il seguente programma mostra come definire una funzione senza argomenti e senza valore di ritorno in C++ -

#include <iostream> 
using namespace std; 

void function1() { 
   cout <<"Hello World"; 
}  
int main() { 
   function1(); 
   return 0; 
}

Produrrà il seguente output:

Hello World

Il seguente programma mostra come definire una funzione simile (nessun argomento e nessun valore di ritorno) in Python -

def function1():    
   print ("Hello World") 
    
function1()

Produrrà il seguente output:

Hello World

Funziona senza argomenti ma con un valore di ritorno

Il seguente programma mostra come definire una funzione senza argomenti ma un valore di ritorno in C++ -

#include <iostream> 
using namespace std; 
string function1() { 
   return("Hello World"); 
}  

int main() { 
   cout<<function1(); 
   return 0; 
}

Produrrà il seguente output:

Hello World

Il seguente programma mostra come definire una funzione simile (senza argomenti ma un valore di ritorno) in Python -

def function1(): 
   return "Hello World" 
res = function1() 
print(res)

Produrrà il seguente output:

Hello World

Funziona con argomento ma senza valore di ritorno

Il seguente programma mostra come definire una funzione con argomento ma senza valore di ritorno in C++ -

#include <iostream> 
using namespace std; 
void function1(int x, int y) {    
   int c; 
   c = x+y;  
   cout<<"Sum is: "<<c; 
}  

int main() { 
   function1(4,5); 
   return 0; 
}

Produrrà il seguente output:

Sum is: 9

Il seguente programma mostra come definire una funzione simile in Python -

def function1(x,y): 
   c = x + y 
   print("Sum is:",c) 
function1(4,5)

Produrrà il seguente output:

('Sum is:', 9)

Funziona con argomento e un valore di ritorno

Il seguente programma mostra come definire una funzione in C ++ senza argomenti ma un valore di ritorno -

#include <iostream> 
using namespace std; 
int function1(int x, int y) {    
   int c; 
   c = x + y;  
   return c;    
} 

int main() {  
   int res; 
   res = function1(4,5); 
   cout<<"Sum is: "<<res; 
   return 0; 
}

Produrrà il seguente output:

Sum is: 9

Il seguente programma mostra come definire una funzione simile (con argomento e un valore di ritorno) in Python -

def function1(x,y): 
   c = x + y 
   return c  

res = function1(4,5) 
print("Sum is ",res)

Produrrà il seguente output:

('Sum is ', 9)