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 p=0;
int d=0;
int k=0;
int n=dimensione-1;
int numeri=0;
int somma=0;
int media=0;
const int divisibile=7;
int[] insieme1=new int[dimensione];
for (int j=0; j<dimensione; j++){
insieme1[j]=0;
}
int[] pari=new int[dimensione];
for (int j=0; j<dimensione; j++){
pari[j]=0;
}
int[] dispari=new int[dimensione];
for (int j=0; j<dimensione; j++){
dispari[j]=0;
}
int[] insiemeDoppio=new int[dimensione*2];
for (int j=0; j<dimensione*2; j++){
insiemeDoppio[j]=0;
@ -38,10 +44,12 @@ class Program
for (int j=0; j<dimensione; j++){
insieme2[j]=0;
}
int[] insieme3=new int[dimensione];
for (int j=0; j<dimensione; j++){
insieme3[j]=0;
}
int[] intersezione=new int[dimensione*2];
for (int j=0; j<dimensione*2; j++){
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");
}
else{
for (int j=0; j<dimensione*2; j++){
insiemeDoppio[j]=0;
}
for (int j=0; j<dimensione*2; j++){
insiemeDoppio[j]=0;
}
@ -199,8 +211,17 @@ class Program
Pausa();
break;
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;
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
@ -210,8 +231,10 @@ class Program
i++;
}
while (input!="q" && i<dimensione);
Console.Clear();
//reset contatore
i=0;
Console.WriteLine("Array n.2");
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
@ -221,18 +244,70 @@ class Program
i++;
}
while (input!="q" && i<dimensione);
Console.Clear();
intersezione=Intersezione(insieme2, insieme3);
for (int j=0; j<dimensione; j++){
if (intersezione[j]!=0){
Console.WriteLine("Elemento " +j+ ": " +intersezione[j]);
}
}
Pausa();
break;
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.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;
case 9:
Console.Clear();
break;
case 10:
Console.Clear();
@ -256,24 +331,27 @@ class Program
}
}
static int[] Unione(int[] p_array1, int[] p_array2){
//Dichiarazione e inizializzazione delle variabili
int [] ritorno = new int[dimensione*2];
for (int i=0; i<dimensione; i++){
ritorno[i]=p_array1[i];
}
for (int i=0; i<dimensione; i++){
ritorno[i+dimensione]=p_array2[i];
}
return ritorno;
}
static int[] Intersezione(int[] p_array1, int[] p_array2){
//Dichiarazione e inizializzazione delle variabili
int [] ritorno = new int[dimensione];
for (int j=0; j<dimensione; j++){
ritorno[j]=0;
}
for (int i=0; i<dimensione; i++){
for (int j=0; j<dimensione; j++){
if (p_array1[i]==p_array2[j] && p_array1[i]!=0){
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){//se c'è un elemento uguale e non è zero
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.AssemblyConfigurationAttribute("Debug")]
[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.AssemblyTitleAttribute("array_funzioni")]
[assembly: System.Reflection.AssemblyVersionAttribute("1.0.0.0")]

View File

@ -1 +1 @@
530075f20b2060af1f4c466399f023ecc7eb337f39de6aa458dc76f3b462c5e0
6ecad56f5838988e9cad5c169cc1ea2ab00bf0e894c4aec7eaac85c717b78a82

Binary file not shown.

Binary file not shown.