namespace funzioni_1; class Program { static void Main(string[] args) { //dichiarazione e inizializzazione variabile int scelta=9; //Menù Console.WriteLine("Scegliere un'operazione:"); Console.WriteLine("1. Calcolo area e perimetro di un quadrato"); Console.WriteLine("2. Calcolo sconto di un prezzo"); Console.WriteLine("3. Calcolo media"); Console.WriteLine("4. Calcolo età"); Console.WriteLine("5. Calcolo rette perpendicolari"); Console.WriteLine("0. Esci"); Console.Write("Scelta: "); scelta=Convert.ToInt32(Console.ReadLine()); do{ switch(scelta){ case 0: break; case 1: Areaperimetro(); break; case 2: //dichiarazione e inizializzazione variabili double prezzo, sconto; //ricevo input Console.Write("Inserire il prezzo: "); prezzo=Convert.ToDouble(Console.ReadLine()); Console.Write("Inserire la percentuale di sconto (senza %): "); sconto=Convert.ToDouble(Console.ReadLine()); //output con chiamata a funzione per il calcolo integrata Console.WriteLine("Il prezzo scontato è " +Scontatore(prezzo, sconto)); break; case 3: //dichiarazione e inizializzazione variabili double somma, numeroVero; string numero; int i; somma=0; i=0; //ricevo input di continuo do{ //ricevo input Console.Write("Inserire un numero ([q] per terminare): "); numero=Console.ReadLine(); //verifico se non si vuole terminare if(numero!="q"){ numeroVero=Convert.ToDouble(numero);//non so come fare una condizione che verifichi se Convert.ToDouble abbia restituito un'eccezione aka è stata inserito un qualcosa che non sia un numero o q somma=somma+numeroVero; i++; } } while(numero!="q"); //output Console.WriteLine("La media è " +Media(somma, i)); break; case 4: int anno, nascita; Console.Write("Che anno è? "); anno=Convert.ToInt32(Console.ReadLine()); Console.Write("Quando sei nato? "); nascita=Convert.ToInt32(Console.ReadLine()); Console.WriteLine("Hai " +Età(anno, nascita) +" anni"); break; case 5: double coefficiente, intercetta; Console.Write("Inserire il coefficiente angolare: "); coefficiente=Convert.ToDouble(Console.ReadLine()); Console.Write("Inserire l'intercetta: "); intercetta=Convert.ToDouble(Console.ReadLine()); if(IsPerpendicolare(coefficiente, intercetta)==true){ Console.WriteLine("Le due rette sono perpendicolari"); } else{ Console.WriteLine("Le due rette non sono perpendicolari"); } break; default: Console.WriteLine("Scelta non valida"); break; } } while(scelta!=0 && scelta!=1 && scelta!=2 && scelta!=3 && scelta!=4 && scelta!=5); } static void Areaperimetro(){ //dichiarazione e inizializzazione variabili double lato, area, perimetro; //ricevo dati Console.Write("Inserire il lato: "); lato=Convert.ToDouble(Console.ReadLine()); //calcoli perimetro=lato*4; area=lato*lato; //output Console.WriteLine("Il perimtetro è " +perimetro +" mentre l'area è " +area); } static double Scontatore(double p_prezzo, double p_sconto){ //Scontatore è da intendersi come "colui che applica lo sconto" (lo so che non è italiano ma mi stava simpatico come nome) return p_prezzo-(p_prezzo*p_sconto/100); } static double Media(double p_somma, int p_i){ return p_somma/p_i; } static int Età(int p_anno, int p_nascita){ return p_anno-p_nascita; } static bool IsPerpendicolare(double p_coefficiente, double p_intercetta){ if (p_coefficiente*p_intercetta==-1){ return true; } else{ return false; } } }