Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- using System;
- using System.Collections.Generic;
- using System.Linq;
- using System.Text;
- using System.Threading.Tasks;
- namespace INTERRO
- {
- class Program
- {
- static int nombre = 0;
- static void Main(string[] args)
- {
- Menu();
- }
- static void Menu() {
- Console.Clear();
- Console.WriteLine("1. Entrez un nombre >=2 et < 100 au clavier.");
- Console.WriteLine("2. Afficher la suite de Syracuse correspondante au nombre entré.");
- Console.WriteLine("3. Quitter");
- try
- {
- int choix = int.Parse(Console.ReadLine());
- switch (choix)
- {
- case 1:
- Option1();
- break;
- case 2:
- Option2();
- break;
- case 3:
- Option3();
- break;
- default:
- Console.WriteLine("Erreur, veuillez rentrer 1, 2 ou 3. Retour au menu."); //n'autorise que les chiffres 1, 2 ou 3
- Console.ReadKey();
- Menu();
- break;
- }
- }
- catch (FormatException)
- {
- Console.WriteLine("Veuillez rentrer un nombre entier compris entre 1 et 3. Retour au menu."); //n'accepte pas la saisie de lettres, etc.
- Console.ReadKey();
- Menu();
- }
- }
- static void Option1() //début point 1
- {
- Console.Clear();
- Console.WriteLine("1. Entrez un nombre >=2 et < 100 au clavier.");
- nombre = int.Parse(Console.ReadLine());
- if (nombre >= 2 && nombre < 100)
- {
- Console.WriteLine("Valeur acceptée, retour au menu");
- Console.ReadKey();
- Menu();
- }
- else
- {
- Console.WriteLine("Valeur refusée.");
- nombre = 0;
- Console.ReadKey();
- Option1();
- }
- } //fin point 1
- static void Option2() //début point 2
- {
- if(nombre != 0) //oblige l'utilisateur à commencer par le point 1
- {
- Console.Clear();
- Console.WriteLine("Suite de Syracuse du nombre " + nombre + " :");
- Console.WriteLine("");
- while (nombre > 1)
- {
- Console.WriteLine(nombre);
- if ((nombre % 2) == 0)
- {
- nombre = nombre / 2;
- }
- else if ((nombre % 2) != 0)
- {
- nombre = (nombre * 3) + 1;
- }
- }
- Console.WriteLine(nombre);
- Console.WriteLine("");
- Console.WriteLine("Appuyez sur une touche pour revenir au menu.");
- Console.ReadKey();
- Menu();
- }
- else
- {
- Console.WriteLine("Erreur, veuillez commencer par l'étape 1."); //renvoie un message d'erreur si l'utilisateur commence par le point 2
- Console.ReadKey();
- Menu();
- }
- } //fin point 2
- static void Option3() //début point 3
- {
- Console.WriteLine("Appuyez sur une touche pour quitter le programme.");
- Console.ReadKey();
- } //fin point 3
- }
- }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement