miscellanea/Program.cs

140 lines
5.3 KiB
C#

namespace miscellanea;
class Program
{
static void Main(string[] args)
{
double celsius=0, fahrenheit=0;
int numero=0, quadrato=0, negativo=0, assoluto=0, divisore=0, dividendo=0, scelta=0;
bool pari=false;
string divisibile="";
Console.Clear();
do{
Console.WriteLine("Scegliere un'opzione:");
Console.WriteLine("1. Celsius -> Fahrenheit");
Console.WriteLine("2. Quadrato di un numero");
Console.WriteLine("3. Valore assoluto di un numero");
Console.WriteLine("4. Verifica se un numero è pari");
Console.WriteLine("5. Verifica se un numero è divisibile per un'altro");
Console.WriteLine("6. Esci");
Console.Write("Scelta: ");
scelta=Convert.ToInt32(Console.ReadLine());
switch (scelta){
case 1:
Console.Clear();
Console.Write("Inserire la temperatura: ");
celsius=Convert.ToDouble(Console.ReadLine());
fahrenheit=ConvertiCelsiusFahrenheit(celsius);
Console.WriteLine("La temperatura di " +celsius + "°C corrisponde a " +fahrenheit +"°F");
Console.WriteLine("Premere invio per continuare . . .");
Console.ReadLine();
Console.Clear();
break;
case 2:
Console.Clear();
Console.Write("Inserire un numero: ");
numero=Convert.ToInt32(Console.ReadLine());
quadrato=CalcolaQuadrato(numero);
Console.WriteLine("Il quadrato di " +numero + " è " +quadrato);
Console.WriteLine("Premere invio per continuare . . .");
Console.ReadLine();
Console.Clear();
break;
case 3:
Console.Clear();
Console.Write("Inserire un numero: ");
negativo=Convert.ToInt32(Console.ReadLine());
assoluto=CalcolaValoreAssoluto(negativo);
Console.WriteLine("Il valore assoluto di " +negativo + " è " +assoluto);
Console.WriteLine("Premere invio per continuare . . .");
Console.ReadLine();
Console.Clear();
break;
case 4:
Console.Clear();
Console.Write("Inserire un numero: ");
numero=Convert.ToInt32(Console.ReadLine());
pari=VerificaNumeroPari(numero);
if (pari==true){
Console.WriteLine("Il numero " +numero + " è pari");
}
else{
Console.WriteLine("Il numero " +numero + " è dispari");
}
Console.WriteLine("Premere invio per continuare . . .");
Console.ReadLine();
Console.Clear();
break;
case 5:
Console.Clear();
Console.Write("Inserire il dividendo: ");
dividendo=Convert.ToInt32(Console.ReadLine());
Console.Write("Inserire il divisore: ");
divisore=Convert.ToInt32(Console.ReadLine());
divisibile=VerificaDivisibile(dividendo,divisore);
Console.WriteLine(divisibile);
Console.WriteLine("Premere invio per continuare . . .");
Console.ReadLine();
Console.Clear();
break;
case 6:
Console.Clear();
break;
default:
Console.WriteLine("Scelta non valida");
Console.WriteLine("Premere invio per continuare . . .");
Console.ReadLine();
Console.Clear();
break;
}
}
while(scelta!=6);
}
static double ConvertiCelsiusFahrenheit(double p_celsius){
const double costante1=1.8d;
const int costante2=32;
return (p_celsius*costante1)+costante2;
}
static int CalcolaQuadrato(int p_numero){
return p_numero*p_numero;
}
static int CalcolaValoreAssoluto(int p_numero){
const int costante1=-1;
int ritorno;
if (p_numero<0){
ritorno=p_numero*costante1;
}
else{
ritorno=p_numero;
}
return ritorno;
}
static bool VerificaNumeroPari(int p_numero){
bool ritorno;
const int costante1=2;
if (p_numero%costante1==0){
ritorno=true;
}
else{
ritorno=false;
}
return ritorno;
}
static string VerificaDivisibile(int p_dividendo, int p_divisore){
string ritorno;
if (p_divisore==0){
ritorno="ERRORE: il divisore deve essere diverso da 0";
}
else if (p_dividendo%p_divisore==0){
ritorno="Il primo numero è multiplo del secondo";
}
else{
ritorno="Il primo numero non è divisibile per il secondo";
}
return ritorno;
}
}