Определить номер N области, в которой находиться точка M(x,y) с заданными координатами - C#
Формулировка задачи:
Определить номер N области, в которой находиться точка M(x,y) с заданными координатами. Границы области относить к области с наибольшим номером.
Решение задачи: «Определить номер N области, в которой находиться точка M(x,y) с заданными координатами»
textual
Листинг программы
using System; using Microsoft.VisualStudio.TestTools.UnitTesting; namespace UnitTestProject1 { [TestClass] public class UnitTest1 { private const int radius = 4; public class Point { public int X { get; set; } public int Y { get; set; } } public int GetArea(Point point) { if (point.X < 0 && point.Y > 0) { return 3; } if (Math.Pow(point.X, 2) + Math.Pow(point.Y, 2) <= Math.Pow(radius, 2) && ((point.X >= 0 && point.Y >= 0) || (point.X <= 0 && point.Y <= 0))) { return 1; } if (Math.Pow(point.X, 2) + Math.Pow(point.Y, 2) <= Math.Pow(radius, 2) && point.X >= 0 && point.Y <= 0) { return 2; } return 3; } [TestMethod] public void Test() { Point point = new Point {X = 1, Y = 1}; var result = GetArea(point); Assert.AreEqual(1, result); point = new Point {X = 0, Y = 0}; result = GetArea(point); Assert.AreEqual(1, result); point = new Point { X = -1, Y = -1 }; result = GetArea(point); Assert.AreEqual(1, result); point = new Point { X = -1, Y = 1 }; result = GetArea(point); Assert.AreEqual(3, result); point = new Point { X = 1, Y = -1 }; result = GetArea(point); Assert.AreEqual(2, result); point = new Point { X = 5, Y = 5 }; result = GetArea(point); Assert.AreEqual(3, result); } } }
ИИ поможет Вам:
- решить любую задачу по программированию
- объяснить код
- расставить комментарии в коде
- и т.д