Вычислить расстояние между двумя точками - C# (206793)
Формулировка задачи:
Две точки заданы на плоскости своими координатами, которые могут быть как декартовыми, так и полярными. Требуется вычислить расстояние между этими двумя точками.
Решение задачи: «Вычислить расстояние между двумя точками»
textual
Листинг программы
- using System;
- public class Test
- {
- public class Point {
- public double x,y; // либо две декартовые координаты, либо расстояние и угол
- public bool cart; // true если в декартовых, иначе false
- public Point(double x, double y, bool cart) {
- this.x=x; this.y=y; this.cart=cart;
- }
- /* переводим в декартовые координаты */
- public void toCartesian() {
- if(cart) return;
- double xx = x*Math.Cos(y);
- double yy = x*Math.Sin(y);
- cart = true;
- x = xx;
- y = yy;
- }
- public static double dist(Point p, Point q) {
- p.toCartesian();
- q.toCartesian();
- return Math.Sqrt((p.x-q.x)*(p.x-q.x) + (p.y-q.y)*(p.y-q.y));
- }
- }
- public static void Main()
- {
- Console.WriteLine(Point.dist(new Point(0,0,true), new Point(0,1,true)));
- }
- }
ИИ поможет Вам:
- решить любую задачу по программированию
- объяснить код
- расставить комментарии в коде
- и т.д