예제 #1
0
        // Erzeugt ein LKW Objekt aus einer Datenzeile.
        // Die Datenzeile wird geprüft.
        // Sind die Daten OK wird ein LKW Objekt erzeugt und zurückgegeben.
        // Sind die Daten nicht OK wird kein LKW Objekt erzeugt und es wird null zurückgegeben.
        // Jede Datenzeile muss folgendermassen aufgebaut sein
        // <Fahrzeugtyp>;<Fahrzeugmodell>;<Jahr der Erstzulassung>;<Anschaffungspreis>;<Kennzeichen>;<AnzahlAchsen>;<Zuladung>
        // Beispiel: LKW; Mercedes; LG 315; 1960; 23000; K-GS-04; 2; 5,5
        public static LKW ErzeugeFahrzeug(
            string Datenzeile)
        {
            string Hersteller;
            string Modell;
            int    Erstzulassung;
            float  Anschaffungspreis;
            string Kennzeichen;
            int    ParkhausNummer;
            int    StellplatzNummer;

            int   AnzahlAchsen = 0;
            float Zuladung     = 0;

            // Prüfe, die für alle Fahrzeuge gemeinsamen Daten, durch Funktion der Elternklasse
            bool DatenOk = Fahrzeug.TextToFahrzeugDaten(
                Datenzeile,
                out Hersteller,
                out Modell,
                out Erstzulassung,
                out Anschaffungspreis,
                out Kennzeichen,
                out ParkhausNummer,
                out StellplatzNummer);

            // Prüfen der LKW Daten, wenn gemeinsame Daten OK sind
            if (DatenOk)
            {
                string[] DataArray = Datenzeile.Split(';');

                // Erstes Datenelement muss LKW sein
                if (DataArray[0] != "LKW")
                {
                    DatenOk = false;
                }

                // Prüfe und kopiere Achsenanzahl
                if (DatenOk)
                {
                    DatenOk = TextToAnzahlAchsen(DataArray[8], out AnzahlAchsen);
                }

                // Prüfe und kopiere Zuladung
                if (DatenOk)
                {
                    DatenOk = TextToZuladung(DataArray[8], out Zuladung);
                }
            }

            // Erzeuge PKW Objekt, wenn die Daten OK sind. Sonst wird null zurückgegeben.
            if (DatenOk)
            {
                return(new LKW(Hersteller, Modell, Erstzulassung, Anschaffungspreis, Kennzeichen, ParkhausNummer, StellplatzNummer, AnzahlAchsen, Zuladung));
            }
            else
            {
                return(null);
            }
        }
예제 #2
0
        // Erzeugt ein Motorad Objekt aus einer Datenzeile.
        // Die Datenzeile wird geprüft.
        // Sind die Daten OK wird ein Motorad Objekt erzeugt und zurückgegeben.
        // Sind die Daten nicht OK wird kein Motorad Objekt erzeugt und es wird null zurückgegeben.
        // Jede Datenzeile muss folgendermassen aufgebaut sein
        // <Fahrzeugtyp>;<Fahrzeugmodell>;<Jahr der Erstzulassung>;<Anschaffungspreis>;<Kennzeichen>;<Hubraum>
        // Beispiel: Motorrad; BMW; R1200R; 1999; 6000; K-GS-03; 1170
        public static Motorrad ErzeugeFahrzeug(
            string Datenzeile)
        {
            string Hersteller;
            string Modell;
            int    Erstzulassung;
            float  Anschaffungspreis;
            string Kennzeichen;
            int    ParkhausNummer;
            int    StellplatzNummer;

            int Hubraum = 0;

            // Prüfe, die für alle Fahrzeuge gemeinsamen Daten, durch Funktion der Elternklasse
            bool DatenOk = Fahrzeug.TextToFahrzeugDaten(
                Datenzeile,
                out Hersteller,
                out Modell,
                out Erstzulassung,
                out Anschaffungspreis,
                out Kennzeichen,
                out ParkhausNummer,
                out StellplatzNummer);

            // Prüfen der Motorad Daten, wenn gemeinsame Daten OK sind
            if (DatenOk)
            {
                string[] DataArray = Datenzeile.Split(';');

                if (DatenOk)
                {
                    if (DataArray[0] != "Motorrad")
                    {
                        DatenOk = false;
                    }
                }

                // Wandle String in int um für Hubraum (50 ccm - 2000 ccm)
                if (DatenOk)
                {
                    DatenOk = PruefeInteger(DataArray[8], 50, 2000, out Hubraum);
                }
            }

            // Erzeuge Motorad Objekt, wenn die Daten OK sind. Sonst wird null zurückgegeben.
            if (DatenOk)
            {
                return(new Motorrad(Hersteller, Modell, Erstzulassung, Anschaffungspreis, Kennzeichen, ParkhausNummer, StellplatzNummer, Hubraum));
            }
            else
            {
                return(null);
            }
        }
