Beispiel #1
0
        public void AfficherStats()
        {
            // mois de la température min la plus basse
            DonnéesMois dataMoisRecordTMin = Data.Where(n => n.TMin == Data.Min(c => c.TMin)).First();

            Console.WriteLine("Il a fait le plus froid ({0}°C) le {1:d}.", dataMoisRecordTMin.TMin, dataMoisRecordTMin.Mois);
            Console.WriteLine();

            // Sommes des précipitations de l'année 2016
            double sommePre2016 = Data.Where(n => n.Mois.Year == 2016).Sum(c => c.Précipitations);

            Console.WriteLine("La somme des précipitations de 2016 est : {0} mm.", Math.Round(sommePre2016, 2));
            Console.WriteLine();

            // Durée d'ensoleillement moyenne du mois de Juillet sur toutes les années
            double duréeEnsoJuillet = Data.Where(n => n.Mois.Month == 7).Average(c => c.Ensoleillement);

            Console.WriteLine("La durée d'ensoleillement moyen du mois de Juillet sur toutes les années est : {0} min.", duréeEnsoJuillet);
            Console.WriteLine();

            // Précipitations moyennes par année
            var    années = Data.Select(n => n.Mois.Year).Distinct();
            double res;

            foreach (var a in années)
            {
                res = Data.Where(n => n.Mois.Year == a).Average(c => c.Précipitations);
                Console.WriteLine("La moyenne des précipitations de l'année {0} est : {1} mm.", a, Math.Round(res, 2));
            }
        }
Beispiel #2
0
        public void ChargerDonnées()
        {
            string chemin = @"..\..\DonnéesMétéoParis.txt";

            int cpt = 0;

            using (StreamReader str = new StreamReader(chemin))
            {
                string ligne;

                while ((ligne = str.ReadLine()) != null)
                {
                    cpt++;
                    if (cpt == 1)
                    {
                        continue;           // On n'analyse pas la première ligne car elle contient les en-têtes
                    }
                    var tab = ligne.Split('\t');
                    try
                    {
                        var donnéesMois = new DonnéesMois
                        {
                            Mois           = DateTime.Parse(tab[0]),
                            TMin           = double.Parse(tab[1]),
                            TMax           = double.Parse(tab[2]),
                            Précipitations = double.Parse(tab[3]),
                            Ensoleillement = double.Parse(tab[4])
                        };

                        // Ajout des données du mois à la liste
                        Data.Add(donnéesMois);
                    }
                    catch (FormatException)
                    {
                        // On ignore simplement la ligne
                        Console.WriteLine("Erreur de format à la ligne suivante :\r\n{0}", ligne);
                    }
                }
            }
        }