ApplicaSconto

This commit is contained in:
La Programmatrice Verde 2025-04-18 13:31:46 +02:00
parent f04f65ab5c
commit 1e60a48eea

View File

@ -4,22 +4,17 @@ class Program {
static void Main(string[] args) {
Console.Clear();
const int MAX_LIBRI = 10;
int scelta, input;
int scelta, j;
Libro[] biblioteca = new Libro[MAX_LIBRI];
bool oggettoEsistente;
(double, bool) ritornoRiempimento;
Dispenser elementoRiempimento;
Console.Write("Quanti dispenser considerare? ");
input = Convert.ToInt32(Console.ReadLine());
dispensers = new Dispenser[input];
bool oggettoEsistente, nomeEsistente, casaEditriceEsistente;
string casaEditrice, nome;
do {
Console.WriteLine("Inserire un'opzione:");
Console.WriteLine("1. Crea biblioteca");
Console.WriteLine("2. Mostra biblioteca");
Console.WriteLine("3. Mostra libro");
Console.WriteLine("4. Applca sconto");
Console.WriteLine("4. Applica sconto");
Console.WriteLine("0. Esci");
Console.Write("Scelta: ");
scelta = Convert.ToInt32(Console.ReadLine());
@ -79,17 +74,50 @@ class Program {
Pausa();
break;
case 4:
quantitàRimasta = SelezionaDispenser(dispensers).Erogazione();
if (quantitàRimasta == 0) {
Console.WriteLine("Il dispenser è vuoto.");
oggettoEsistente = true;
for (int i = 0; i < biblioteca.Length && oggettoEsistente; i++) {
if (biblioteca[i] == null) {
oggettoEsistente = false;
}
}
if (!oggettoEsistente) {
Console.WriteLine("Errore: è necessario creare la biblioteca prima di applicare lo sconto ad un libro.");
}
else {
Console.WriteLine($"Quantità rimasta: {quantitàRimasta}");
Console.WriteLine("Scegliere un nome:");
for (int i = 0; i < biblioteca.Length; i++) {
biblioteca[i].GetNome();
Console.WriteLine();
}
Console.Write("Nome: ");
nome = Console.ReadLine();
Console.WriteLine("Scegliere una casa editrice:");
for (int i = 0; i < biblioteca.Length; i++) {
biblioteca[i].GetCasaEditrice();
Console.WriteLine();
}
Console.Write("Casa editrice: ");
casaEditrice = Console.ReadLine();
nomeEsistente = false;
casaEditriceEsistente = false;
for (j = 0; j < biblioteca.Length && !nomeEsistente && !casaEditriceEsistente; j++) {
nomeEsistente = biblioteca[j].GetNome() == nome;
casaEditriceEsistente = biblioteca[j].GetCasaEditrice() == casaEditrice;
}
if (!nomeEsistente || !casaEditriceEsistente) {
Console.WriteLine($"Nessun libro di nome {nome} di casa editrice {casaEditrice} esistente.");
}
else {
biblioteca[j].ApplicaSconto();
}
}
Console.WriteLine("Erogazione effettuata");
Console.WriteLine();
Pausa();
break;
default:
Console.WriteLine("Opzione non valida.");
Pausa();
@ -98,6 +126,7 @@ class Program {
}
while (scelta != 0);
}
static void Pausa() {