public virtual IExerciceChoice ChooseAndShow(EExercice exercice)
        {
            IExerciceChoice choice = null;

            switch (exercice)
            {
            case EExercice.Exercice_1:
                choice = new Exercice_1();
                break;

            case EExercice.Exercice_2:
                choice = new Exercice_2();
                break;

            case EExercice.Exercice_3:
                choice = new Exercice_3();
                break;

            case EExercice.Exercice_4:
                choice = new Exercice_4();
                break;

            case EExercice.Exercice_5:
                choice = new Exercice_5();
                break;

            case EExercice.Quit:
            default: break;
            }

            return(choice);
        }
        public void ChooseAndShow()
        {
            var enumEExerciceMemberCount = Enum.GetNames(typeof(EExercice)).Length - 1;
            var choosed = true;

            do
            {
                Console.Clear();
                Console.WriteLine($"Exercice - type your choice number from 1 to {enumEExerciceMemberCount} and b if want you to get back");
                var _choice = Console.ReadKey().KeyChar;
                _choice = char.ToLower(_choice);
                Console.WriteLine();
                choosed = true;
                switch (_choice)
                {
                case 'b':
                    break;

                case '1':
                    Exercice = EExercice.Exercice_1;
                    break;

                case '2':
                    Exercice = EExercice.Exercice_2;
                    break;

                case '3':
                    Exercice = EExercice.Exercice_3;
                    break;

                case '4':
                    Exercice = EExercice.Exercice_4;
                    break;

                case '5':
                    Exercice = EExercice.Exercice_5;
                    break;

                default:
                    choosed = false;
                    break;
                }
                if (choosed)
                {
                    break;
                }
            }while (1 == 1);

            ExerciceFactory exerciceFactory = new ExerciceFactory();

            Choice = exerciceFactory.ChooseAndShow(Exercice);
            Choice?.RunExercice();
        }