Даны координаты трех точек на плоскости. Составить программу, которая определяла бы вид треугольника - C#
Формулировка задачи:
Подскажите,пожалуйста,как сделать так, чтобы выводилось сообщение о том, что в место координат введены не числа, а буквы?
{
static void Main(string[] args)
{
Console.WriteLine("Введите координаты сторон треугольника");
Console.WriteLine("Введите координату x1");
double x1 = double.Parse(Console.ReadLine());
Console.WriteLine("Введите координату y1");
double y1 = double.Parse(Console.ReadLine());
Console.WriteLine("Введите координату x2");
double x2 = double.Parse(Console.ReadLine());
Console.WriteLine("Введите координату y2");
double y2 = double.Parse(Console.ReadLine());
Console.WriteLine("Введите координату x3");
double x3 = double.Parse(Console.ReadLine());
Console.WriteLine("Введите координату y3");
double y3 = double.Parse(Console.ReadLine());
double a = Math.Sqrt(Math.Pow(x2 - x1, 2) + Math.Pow(y2 - y1, 2));
double b = Math.Sqrt(Math.Pow(x3 - x2, 2) + Math.Pow(y3 - y2, 2));
double c = Math.Sqrt(Math.Pow(x3 - x1, 2) + Math.Pow(y3 - y1, 2));
double alpha = 0;
double betta = 0;
double gamma = 0;
alpha = (((Math.Acos((b * b + c * c - a * a) / (2 * b * c)) * 180)) / Math.PI);
betta = (((Math.Acos((a * a + c * c - b * b) / (2 * a * c)) * 180)) / Math.PI);
gamma = (((Math.Acos((a * a + b * b - c * c) / (2 * a * b)) * 180)) / Math.PI);
if (a < (b + c) && b < (a + c) && c < (a + b))
{
if ((alpha == 90) || (betta == 90) || (gamma == 90))
Console.WriteLine(" Треугольник прямоугольный");
if ((alpha > 90) || (betta > 90) || (gamma > 90))
Console.WriteLine("Треугольник тупоугольный");
else
Console.WriteLine("Треугольник остроугольный");
if ((a == b) && (a == c) && (b == c))
Console.WriteLine("Этот треугольник равносторонний");
if ((a == b) || (a == c) || (b == c))
Console.WriteLine("Этот треугольник равнобедряный");
else
Console.WriteLine("Этот треугольник разносторонний");
}
else
Console.WriteLine(" Треугольник не существует");
Console.ReadKey();
}
}Решение задачи: «Даны координаты трех точек на плоскости. Составить программу, которая определяла бы вид треугольника»
textual
Листинг программы
class Program
{
private static void Main(string[] args)
{
Console.WriteLine("Введите координаты сторон треугольника");
double x1 = GetCoord("x1");
double y1 = GetCoord("y1");
double x2 = GetCoord("x2");
double y2 = GetCoord("y2");
double x3 = GetCoord("x3");
double y3 = GetCoord("y3");
//...
}
static double GetCoord(string name = null)
{
Console.Write("Введите координату {0}:", name ?? "\b");
var input = Console.ReadLine();
try
{
return double.Parse(input);
}
catch
{
Console.WriteLine("Ошибка ввода!");
return GetCoord(name);
}
}
}