بکندباز

تابعی بنویسید که لیستی از ۴ جفت مختصات (تاپل) دریافت کند. هر جفت شامل دو عدد است که نشان‌دهنده مختصات x و y یک نقطه در صفحه دکارتی هستند. تابع باید بررسی کند که آیا این ۴ نقطه یک مستطیل را تشکیل می‌دهند یا خیر. اگر این نقاط یک مستطیل تشکیل دهند، مقدار True و در غیر این صورت مقدار False برگردانید.

نمونه ورودی و خروجی

IsRectangle([(-1, -2), (-1, 3), (1, -1), (-3, 2)]) ➞ True

IsRectangle([(-1, -2), (-1, -2), (1, -1), (-3, 2)]) ➞ False

IsRectangle([(7, 4), (1, -2), (1, 4), (7, -2)]) ➞ True

نکات

  • مستطیل یک چهارضلعی است که دارای ۴ زاویه قائمه (۹۰ درجه) است.
  • مربع نیز نوع خاصی از مستطیل است که در آن تمام اضلاع برابر هستند.
  • مختصات نقاط ممکن است تکراری باشند، که در این صورت مستطیل تشکیل نمی‌شود.
  • مستطیل می‌تواند عمودی، افقی یا به صورت مورب باشد.
Assert.True(Backendbaz.IsRectangle(new[] { (-1, -2), (-1, 3), (1, -1), (-3, 2) }));
Assert.False(Backendbaz.IsRectangle(new[] { (-1, -2), (-1, -2), (1, -1), (-3, 2) }));
Assert.True(Backendbaz.IsRectangle(new[] { (7, 4), (1, -2), (1, 4), (7, -2) }));
Assert.True(Backendbaz.IsRectangle(new[] { (-3, 2), (8, -1), (7, 4), (-2, -3) }));
Assert.False(Backendbaz.IsRectangle(new[] { (-3, 2), (8, -1), (7, 4), (-4, 7) }));
Assert.False(Backendbaz.IsRectangle(new[] { (7, 4), (1, -2), (1, 3), (7, -1) }));
Assert.True(Backendbaz.IsRectangle(new[] { (0, 8), (-1, 7), (7, -1), (8, 0) }));
Assert.False(Backendbaz.IsRectangle(new[] { (0, 8), (1, 9), (7, -1), (8, 0) }));

هنوز پاسخی برای این تمرین ثبت نشده است

نظرات

*
*

تمرینات مرتبط