Files
EsercizioGarage/src/eserciziogarage/Garage.java
La Programmatrice Verde 6632a5535a Gestione garage pieno
2025-09-25 17:21:10 +02:00

62 lines
1.6 KiB
Java

/*
* Click nbfs://nbhost/SystemFileSystem/Templates/Licenses/license-default.txt to change this license
* Click nbfs://nbhost/SystemFileSystem/Templates/Classes/Class.java to edit this template
*/
package eserciziogarage;
import java.util.Scanner;
/**
*
* @author Verde
*/
public class Garage {
Auto[] veicoli;
private int posizioneLibera = 0;
public Garage(int p_dimensione) {
this.veicoli = new Auto[p_dimensione];
}
private int NextPosizioneLibera() {
int i = 0;
for (; i < this.veicoli.length && this.veicoli[i] != null; ++i)
;
return i;
}
private int NextPosizioneLibera(int p_i) {
for (; p_i < this.veicoli.length && this.veicoli[p_i] != null; ++p_i);
return p_i;
}
public String IngressoAuto() {
Scanner sc = new Scanner(System.in);
String targa, ritorno;
System.out.println("Inserire la targa dell'auto: ");
targa = sc.nextLine();
try{
veicoli[this.NextPosizioneLibera()] = new Auto(targa);
ritorno = "L'auto è posteggiata nella posizione %d".formatted(posizioneLibera++);
}
catch(ArrayIndexOutOfBoundsException e){
ritorno = "Errore: il garage è pieno.";
}
return ritorno;
}
public String GetPostiOccupati() {
return "I posti occupati sono da 0 a %d".formatted(--posizioneLibera);
}
public String GetPostiLiberi() {
return "I posti liberi sono da %d a %d".formatted(--posizioneLibera, veicoli.length);
}
public void UscitaAuto(){}
}