Opzione 4 + delocalizzazione opzioni in funzioni
This commit is contained in:
parent
f822be4eff
commit
caf1fa1fa3
123
Program.cs
123
Program.cs
@ -4,8 +4,7 @@ class Program {
|
|||||||
static void Main(string[] args) {
|
static void Main(string[] args) {
|
||||||
Console.Clear();
|
Console.Clear();
|
||||||
|
|
||||||
double altezza;
|
double altezza, segmentoConDiversoTipoDiLunghezzaApparteneteAllaFigura;
|
||||||
double segmentoConDiversoTipoDiLunghezzaApparteneteAllaFigura;
|
|
||||||
int scelta;
|
int scelta;
|
||||||
Rettangolo forma1 = null, forma2 = null;
|
Rettangolo forma1 = null, forma2 = null;
|
||||||
|
|
||||||
@ -24,35 +23,100 @@ class Program {
|
|||||||
break;
|
break;
|
||||||
case 1:
|
case 1:
|
||||||
Console.Clear();
|
Console.Clear();
|
||||||
Console.Write("Inserire la base del primo rettangolo: ");
|
do {
|
||||||
segmentoConDiversoTipoDiLunghezzaApparteneteAllaFigura = Convert.ToDouble(Console.ReadLine());
|
Console.Write("Inserire la base del primo rettangolo: ");
|
||||||
Console.Write("Inserire l'altezza del primo rettangolo: ");
|
segmentoConDiversoTipoDiLunghezzaApparteneteAllaFigura = Convert.ToDouble(Console.ReadLine());
|
||||||
altezza = Convert.ToDouble(Console.ReadLine());
|
if (segmentoConDiversoTipoDiLunghezzaApparteneteAllaFigura <= 0) {
|
||||||
|
Console.WriteLine("Errore: la base non può essere minore o uguale a zero");
|
||||||
|
}
|
||||||
|
}
|
||||||
|
while (segmentoConDiversoTipoDiLunghezzaApparteneteAllaFigura <= 0);
|
||||||
|
|
||||||
|
do {
|
||||||
|
Console.Write("Inserire l'altezza del primo rettangolo: ");
|
||||||
|
altezza = Convert.ToDouble(Console.ReadLine());
|
||||||
|
if (altezza <= 0) {
|
||||||
|
Console.WriteLine("Errore: la altezza non può essere minore o uguale a zero");
|
||||||
|
}
|
||||||
|
}
|
||||||
|
while (altezza <= 0);
|
||||||
|
|
||||||
forma1 = new Rettangolo(segmentoConDiversoTipoDiLunghezzaApparteneteAllaFigura, altezza);
|
forma1 = new Rettangolo(segmentoConDiversoTipoDiLunghezzaApparteneteAllaFigura, altezza);
|
||||||
|
|
||||||
Console.Write("Inserire la base del primo rettangolo: ");
|
do {
|
||||||
segmentoConDiversoTipoDiLunghezzaApparteneteAllaFigura = Convert.ToDouble(Console.ReadLine());
|
Console.Write("Inserire la base del secondo rettangolo: ");
|
||||||
Console.Write("Inserire l'altezza del primo rettangolo: ");
|
segmentoConDiversoTipoDiLunghezzaApparteneteAllaFigura = Convert.ToDouble(Console.ReadLine());
|
||||||
altezza = Convert.ToDouble(Console.ReadLine());
|
if (segmentoConDiversoTipoDiLunghezzaApparteneteAllaFigura <= 0) {
|
||||||
|
Console.WriteLine("Errore: la base non può essere minore o uguale a zero");
|
||||||
|
}
|
||||||
|
}
|
||||||
|
while (segmentoConDiversoTipoDiLunghezzaApparteneteAllaFigura <= 0);
|
||||||
|
|
||||||
|
do {
|
||||||
|
Console.Write("Inserire l'altezza del secondo rettangolo: ");
|
||||||
|
altezza = Convert.ToDouble(Console.ReadLine());
|
||||||
|
if (altezza <= 0) {
|
||||||
|
Console.WriteLine("Errore: la altezza non può essere minore o uguale a zero");
|
||||||
|
}
|
||||||
|
}
|
||||||
|
while (altezza <= 0);
|
||||||
|
|
||||||
forma2 = new Rettangolo(segmentoConDiversoTipoDiLunghezzaApparteneteAllaFigura, altezza);
|
forma2 = new Rettangolo(segmentoConDiversoTipoDiLunghezzaApparteneteAllaFigura, altezza);
|
||||||
|
|
||||||
Pausa();
|
Pausa();
|
||||||
break;
|
break;
|
||||||
case 2:
|
case 2:
|
||||||
Console.Clear();
|
Console.Clear();
|
||||||
Console.WriteLine("Rettangolo 1:");
|
if (forma1 == null || forma2 == null) {
|
||||||
forma1.StampaRettangolo();
|
Console.WriteLine("Errore: è necessario creare i 2 rettangoli prima di mostrarli");
|
||||||
Console.WriteLine("\nRettangolo 2");
|
}
|
||||||
forma2.StampaRettangolo();
|
else {
|
||||||
|
StampaRettangoli(forma1, forma2);
|
||||||
|
}
|
||||||
Pausa();
|
Pausa();
|
||||||
break;
|
break;
|
||||||
case 3:
|
case 3:
|
||||||
Console.WriteLine("Rettangolo 1:");
|
Console.Clear();
|
||||||
Console.WriteLine($"Area: {forma1.CalcolaArea()}");
|
if (forma1 == null || forma2 == null) {
|
||||||
Console.WriteLine($"Perimetro: {forma1.CalcolaPerimetro()}");
|
Console.WriteLine("Errore: è necessario creare i 2 rettangoli prima di mostrarne area e perimetro");
|
||||||
Console.WriteLine("\nRettangolo 2");
|
}
|
||||||
|
else {
|
||||||
|
StampaAreaEPerimetro(forma1, forma2);
|
||||||
|
}
|
||||||
|
Pausa();
|
||||||
|
break;
|
||||||
|
case 4:
|
||||||
|
Console.Clear();
|
||||||
|
if (forma1 == null || forma2 == null) {
|
||||||
|
Console.WriteLine("Errore: è necessario creare i 2 rettangoli prima di modificarli");
|
||||||
|
}
|
||||||
|
else {
|
||||||
|
do {
|
||||||
|
Console.Write("Inserire l'altezza del primo rettangolo: ");
|
||||||
|
altezza = Convert.ToDouble(Console.ReadLine());
|
||||||
|
if (altezza <= 0) {
|
||||||
|
Console.WriteLine("Errore: la altezza non può essere minore o uguale a zero");
|
||||||
|
}
|
||||||
|
}
|
||||||
|
while (altezza <= 0);
|
||||||
|
|
||||||
Console.WriteLine($"Area: {forma2.CalcolaArea()}");
|
forma1.SetAltezza(altezza);
|
||||||
Console.WriteLine($"Perimetro: {forma2.CalcolaPerimetro()}");
|
|
||||||
|
do {
|
||||||
|
Console.Write("Inserire la base del secondo rettangolo: ");
|
||||||
|
segmentoConDiversoTipoDiLunghezzaApparteneteAllaFigura = Convert.ToDouble(Console.ReadLine());
|
||||||
|
if (segmentoConDiversoTipoDiLunghezzaApparteneteAllaFigura <= 0) {
|
||||||
|
Console.WriteLine("Errore: la base non può essere minore o uguale a zero");
|
||||||
|
}
|
||||||
|
}
|
||||||
|
while (segmentoConDiversoTipoDiLunghezzaApparteneteAllaFigura <= 0);
|
||||||
|
|
||||||
|
forma2.setSegmentoConDiversoTipoDiLunghezzaApparteneteAllaFigura(segmentoConDiversoTipoDiLunghezzaApparteneteAllaFigura);
|
||||||
|
|
||||||
|
StampaRettangoli(forma1, forma2);
|
||||||
|
|
||||||
|
StampaAreaEPerimetro(forma1, forma2);
|
||||||
|
}
|
||||||
Pausa();
|
Pausa();
|
||||||
break;
|
break;
|
||||||
}
|
}
|
||||||
@ -65,4 +129,21 @@ class Program {
|
|||||||
Console.ReadKey();
|
Console.ReadKey();
|
||||||
Console.Clear();
|
Console.Clear();
|
||||||
}
|
}
|
||||||
}
|
|
||||||
|
static void StampaRettangoli(Rettangolo p_forma1, Rettangolo p_forma2) {
|
||||||
|
Console.WriteLine("Rettangolo 1:");
|
||||||
|
p_forma1.StampaRettangolo();
|
||||||
|
Console.WriteLine("\nRettangolo 2");
|
||||||
|
p_forma2.StampaRettangolo();
|
||||||
|
}
|
||||||
|
|
||||||
|
static void StampaAreaEPerimetro(Rettangolo p_forma1, Rettangolo p_forma2) {
|
||||||
|
Console.WriteLine("Rettangolo 1:");
|
||||||
|
Console.WriteLine($"Area: {p_forma1.CalcolaArea()}");
|
||||||
|
Console.WriteLine($"Perimetro: {p_forma1.CalcolaPerimetro()}");
|
||||||
|
Console.WriteLine("\nRettangolo 2");
|
||||||
|
|
||||||
|
Console.WriteLine($"Area: {p_forma2.CalcolaArea()}");
|
||||||
|
Console.WriteLine($"Perimetro: {p_forma2.CalcolaPerimetro()}");
|
||||||
|
}
|
||||||
|
}
|
||||||
Loading…
x
Reference in New Issue
Block a user