namespace ripasso4; class Program { const int dimensione = 25; static void Main(string[] args) { Console.Clear(); //dichiarazione e inizializzazione variabili int scelta; //menu do { Console.WriteLine("Scegliere un'opzione:"); Console.WriteLine("1. Pari a sinistra, dispari a destra"); Console.WriteLine("2. Array paralleli"); Console.WriteLine("3. Inversione"); Console.WriteLine("0. Esci"); Console.Write("Scelta: "); scelta = Convert.ToInt32(Console.ReadLine()); switch (scelta) { case 0: Console.Clear(); break; case 1: Console.Clear(); StampaArray(CreaVettoreOrdinato()); Pausa(); break; case 2: Console.Clear(); CreaVettoriParalleli(); Pausa(); break; case 3: Console.Clear(); //StampaArray(InvertiArray(CreaArrayCasuale())); Pausa(); break; default: Console.WriteLine("Errore: scelta non valida"); Pausa(); break; } } while (scelta != 0); } static void StampaArray(int[] p_insieme) { for (int j = 0; j < p_insieme.Length; j++) { Console.WriteLine("Elemento " + j + ": " + p_insieme[j]); } } static int[] CreaVettoreOrdinato() { int[] arrayCasuale = CreaArrayCasuale(), ritorno = new int[dimensione]; int indiceDecrescenteArray = dimensione - 1, indiceCrescenteArray = 0; for (int i = 0; i < dimensione; i++) { if (arrayCasuale[i] % 2 != 0) { ritorno[indiceDecrescenteArray] = arrayCasuale[i]; indiceDecrescenteArray--; } else { ritorno[indiceCrescenteArray] = arrayCasuale[i]; indiceCrescenteArray++; } } return ritorno; } static int[] CreaArrayCasuale() { //dichiarazione e inizializzazione variabili Random caso = new Random(); int[] ritorno = new int[dimensione]; for (int i = 0; i < dimensione; i++) { ritorno[i] = caso.Next(11);//per ogni posizione di ritorno assegno un valore a caso (metodo Random.Next) } return ritorno; } static void Pausa() { Console.WriteLine("Premere un tasto per continuare. . ."); Console.ReadKey(); Console.Clear(); } static int[] InvertiArray(int[] p_array) { int[] ritorno = new int[dimensione]; int j = dimensione - 1; for (int i = 0; i < dimensione; i++) { ritorno[i] = p_array[j];//il primo elemento di ritorno è l'ultimo di p_array e così via, i e j variano in opposto j--; } return ritorno; } }