static void Main(string[] args)
Console.WriteLine("=== Calculateur de Distance pour Appareil Photo ===");
Console.Write("Entrez la focale (en mm) : ");
double focale = double.Parse(Console.ReadLine());
Console.Write("Entrez la couverture par pixel = GSD (en mm/pixel) : ");
double pixelSize = double.Parse(Console.ReadLine());
Console.Write("Entrez la largeur de l'image (en pixels) : ");
int imageWidth = int.Parse(Console.ReadLine());
Console.Write("Entrez la hauteur de l'image (en pixels) : ");
int imageHeight = int.Parse(Console.ReadLine());
Console.Write("Entrez la largeur du capteur (en mm) : ");
double sensorWidth = double.Parse(Console.ReadLine());
Console.Write("Entrez la hauteur du capteur (en mm) : ");
double sensorHeight = double.Parse(Console.ReadLine());
Console.Write("Entrez le pourcentage de recouvrement souhaité entre les photos (en %) : ");
double overlapPercentage = double.Parse(Console.ReadLine()) / 100.0;
double sceneWidth = imageWidth * pixelSize;
double sceneHeight = imageHeight * pixelSize;
double distance = (sceneWidth / sensorWidth) * focale;
double overlapWidth = sceneWidth * (1 - overlapPercentage);
double overlapHeight = sceneHeight * (1 - overlapPercentage);
Console.WriteLine($"\nLa distance à la façade est de {distance:F2} mètres");
Console.WriteLine($"Décalage pour un recouvrement de {overlapPercentage * 100:F0}% :");
Console.WriteLine($" - Longitudinal : {overlapWidth:F2} mètres");
Console.WriteLine($" - Vertical : {overlapHeight:F2} mètres");
Console.WriteLine("Erreur : Veuillez entrer des valeurs numériques valides.");
Console.WriteLine($"Une erreur est survenue : {ex.Message}");
Console.WriteLine("\nAppuyez sur une touche pour quitter.");