Calcolo totali
This commit is contained in:
parent
68fce1e25d
commit
7364657874
38
Program.cs
38
Program.cs
@ -1,12 +1,11 @@
|
|||||||
using Microsoft.Win32.SafeHandles;
|
namespace vacanzeEstive_benzinaio;
|
||||||
|
|
||||||
namespace vacanzeEstive_benzinaio;
|
|
||||||
|
|
||||||
class Program {
|
class Program {
|
||||||
static void Main(string[] args) {
|
static void Main(string[] args) {
|
||||||
Console.Clear();
|
Console.Clear();
|
||||||
Rifornimento[] rifornimentos = CreaBenzinaio();
|
Rifornimento[] rifornimentos = CreaBenzinaio();
|
||||||
(bool, double, double) rifornimento;
|
(bool, double, double) rifornimento;
|
||||||
|
double[] totali;
|
||||||
int scelta = 0;
|
int scelta = 0;
|
||||||
|
|
||||||
do {
|
do {
|
||||||
@ -41,6 +40,12 @@ class Program {
|
|||||||
Pausa();
|
Pausa();
|
||||||
break;
|
break;
|
||||||
case 3:
|
case 3:
|
||||||
|
totali = CalcoloTotali(rifornimentos);
|
||||||
|
Console.WriteLine($"Litri di benzina erogati: {totali[0]}");
|
||||||
|
Console.WriteLine($"Guadagno benzina: {totali[1]}");
|
||||||
|
Console.WriteLine($"Litri di gasolio erogati: {totali[2]}");
|
||||||
|
Console.WriteLine($"Guadagno gasolio: {totali[3]}");
|
||||||
|
Console.WriteLine($"Guadagno complessivo: {totali[4]}");
|
||||||
Pausa();
|
Pausa();
|
||||||
break;
|
break;
|
||||||
default:
|
default:
|
||||||
@ -64,14 +69,17 @@ class Program {
|
|||||||
|
|
||||||
static Rifornimento[] CreaBenzinaio() {
|
static Rifornimento[] CreaBenzinaio() {
|
||||||
Random r = new();
|
Random r = new();
|
||||||
|
|
||||||
|
const double COSTO_BENZINA = 1.885;
|
||||||
|
const double COSTO_GASOLIO = 1.812;
|
||||||
int totalePompe = r.Next(1, 30); //limito il numero di pompe totali a 30 per evitare di usare 10 GB di RAM
|
int totalePompe = r.Next(1, 30); //limito il numero di pompe totali a 30 per evitare di usare 10 GB di RAM
|
||||||
int totaleBenzina = r.Next(totalePompe); //creo un numero casuale di pompe di benzina. Se non ce ne sono, allora sono fuori servizio
|
int totaleBenzina = r.Next(totalePompe); //creo un numero casuale di pompe di benzina. Se non ce ne sono, allora sono fuori servizio
|
||||||
Rifornimento[] ritorno = new Rifornimento[totalePompe];
|
Rifornimento[] ritorno = new Rifornimento[totalePompe];
|
||||||
for (int i = 0; i < totaleBenzina; i++) {
|
for (int i = 0; i < totaleBenzina; i++) {
|
||||||
ritorno[i] = new Rifornimento("benzina super", 1.885);
|
ritorno[i] = new Rifornimento("benzina super", COSTO_BENZINA);
|
||||||
}
|
}
|
||||||
for (int i = totaleBenzina; i < totalePompe; i++) {//riempio il resto dell'array con pompe di gasolio. Non possono essere fuori servizio
|
for (int i = totaleBenzina; i < totalePompe; i++) {//riempio il resto dell'array con pompe di gasolio. Non possono essere fuori servizio
|
||||||
ritorno[i] = new Rifornimento("gasolio", 1.812);
|
ritorno[i] = new Rifornimento("gasolio", COSTO_GASOLIO);
|
||||||
}
|
}
|
||||||
return ritorno;
|
return ritorno;
|
||||||
}
|
}
|
||||||
@ -124,4 +132,24 @@ class Program {
|
|||||||
|
|
||||||
return ritorno;
|
return ritorno;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
static double[] CalcoloTotali(Rifornimento[] p_rifornimentos) {
|
||||||
|
double[] ritorno = new double[5];
|
||||||
|
int indiceUltimaPompaBenzina = TrovaIndiceUltimaPompaBenzina(p_rifornimentos);
|
||||||
|
|
||||||
|
for (int i = 0; i < indiceUltimaPompaBenzina; i++) {
|
||||||
|
|
||||||
|
ritorno[0] += p_rifornimentos[i].GetLitriErogatiComplessivi(); //tutti i litri delle pompe di benzina
|
||||||
|
ritorno[1] += p_rifornimentos[i].GetCostoComplessivo(); //tutti gli incassi delle pompe di benzina
|
||||||
|
}
|
||||||
|
|
||||||
|
for (int i = indiceUltimaPompaBenzina + 1; i < p_rifornimentos.Length; i++) {
|
||||||
|
ritorno[2] += p_rifornimentos[i].GetLitriErogatiComplessivi(); //tutti i litri delle pompe di gasolio
|
||||||
|
ritorno[3] += p_rifornimentos[i].GetCostoComplessivo(); //tutti gli incassi delle pompe di gasolio
|
||||||
|
}
|
||||||
|
|
||||||
|
ritorno[4] = ritorno[1] + ritorno[3];
|
||||||
|
|
||||||
|
return ritorno;
|
||||||
|
}
|
||||||
}
|
}
|
||||||
|
|||||||
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
@ -13,7 +13,7 @@ using System.Reflection;
|
|||||||
[assembly: System.Reflection.AssemblyCompanyAttribute("vacanzeEstive_benzinaio")]
|
[assembly: System.Reflection.AssemblyCompanyAttribute("vacanzeEstive_benzinaio")]
|
||||||
[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+65ca5953b465607bd2914b089ffb227096216243")]
|
[assembly: System.Reflection.AssemblyInformationalVersionAttribute("1.0.0+68fce1e25d045fe0451f6f20a27808ec70889cd5")]
|
||||||
[assembly: System.Reflection.AssemblyProductAttribute("vacanzeEstive_benzinaio")]
|
[assembly: System.Reflection.AssemblyProductAttribute("vacanzeEstive_benzinaio")]
|
||||||
[assembly: System.Reflection.AssemblyTitleAttribute("vacanzeEstive_benzinaio")]
|
[assembly: System.Reflection.AssemblyTitleAttribute("vacanzeEstive_benzinaio")]
|
||||||
[assembly: System.Reflection.AssemblyVersionAttribute("1.0.0.0")]
|
[assembly: System.Reflection.AssemblyVersionAttribute("1.0.0.0")]
|
||||||
|
|||||||
@ -1 +1 @@
|
|||||||
e582eb33653bc9c49a63e51e76550ffc23d095b9a773769a24b4e149c0e6f14a
|
5797421c61a714ec074458b94f85e608343d13b32e22a84af55b6c574b6b40b9
|
||||||
|
|||||||
Binary file not shown.
Binary file not shown.
Loading…
x
Reference in New Issue
Block a user