Задача от Complex Conditional Statements - Programing Basics
Задачата e за точка върху страна на правоъгълник
Това ми е кода:
double x1 = double.Parse(Console.ReadLine());
double y1 = double.Parse(Console.ReadLine());
double x2 = double.Parse(Console.ReadLine());
double y2 = double.Parse(Console.ReadLine());
double x = double.Parse(Console.ReadLine());
double y = double.Parse(Console.ReadLine());
if (x == x1 || x == x2 && y >= y1 && y <= y2 ||
y == y1 || y == y2 && x >= x1 && x <= x2)
{
Console.WriteLine("Border");
}
else
{
Console.WriteLine("Inside / Outside");
}
}
с примерите от упражненията работи, но когато я пусна в Judge ми дава 77/100 точки. Грешката ми е в отговорите. При тест програмата ми изкарва като мой отговор Border вместо Inside / Outside. Това са примерните стойности които ми пуска Judge и има грешка с тях 2; -3; 12; 3; 2; 4;
Не мога да схвана къде съм сбъркал.
Проверката x1 < x2 и y1 < y2, т.е. първия if е гарантирано в условието на задачата, може да го махнеш. Провери си посления else, да не е под if за гарантираната проверка. В този случай ще ти "игнорира" else, с който изписваш "Inside / Outside".
Благодаря за отговора!
Относно задачата, доколкото виждам else е под затварящата скоба на последния else if. Нямам никаква идея защо тази клауза не се изпълнява. Между другото има ли някакъв начин да се провери дали дадена стойност е включена в масив от данни в C#? В Python можеше да се провери с in , но в C# като пробвах не стана.