Opzione 8

This commit is contained in:
La Programmatrice Verde 2024-12-11 14:01:47 +01:00
parent f2e9a0b37c
commit efe6401815
9 changed files with 85 additions and 7 deletions

View File

@ -14,22 +14,28 @@ class Program
int i=0; int i=0;
int p=0; int p=0;
int d=0; int d=0;
int k=0;
int n=dimensione-1;
int numeri=0; int numeri=0;
int somma=0; int somma=0;
int media=0; int media=0;
const int divisibile=7; const int divisibile=7;
int[] insieme1=new int[dimensione]; int[] insieme1=new int[dimensione];
for (int j=0; j<dimensione; j++){ for (int j=0; j<dimensione; j++){
insieme1[j]=0; insieme1[j]=0;
} }
int[] pari=new int[dimensione]; int[] pari=new int[dimensione];
for (int j=0; j<dimensione; j++){ for (int j=0; j<dimensione; j++){
pari[j]=0; pari[j]=0;
} }
int[] dispari=new int[dimensione]; int[] dispari=new int[dimensione];
for (int j=0; j<dimensione; j++){ for (int j=0; j<dimensione; j++){
dispari[j]=0; dispari[j]=0;
} }
int[] insiemeDoppio=new int[dimensione*2]; int[] insiemeDoppio=new int[dimensione*2];
for (int j=0; j<dimensione*2; j++){ for (int j=0; j<dimensione*2; j++){
insiemeDoppio[j]=0; insiemeDoppio[j]=0;
@ -38,10 +44,12 @@ class Program
for (int j=0; j<dimensione; j++){ for (int j=0; j<dimensione; j++){
insieme2[j]=0; insieme2[j]=0;
} }
int[] insieme3=new int[dimensione]; int[] insieme3=new int[dimensione];
for (int j=0; j<dimensione; j++){ for (int j=0; j<dimensione; j++){
insieme3[j]=0; insieme3[j]=0;
} }
int[] intersezione=new int[dimensione*2]; int[] intersezione=new int[dimensione*2];
for (int j=0; j<dimensione*2; j++){ for (int j=0; j<dimensione*2; j++){
intersezione[j]=0; intersezione[j]=0;
@ -190,6 +198,10 @@ class Program
Console.WriteLine("Errore: è necessario creare l'insieme dei numeri pari e dispari prima di stamparne l'unione"); Console.WriteLine("Errore: è necessario creare l'insieme dei numeri pari e dispari prima di stamparne l'unione");
} }
else{ else{
for (int j=0; j<dimensione*2; j++){
insiemeDoppio[j]=0;
}
for (int j=0; j<dimensione*2; j++){ for (int j=0; j<dimensione*2; j++){
insiemeDoppio[j]=0; insiemeDoppio[j]=0;
} }
@ -199,8 +211,17 @@ class Program
Pausa(); Pausa();
break; break;
case 7: case 7:
Console.Clear(); //reset variabili
for (int j=0; j<dimensione; j++){
insieme2[j]=0;
}
for (int j=0; j<dimensione; j++){
insieme3[j]=0;
}
i=0; i=0;
Console.Clear();
Console.WriteLine("Insieme 1");
do{ do{
Console.Write("Inserire un numero, massimo " +dimensione+ " numeri ([q] per uscire): "); Console.Write("Inserire un numero, massimo " +dimensione+ " numeri ([q] per uscire): ");
input=Console.ReadLine(); //non posso ancora fare il catch dell'eccezione se viene inserito un qualcosa che non sia un numero o q input=Console.ReadLine(); //non posso ancora fare il catch dell'eccezione se viene inserito un qualcosa che non sia un numero o q
@ -210,8 +231,10 @@ class Program
i++; i++;
} }
while (input!="q" && i<dimensione); while (input!="q" && i<dimensione);
Console.Clear();
//reset contatore
i=0; i=0;
Console.WriteLine("Array n.2"); Console.WriteLine("Insieme 2");
do{ do{
Console.Write("Inserire un numero, massimo " +dimensione+ " numeri ([q] per uscire): "); Console.Write("Inserire un numero, massimo " +dimensione+ " numeri ([q] per uscire): ");
input=Console.ReadLine(); //non posso ancora fare il catch dell'eccezione se viene inserito un qualcosa che non sia un numero o q input=Console.ReadLine(); //non posso ancora fare il catch dell'eccezione se viene inserito un qualcosa che non sia un numero o q
@ -221,18 +244,70 @@ class Program
i++; i++;
} }
while (input!="q" && i<dimensione); while (input!="q" && i<dimensione);
Console.Clear();
intersezione=Intersezione(insieme2, insieme3); intersezione=Intersezione(insieme2, insieme3);
for (int j=0; j<dimensione; j++){ for (int j=0; j<dimensione; j++){
if (intersezione[j]!=0){ if (intersezione[j]!=0){
Console.WriteLine("Elemento " +j+ ": " +intersezione[j]); Console.WriteLine("Elemento " +j+ ": " +intersezione[j]);
} }
} }
Pausa();
break; break;
case 8: case 8:
//reset variabili
for (int j=0; j<dimensione; j++){
insieme2[j]=0;
}
for (int j=0; j<dimensione; j++){
insieme3[j]=0;
}
for (int j=0; j<dimensione*2; j++){
insiemeDoppio[j]=0;
}
i=0;
Console.Clear(); Console.Clear();
Console.WriteLine("Insieme 1");
do{
Console.Write("Inserire un numero, massimo " +dimensione+ " numeri ([q] per uscire): ");
input=Console.ReadLine(); //non posso ancora fare il catch dell'eccezione se viene inserito un qualcosa che non sia un numero o q
if (input!="q"){
insieme2[i]=Convert.ToInt32(input);
}
i++;
}
while (input!="q" && i<dimensione);
Console.Clear();
//reset contatore
i=0;
Console.WriteLine("Insieme 2");
do{
Console.Write("Inserire un numero, massimo " +dimensione+ " numeri ([q] per uscire): ");
input=Console.ReadLine(); //non posso ancora fare il catch dell'eccezione se viene inserito un qualcosa che non sia un numero o q
if (input!="q"){
insieme3[i]=Convert.ToInt32(input);
}
i++;
}
while (input!="q" && i<dimensione);
for (int j=0; j<dimensione*2; j++){
if(j%2!=0){
insiemeDoppio[j]=insieme3[n];
n--;
}
else{
insiemeDoppio[j]=insieme2[k];
k++;
}
}
Console.Clear();
StampaArray(insiemeDoppio);
Pausa();
break; break;
case 9: case 9:
Console.Clear();
break; break;
case 10: case 10:
Console.Clear(); Console.Clear();
@ -256,24 +331,27 @@ class Program
} }
} }
static int[] Unione(int[] p_array1, int[] p_array2){ static int[] Unione(int[] p_array1, int[] p_array2){
//Dichiarazione e inizializzazione delle variabili
int [] ritorno = new int[dimensione*2]; int [] ritorno = new int[dimensione*2];
for (int i=0; i<dimensione; i++){ for (int i=0; i<dimensione; i++){
ritorno[i]=p_array1[i]; ritorno[i]=p_array1[i];
} }
for (int i=0; i<dimensione; i++){ for (int i=0; i<dimensione; i++){
ritorno[i+dimensione]=p_array2[i]; ritorno[i+dimensione]=p_array2[i];
} }
return ritorno; return ritorno;
} }
static int[] Intersezione(int[] p_array1, int[] p_array2){ static int[] Intersezione(int[] p_array1, int[] p_array2){
//Dichiarazione e inizializzazione delle variabili
int [] ritorno = new int[dimensione]; int [] ritorno = new int[dimensione];
for (int j=0; j<dimensione; j++){ for (int j=0; j<dimensione; j++){
ritorno[j]=0; ritorno[j]=0;
} }
for (int i=0; i<dimensione; i++){ for (int i=0; i<dimensione; i++){
for (int j=0; j<dimensione; j++){ for (int j=0; j<dimensione; j++){ //cerca l'elemento alla cella p_array1[i] in ogni cella di p_array2
if (p_array1[i]==p_array2[j] && p_array1[i]!=0){ if (p_array1[i]==p_array2[j] && p_array1[i]!=0){//se c'è un elemento uguale e non è zero
ritorno[j]=p_array1[i]; ritorno[j]=p_array1[i];
} }
} }

Binary file not shown.

Binary file not shown.

View File

@ -13,7 +13,7 @@ using System.Reflection;
[assembly: System.Reflection.AssemblyCompanyAttribute("array_funzioni")] [assembly: System.Reflection.AssemblyCompanyAttribute("array_funzioni")]
[assembly: System.Reflection.AssemblyConfigurationAttribute("Debug")] [assembly: System.Reflection.AssemblyConfigurationAttribute("Debug")]
[assembly: System.Reflection.AssemblyFileVersionAttribute("1.0.0.0")] [assembly: System.Reflection.AssemblyFileVersionAttribute("1.0.0.0")]
[assembly: System.Reflection.AssemblyInformationalVersionAttribute("1.0.0+800cbfa655049f2adc2222a35ca57da354732bc1")] [assembly: System.Reflection.AssemblyInformationalVersionAttribute("1.0.0+f2e9a0b37c9712006e9a18365fabbcbd05c5c434")]
[assembly: System.Reflection.AssemblyProductAttribute("array_funzioni")] [assembly: System.Reflection.AssemblyProductAttribute("array_funzioni")]
[assembly: System.Reflection.AssemblyTitleAttribute("array_funzioni")] [assembly: System.Reflection.AssemblyTitleAttribute("array_funzioni")]
[assembly: System.Reflection.AssemblyVersionAttribute("1.0.0.0")] [assembly: System.Reflection.AssemblyVersionAttribute("1.0.0.0")]

View File

@ -1 +1 @@
530075f20b2060af1f4c466399f023ecc7eb337f39de6aa458dc76f3b462c5e0 6ecad56f5838988e9cad5c169cc1ea2ab00bf0e894c4aec7eaac85c717b78a82

Binary file not shown.

Binary file not shown.