Exemplo n.º 1
0
        public static List <Tierfutter> NassfutterLesen()
        {
            StreamReader      nass       = new StreamReader(@"FutterHundNass.csv");
            List <Tierfutter> nassfutter = new List <Tierfutter>();
            int zeile = 0;

            string[] ersteZeile = new string[24];
            while (!nass.EndOfStream)
            {
                var line   = nass.ReadLine();
                var values = line.Split(';');

                if (zeile == 0)
                {
                    ersteZeile = values;
                    zeile++;
                }
                else
                {
                    string    name       = values[0];
                    string    geschmack  = values[1];
                    string    aktivitaet = values[2];
                    FutterArt art;
                    switch (aktivitaet)
                    {
                    case "normal": art = FutterArt.normal; break;

                    case "aktiv": art = FutterArt.aktiv; break;

                    case "senior": art = FutterArt.senior; break;

                    case "Niere": art = FutterArt.niere; break;

                    default: art = FutterArt.normal; break;
                    }
                    Dictionary <float, float> tabelle = new Dictionary <float, float>();
                    for (int i = 3; i < values.Length; i++)
                    {
                        if (values[i] != "NA")
                        {
                            try
                            {
                                tabelle.Add(Convert.ToSingle(ersteZeile[i]), Convert.ToSingle(values[i]));
                            }
                            catch (Exception ex)
                            {
                                Console.WriteLine(ex.Message);
                            }
                        }
                    }
                    Tierfutter nf = new Tierfutter(name, geschmack, FutterSorte.nass, art, tabelle);
                    nassfutter.Add(nf);
                    //Console.WriteLine(nf);
                }
            }
            return(nassfutter);
        }
        public float FutterMengeBerechnen(Tierfutter futter, FutterSorte sorte, float gewicht, int portionen)
        {
            float antwort = 0;

            if (futter != null)
            {
                antwort = futter.FuttermengeBerechnen(gewicht) / portionen;
            }
            else
            {
                throw new InvalidOperationException("Kein Futter übergeben");
            }

            return(antwort);
        }
 public float[] GemischteFutterMenge(Tierfutter futter_trocken, Tierfutter futter_nass, float anteil_trocken, float gewicht, int portionen)
 {
     float[] antwort = new float[2];
     if (futter_trocken == null || futter_nass == null)
     {
         throw new InvalidOperationException("Kein Futter übergeben");
     }
     if (anteil_trocken > 99)
     {
         return(new float[] { futter_trocken.FuttermengeBerechnen(gewicht), 0 });
     }
     else if (anteil_trocken < 1)
     {
         return(new float[] { 0, futter_nass.FuttermengeBerechnen(gewicht) });
     }
     else
     {
         antwort[0] = ((anteil_trocken / 100) * futter_trocken.FuttermengeBerechnen(gewicht)) / portionen;
         antwort[1] = (((100 - anteil_trocken) / 100) * futter_nass.FuttermengeBerechnen(gewicht)) / portionen;
     }
     return(antwort);
 }