Ho dovuto spostare le inizializzazioni degli array a inizio codice, e la voce 3 va rifatta sugli array delle altre voci

This commit is contained in:
La Programmatrice Verde 2024-12-04 09:51:37 +01:00
parent e303acca00
commit 8b7f1ccfb2
9 changed files with 71 additions and 36 deletions

View File

@ -5,13 +5,18 @@ class Program
static void Main(string[] args) static void Main(string[] args)
{ {
Console.Clear(); Console.Clear();
//dichiarazione e inizializzazione variabili
int scelta=4, numero=0, divisore=13; int scelta=4, numero=0, divisore=13;
uint dimensione=0; uint dimensione=20, zeri=0;
const int costante1 = 2; const int costante1 = 2;
const int costante2 = 3; const int costante2 = 3;
int[] array1= new int[dimensione];
int[] array2= new int[dimensione];
int[] array3= new int[dimensione*2];
bool nonsvolto1=true, nonsvolto2=true;
//menù
do{ do{
Console.WriteLine("Scegliere un'opzione:"); Console.WriteLine("Scegliere un'opzione:");
Console.WriteLine("1. Insieme di multipli di 13"); Console.WriteLine("1. Insieme di multipli di 13");
@ -22,17 +27,17 @@ class Program
scelta=Convert.ToInt32(Console.ReadLine()); scelta=Convert.ToInt32(Console.ReadLine());
switch(scelta){ switch(scelta){
case 0: case 0://uscita
break; break;
case 1: case 1:
Console.Clear(); Console.Clear();
Console.Write("Quanti numeri inserire? ");
dimensione=Convert.ToUInt32(Console.ReadLine());
int[] array1= new int[dimensione];
for(int i=0; i<dimensione; i++){ for(int i=0; i<dimensione; i++){
Console.Clear(); Console.Clear();
Console.WriteLine("Inserire il numero " +(i+1)+":");
Console.WriteLine("Inserire la cifra numero " +(i+1)+":");
numero=Convert.ToInt32(Console.ReadLine()); numero=Convert.ToInt32(Console.ReadLine());
if(numero%divisore==0){ if(numero%divisore==0){
array1[i]=numero; array1[i]=numero;
} }
@ -40,23 +45,24 @@ class Program
Console.Clear(); Console.Clear();
Console.WriteLine("I numeri inseriti sono: "); Console.WriteLine("I numeri inseriti sono: ");
for(int i=0; i<dimensione; i++){ for(int i=0; i<dimensione; i++){
if(array1[i]!=0){ if(array1[i]!=0){//condizione per mascherare i valori non assegnati dal programma
Console.WriteLine(array1[i]); Console.WriteLine(array1[i]);
} }
} }
Console.WriteLine("Premere invio per continuare"); Console.WriteLine("Premere invio per continuare");
Console.ReadLine(); Console.ReadLine();
Console.Clear(); Console.Clear();
break; break;
case 2: case 2:
Console.Clear(); Console.Clear();
Console.Write("Quanti numeri inserire? ");
dimensione=Convert.ToUInt32(Console.ReadLine());
int[] array2= new int[dimensione];
for(int i=0; i<dimensione; i++){ for(int i=0; i<dimensione; i++){
Console.Clear(); Console.Clear();
Console.WriteLine("Inserire il numero " +(i+1)+":");
Console.WriteLine("Inserire la cifra numero " +(i+1)+":");
numero=Convert.ToInt32(Console.ReadLine()); numero=Convert.ToInt32(Console.ReadLine());
if(numero%divisore==0){ if(numero%divisore==0){
array2[i]=numero; array2[i]=numero;
} }
@ -65,43 +71,72 @@ class Program
} }
} }
Console.Clear(); Console.Clear();
Console.WriteLine("I numeri inseriti sono: "); Console.WriteLine("I numeri inseriti sono: ");
for(int i=0; i<dimensione; i++){ for(int i=0; i<dimensione; i++){
Console.WriteLine(array2[i]); Console.WriteLine(array2[i]);
} }
Console.WriteLine("Premere invio per continuare"); Console.WriteLine("Premere invio per continuare");
Console.ReadLine(); Console.ReadLine();
Console.Clear(); Console.Clear();
break; break;
case 3: case 3:
Console.Clear(); Console.Clear();
Console.Write("Quanti numeri inserire nella prima lista? "); //condizione per verificare se è stata usata la voce 1
dimensione=Convert.ToUInt32(Console.ReadLine()); for(int i=0; i<array1.Length; i++){
int[] array3=new int[dimensione]; if(array1[i]==0){//verifico quante celle sono settate a zero
Console.WriteLine("Inserire i numeri della prima lista:"); zeri++;
for(int i=0; i<dimensione; i++){ }
array3[i]=Convert.ToInt32(Console.ReadLine());
} }
Console.Clear();
Console.Write("Quanti numeri inserire nella seconda lista? "); if(zeri==array1.Length){//se tutte le celle sono zero allora la voce 1 non è stata usata
dimensione=Convert.ToUInt32(Console.ReadLine()); nonsvolto1=true;
int[] array4=new int[dimensione];
Console.WriteLine("Inserire i numeri della seconda lista:");
for(int i=0; i<dimensione; i++){
array4[i]=Convert.ToInt32(Console.ReadLine());
} }
int[] array5=new int[array3.Length+array4.Length]; else{
for(int i=0; i<array3.Length; i++){ nonsvolto1=false;
array5[i]=array3[i]*costante1;
} }
for(int i=0; i<array4.Length; i++){
array5[i+array3.Length]=array4[i]*costante2; //condizione per verificare se è stata usata la voce 2
for(int i=0; i<array2.Length; i++){
if(array2[i]==0){//verifico quante celle sono settate a zero
zeri++;
}
} }
Console.Clear();
Console.WriteLine("I numeri inseriti sono: "); if(zeri==array2.Length){//se tutte le celle sono zero allora la voce 1 non è stata usata
for(int i=0; i<array5.Length; i++){ nonsvolto2=true;
Console.WriteLine(array5[i]);
} }
else{
nonsvolto2=false;
}
switch((nonsvolto1, nonsvolto2)) {
case (true,true):
Console.WriteLine("Eseguire le altre voci prima di selezionare questa");
break;
case (false,true):
Console.WriteLine("Eseguire anche la voce 2 prima di selezionare questa");
break;
case (true,false):
Console.WriteLine("Eseguire anche la voce 1 prima di selezionare questa");
break;
case (false,false):
for(int i=0; i<array1.Length; i++){
array3[i]=array1[i]*costante1;
}
for(int i=0; i<array2.Length; i++){
array3[i+array1.Length]=array2[i]*costante2;
}
Console.Clear();
Console.WriteLine("I numeri inseriti sono: ");
for(int i=0; i<array3.Length; i++){
Console.WriteLine(array3[i]);
}
break;
}
Console.WriteLine("Premere invio per continuare"); Console.WriteLine("Premere invio per continuare");
Console.ReadLine(); Console.ReadLine();
Console.Clear(); Console.Clear();

Binary file not shown.

Binary file not shown.

View File

@ -13,7 +13,7 @@ using System.Reflection;
[assembly: System.Reflection.AssemblyCompanyAttribute("array_2")] [assembly: System.Reflection.AssemblyCompanyAttribute("array_2")]
[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+89983002949f9576da7f755a42ebba8430258d82")] [assembly: System.Reflection.AssemblyInformationalVersionAttribute("1.0.0+e303acca00d47044d34622bcee693979f52fc47e")]
[assembly: System.Reflection.AssemblyProductAttribute("array_2")] [assembly: System.Reflection.AssemblyProductAttribute("array_2")]
[assembly: System.Reflection.AssemblyTitleAttribute("array_2")] [assembly: System.Reflection.AssemblyTitleAttribute("array_2")]
[assembly: System.Reflection.AssemblyVersionAttribute("1.0.0.0")] [assembly: System.Reflection.AssemblyVersionAttribute("1.0.0.0")]

View File

@ -1 +1 @@
090d847716a9a690dde9ff1bc249c462d39265c35a0e93cb06caeffe49a96b63 4370a22d55f257d59f51019469d1c1647c4fa3791d529d8e67938944679b0197

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.