Ecco degli esercizi semplici con soluzione per praticare la creazione ed utilizzo delle funzioni in C#.
Esercizio 1
Scrivi un metodo chiamato "CalcolaAreaCerchio" che accetta il raggio del cerchio come parametro e restituisce l'area corrispondente.
public static double CalcolaAreaCerchio(double raggio){ double area = Math.PI * raggio * raggio; return area;}
// Esempio di utilizzo del metodo:double raggio = 5.0;double areaCerchio = CalcolaAreaCerchio(raggio);Console.WriteLine("L'area del cerchio con raggio " + raggio + " è: " + areaCerchio);
Esercizio 2
Scrivi un metodo chiamato "ConvertiCelsiusFahrenheit" che accetta una temperatura in gradi Celsius e restituisce il corrispondente valore in gradi Fahrenheit.
public static double ConvertiCelsiusFahrenheit(double temperaturaCelsius){ double temperaturaFahrenheit = (temperaturaCelsius * 9 / 5) + 32; return temperaturaFahrenheit;}
// Esempio di utilizzo del metodo:double temperaturaCelsius = 25.0;double temperaturaFahrenheit = ConvertiCelsiusFahrenheit(temperaturaCelsius);Console.WriteLine("La temperatura in gradi Fahrenheit è: " + temperaturaFahrenheit);
Esercizio 3
Scrivi un metodo chiamato "VerificaNumeroPrimo" che accetta un numero intero e restituisce true se il numero è primo, altrimenti restituisce false.
public static bool VerificaNumeroPrimo(int numero){ if (numero <= 1) { return false; }
for (int i = 2; i <= Math.Sqrt(numero); i++) { if (numero % i == 0) { return false; } }
return true;}
// Esempio di utilizzo del metodo:int numero = 17;bool isPrimo = VerificaNumeroPrimo(numero);Console.WriteLine("Il numero " + numero + " è primo? " + isPrimo);
Esercizio 4
Scrivi un metodo chiamato "ConcatenaStringhe" che accetta due stringhe e restituisce una nuova stringa ottenuta concatenando le due stringhe.
public static string ConcatenaStringhe(string primaStringa, string secondaStringa){ string risultato = primaStringa + secondaStringa; return risultato;}
// Esempio di utilizzo del metodo:string stringa1 = "Ciao, ";string stringa2 = "come stai?";string risultatoConcatenazione = ConcatenaStringhe(stringa1, stringa2);Console.WriteLine("Risultato della concatenazione: " + risultatoConcatenazione);
Esercizio 5
Scrivi un metodo chiamato "CalcolaFattoriale" che accetta un numero intero e restituisce il suo fattoriale.
public static int CalcolaFattoriale(int numero){ if (numero == 0) { return 1; }
int fattoriale = 1; for (int i = 1; i <= numero; i++) { fattoriale *= i; }
return fattoriale;}
// Esempio di utilizzo del metodo:int numero = 5;int fattoriale = CalcolaFattoriale(numero);Console.WriteLine("Il fattoriale di " + numero + " è: " + fattoriale);
Esercizio 6
Scrivi un metodo chiamato "SommaNumeri" che accetta una lista di numeri interi e restituisce la loro somma.
public static int SommaNumeri(List<int> numeri){ int somma = 0; foreach (int numero in numeri) { somma += numero; }
return somma;}
// Esempio di utilizzo del metodo:List<int> numeri = new List<int> { 1, 2, 3, 4, 5 };int risultatoSomma = SommaNumeri(numeri);Console.WriteLine("La somma dei numeri è: " + risultatoSomma);
Esercizio 7
Scrivi un metodo chiamato "CalcolaValoreAssoluto" che accetta un numero intero e restituisce il suo valore assoluto.
public static int CalcolaValoreAssoluto(int numero){ int valoreAssoluto = Math.Abs(numero); return valoreAssoluto;}
// Esempio di utilizzo del metodo:int numero = -5;int valoreAssoluto = CalcolaValoreAssoluto(numero);Console.WriteLine("Il valore assoluto di " + numero + " è: " + valoreAssoluto);
Esercizio 8
Scrivi un metodo chiamato "GeneraNumeroCasuale" che restituisce un numero casuale compreso tra un valore minimo e un valore massimo specificati come parametri.
public static int GeneraNumeroCasuale(int minimo, int massimo){ Random random = new Random(); int numeroCasuale = random.Next(minimo, massimo + 1); return numeroCasuale;}
// Esempio di utilizzo del metodo:int numeroCasuale = GeneraNumeroCasuale(1, 100);Console.WriteLine("Numero casuale generato: " + numeroCasuale);
Esercizio 9
Scrivi un metodo chiamato "VerificaPalindromo" che accetta una stringa e restituisce true se la stringa è un palindromo (stessa lettura in avanti e indietro), altrimenti restituisce false.
public static bool VerificaPalindromo(string parola){ string parolaInvertita = ""; for (int i = parola.Length - 1; i >= 0; i--) { parolaInvertita += parola[i]; }
return parola.Equals(parolaInvertita, StringComparison.OrdinalIgnoreCase);}
// Esempio di utilizzo del metodo:string parola = "anna";bool isPalindromo = VerificaPalindromo(parola);Console.WriteLine("La parola " + parola + " è un palindromo? " + isPalindromo);
Esercizio 10
Scrivi un metodo chiamato "CalcolaQuadrato" che accetta un numero intero e restituisce il suo quadrato.
public static int CalcolaQuadrato(int numero){ int quadrato = numero * numero; return quadrato;}
// Esempio di utilizzo del metodo:int numero = 7;int quadrato = CalcolaQuadrato(numero);Console.WriteLine("Il quadrato di " + numero + " è: " + quadrato);