示例#1
0
        public int EntraVeicoloNonElettrico(Veicolo unVeicolo)
        {
            int  posizione = -1;
            bool finito    = false;
            int  i         = 10;

            while (!finito)
            {
                if (arrVeicoli[i] == null)
                {
                    arrVeicoli[i] = unVeicolo;
                    nVeicoli++;
                    posizione = i;
                    finito    = true;
                }
                else
                {
                    i++;
                }

                if (i == 60)
                {
                    finito = true;
                }
            }
            return(posizione);
        }
示例#2
0
        public void ControllaPostoLog(Veicolo v, int posiz)
        {
            string tip    = "ControllaPosto";
            string azione = posiz + "," + v == null ? "null" : (v is Auto ? "Auto" : (v is Furgone ? "Furgone" : (v is Moto ? "Moto" : "null")));

            AggiornaLog(tip, azione);
        }
示例#3
0
 public int EsceVeicolo(int posizione, int oraUscita)
 {
     try
     {
         Veicolo veicolo = ArrayDiVeicoli[posizione];
         int     durata  = oraUscita - veicolo.OraDiIngresso;
         ArrayDiVeicoli[posizione] = null;
         if (veicolo is Auto)
         {
             if (((Auto)veicolo).IsElettrica)
             {
                 NumeroAutoElettriche--; DurataParcheggioAuto = durata; return(TariffaAuto * durata);
             }
             else
             {
                 NumeroAuto--; DurataParcheggioAuto = durata;
                 return(TariffaAuto * durata);
             }
         }
         else if (veicolo is Moto)
         {
             NumeroMoto--; DurataParcheggioMoto = durata;
             return(TariffaMoto * durata);
         }
         else
         {
             NumeroFurgoni--; DurataParcheggioFurgone = durata;
             return(TariffaFurgone * durata);
         }
     }
     catch { return(-1); }
 }
        void PictureClick(object sender, MouseEventArgs e)
        {
            PictureBox pictureBox = sender as PictureBox;
            int        tag        = Convert.ToInt32(pictureBox.Tag);
            Veicolo    veicolo    = parent.g[parent.garageSelezionato].ArrayDiVeicoli[tag];

            if (veicolo != null)
            {
                FormInfo info = new FormInfo(veicolo);
                info.Show(this);
            }
        }
示例#5
0
        //metodi
        public void EntraVeicoloElettrico(Veicolo unVeicolo)     //il veicolo passato in parametro deve essere elettrico, il metodo non fa controlli
        {
            int pos = Array.IndexOf(ArrayDiVeicoli, null);

            if (pos > 9 || pos == -1)
            {
            }
            else
            {
                ArrayDiVeicoli[pos] = unVeicolo;                                   //se unVeicolo ha la proprietà isElettrica significa che deve essere per forza un'auto
                NumeroAutoElettriche++;
            }
        }
示例#6
0
 public Garage(int tariffaAuto, int tariffaMoto, int tariffaFurgone, int grandezza, string nome)
 {
     ArrayDiVeicoli          = new Veicolo[grandezza];
     TariffaAuto             = tariffaAuto;
     TariffaMoto             = tariffaMoto;
     TariffaFurgone          = tariffaFurgone;
     Nome                    = nome;
     NumeroAuto              = 0;
     NumeroAutoElettriche    = 0;
     NumeroFurgoni           = 0;
     NumeroMoto              = 0;
     DurataParcheggioAuto    = 0;
     DurataParcheggioMoto    = 0;
     DurataParcheggioFurgone = 0;
 }
示例#7
0
        public void EntraVeicoloNonElettrico(Veicolo unVeicolo)      //il veicolo passato in parametro non deve essere elettrico, il metodo non fa controlli
        {
            int pos = Array.IndexOf(ArrayDiVeicoli, null, 10);

            if (pos != -1)
            {
                ArrayDiVeicoli[pos] = unVeicolo;
                if (unVeicolo is Auto)
                {
                    NumeroAuto++;
                }
                else if (unVeicolo is Moto)
                {
                    NumeroMoto++;
                }
                else
                {
                    NumeroFurgoni++;
                }
            }
        }
示例#8
0
 public FormInfo(Veicolo veicolo)
 {
     InitializeComponent();
     this.veicolo = veicolo;
 }
示例#9
0
 public Garage()
 {
     arrVeicoli = new Veicolo[60];
     nVeicoli   = 0;
 }