예제 #3
0
        // Erzeugt ein PKW Objekt aus einer Datenzeile.
        // Die Datenzeile wird geprüft.
        // Sind die Daten OK wird ein PKW Objekt erzeugt und zurückgegeben.
        // Sind die Daten nicht OK wird kein PKW Objekt erzeugt und es wird null zurückgegeben.
        // Jede Datenzeile muss folgendermassen aufgebaut sein
        // <Fahrzeugtyp>;<Fahrzeugmodell>;<Jahr der Erstzulassung>;<Anschaffungspreis>;<Kennzeichen>;<Hubraum>;<Leistung>;<Schadstoffklasse>
        // Beispiel: PKW; VW; Käfer; 1965; 9999; K-GS-01; 1000; 30; 1
        public static PKW ErzeugeFahrzeug(
            string Datenzeile)
        {
            string Hersteller;
            string Modell;
            int    Erstzulassung;
            float  Anschaffungspreis;
            string Kennzeichen;
            int    ParkhausNummer;
            int    StellplatzNummer;

            int Hubraum          = 0;
            int Leistung         = 0;
            int Schadstoffklasse = 0;

            // Prüfe, die für alle Fahrzeuge gemeinsamen Daten, durch Funktion der Elternklasse
            // Prüfe, die für alle Fahrzeuge gemeinsamen Daten, durch Funktion der Elternklasse
            bool DatenOk = Fahrzeug.TextToFahrzeugDaten(
                Datenzeile,
                out Hersteller,
                out Modell,
                out Erstzulassung,
                out Anschaffungspreis,
                out Kennzeichen,
                out ParkhausNummer,
                out StellplatzNummer);


            // Prüfen der PKW Daten, wenn gemeinsame Daten OK sind
            if (DatenOk)
            {
                // Kopieren der durch ; getrennten Datenelement aus einer Textzeile in ein Array
                string[] DataArray = Datenzeile.Split(';');

                // Erstes Datenelement muss PKW sein
                if (DataArray[0] != "PKW")
                {
                    DatenOk = false;
                }

                // Prüfe und kopiere Hubraum
                if (DatenOk)
                {
                    DatenOk = TextToHubraum(DataArray[8], out Hubraum);
                }

                // Prüfe und kopiere Leistung
                if (DatenOk)
                {
                    DatenOk = TextToLeistung(DataArray[9], out Leistung);
                }

                // Prüfe und kopiere Schadstoffklasse
                if (DatenOk)
                {
                    DatenOk = TextToSchadstoffklasse(DataArray[10], out Schadstoffklasse);
                }
            }

            // Erzeuge PKW Objekt, wenn die Daten OK sind. Sonst wird null zurückgegeben.
            if (DatenOk)
            {
                return(new PKW(Hersteller, Modell, Erstzulassung, Anschaffungspreis, Kennzeichen, ParkhausNummer, StellplatzNummer, Hubraum, Leistung, Schadstoffklasse));
            }
            else
            {
                return(null);
            }
        }