Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- namespace BMIConsole
- {
- class Program
- {
- private static double[] arrayBMI = new double[3]; // maak array aan voor drie personen hun BMI in te plaatsen.
- static void Main(string[] args)
- {
- PrintMenu();
- //string keuze;
- //do
- //{
- // keuze = Console.ReadLine();
- // switch (keuze)
- // {
- // //case (("a")||("A")):
- // case "a":
- // case "A":
- // InlezenLengteGewicht();
- // break;
- // case "b":
- // case "B":
- // BepaalGemiddelde(arrayBMI);
- // break;
- // case "c":
- // case "C":
- // Console.WriteLine("Programma gaat stoppen");
- // break;
- // default:
- // Console.WriteLine($"\nDruk enkel op een juiste knop aub.");
- // break;
- // }
- // Console.WriteLine($"{keuze}");
- //} while ((keuze != "c") || (keuze!="C"));
- ConsoleKeyInfo keuze;
- do
- {
- keuze = Console.ReadKey();
- switch (keuze.Key)
- {
- case ConsoleKey.A:
- InlezenLengteGewicht();
- PrintMenu();
- break;
- case ConsoleKey.B:
- BepaalGemiddelde(arrayBMI);
- PrintMenu();
- break;
- case ConsoleKey.C:
- Console.WriteLine("Programma gaat stoppen");
- break;
- default:
- Console.WriteLine($"\nDruk enkel op een juiste knop aub.");
- break;
- }
- Console.WriteLine($"{keuze}");
- } while (keuze.Key != ConsoleKey.C);
- Console.WriteLine("Programma is gestopt");
- Console.ReadKey();
- }
- private static void PrintMenu()
- {
- Console.WriteLine("MENU\n====\n\n");
- Console.WriteLine("A) Voer gegevens in + bereken BMI");
- Console.WriteLine("B) Toon histogram en gemiddelde BMI");
- Console.WriteLine("C) Stop\n");
- Console.WriteLine("Uw keuze:");
- }
- private static void InlezenLengteGewicht()
- {
- Console.WriteLine("\nInvoeren gegevens\n================\n");
- // lees 3 personen in
- // voeg de 3 BMI's toe aan arrayBMI[]
- int aantalPersonen = arrayBMI.Length;
- for (int i = 0; i < aantalPersonen; i++)
- {
- arrayBMI[i] = BepaalLengteGewichtReturnBMI($"persoon {i + 1}:");
- }
- //print array
- for (int i = 0; i < arrayBMI.Length; i++)
- {
- Console.Write(arrayBMI[i] + " ");
- }
- Console.WriteLine("\nDruk toets om terug te keren naar het menu...");
- Console.ReadKey();
- }
- //
- private static double BepaalLengteGewichtReturnBMI(string persoon)
- {
- double persoonBMI;
- Console.WriteLine($"{persoon}");
- persoonBMI = BerkenenBMI(LeesEnGeefLengte(), LeesEnGeefGewicht());
- Console.WriteLine($"\tBMI = {persoonBMI}");
- return persoonBMI;
- }
- private static double LeesEnGeefLengte()
- {
- string getalletje;
- double lengte;
- Console.Write($"\tLengte: ");
- do
- {
- getalletje = Console.ReadLine();
- } while (!IsStringDouble(getalletje)); // checkt voor double
- lengte = Convert.ToDouble(getalletje);
- return lengte;
- }
- private static int LeesEnGeefGewicht()
- {
- string getalletje;
- int gewicht;
- Console.Write("\tGewicht: ");
- do
- {
- getalletje = Console.ReadLine();
- } while (!IsStringGetal(getalletje)); // checkt voor integer
- gewicht = Convert.ToInt32(getalletje);
- return gewicht;
- }
- // Checkt of string een getal is, returns boolean
- private static bool IsStringDouble(string getal)
- {
- double number;
- //bool getalletje = Double.TryParse(getal, System.Globalization.NumberStyles.AllowDecimalPoint, out number);
- bool getalletje = Double.TryParse(getal, out number);
- return getalletje;
- }
- // Checkt of de gegeven string een double is, returns bool
- private static bool IsStringGetal(string getal)
- {
- int number;
- bool getalletje = Int32.TryParse(getal, out number);
- return getalletje;
- }
- private static double BerkenenBMI(double lengte, int gewicht)
- {
- double kilogram = Convert.ToDouble(gewicht);
- double bmi;
- bmi = (kilogram / (lengte * lengte));
- bmi = Math.Round(bmi, 2);
- return bmi;
- }
- private static void BepaalGemiddelde(double[] array) // krijgt een array mee en gaat het gemiddelde berekenen
- {
- double som=0;
- double gemiddeldeBMI;
- int aantalElementen = array.Length;
- //categories
- int ondergewicht = 0;
- int normaal = 0;
- int overgewicht = 0;
- int zwaarlijvig = 0;
- for (int index = 0; index < aantalElementen; index++)
- {
- if (array[index] < (18.5))
- {
- ondergewicht++;
- }
- else if ((array[index] >= 18.5) && (array[index] < 25))
- {
- normaal++;
- }
- else if (((array[index] >= 25) && (array[index] < 30)))
- {
- overgewicht++;
- }
- else
- {
- zwaarlijvig++;
- }
- som += array[index]; // telt telkens op bij de som
- }
- gemiddeldeBMI = Math.Round((som / Convert.ToDouble(aantalElementen)));
- Console.WriteLine($"\nHet gemiddelde BMI van het de 3 personen is: {gemiddeldeBMI}\n");
- PrintHistogramLine("ondergewicht", ondergewicht);
- PrintHistogramLine("normaal\t", normaal);
- PrintHistogramLine("overgewicht", overgewicht);
- PrintHistogramLine("zwaarlijvig", zwaarlijvig);
- Console.ReadKey();
- }
- private static void PrintHistogramLine(string categorie, int aantal)
- {
- Console.Write($"{categorie}\t:\t");
- while (aantal > 0)
- {
- Console.Write("#");
- aantal--;
- }
- Console.WriteLine();
- }
- }
- }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement