zoukankan      html  css  js  c++  java
  • C#面向对象思想计算两点之间距离

    题目为计算两点之间距离。

    面向过程的思维方式,两点的横坐标之差,纵坐标之差,平方求和,再开跟,得到两点之间距离。

    using System;
    using System.Collections.Generic;
    using System.Linq;
    using System.Text;
    using System.Threading.Tasks;
    
    namespace Classes_2_point_distance
    {
        class Program
        {
            static void Main(string[] args)
            {
                int x1 = -1;
                int y1 = -1;
                int x2 = int.Parse(Console.ReadLine());
                int y2 = int.Parse(Console.ReadLine());
    
                int xdiff = x2 - x1;
                int ydiff = y2 - y1;
                double distance = Math.Sqrt(xdiff * xdiff + ydiff * ydiff);
    
                Console.WriteLine(distance);
                Console.ReadKey();
    
    
            }
        }
    }
    

      面向对象的思路,题目中,两点间直线距离,名词包括点、直线、距离,首先我们构造一个点类。

    using System;
    using System.Collections.Generic;
    using System.Linq;
    using System.Text;
    using System.Threading.Tasks;
    
    namespace Classes_2_point_distance
    {
        class Point
        {
            private int x;
            private int y;
    
            public Point()
            {
                x = -1;
                y = -1;
            }
    
            public Point(int h, int z)
            {
                x = h;
                y = z;
            }
            public double Distance(Point p)
            {
                int xdiff = x - p.x;
                int ydiff = y - p.y;
    
                return Math.Sqrt(xdiff * xdiff + ydiff * ydiff);
                
            }
        }
    }
    

      

    然后再Programe.cs中实例化p1,p2两个点,计算距离

    using System;
    using System.Collections.Generic;
    using System.Linq;
    using System.Text;
    using System.Threading.Tasks;
    
    namespace Classes_2_point_distance
    {
        class Program
        {
            static void Main(string[] args)
            {
                //int x1 = -1;
                //int y1 = -1;
                int x2 = int.Parse(Console.ReadLine());
                int y2 = int.Parse(Console.ReadLine());
    
                //int xdiff = x2 - x1;
                //int ydiff = y2 - y1;
                //double distance = Math.Sqrt(xdiff * xdiff + ydiff * ydiff);
    
                //Console.WriteLine(distance);
                //Console.ReadKey();
    
                Point p1 = new Point();
                Point p2 = new Point(x2, y2);
                double distance = p1.Distance(p2);
                Console.WriteLine(distance);
                Console.ReadKey();
    
    
    
            }
        }
    }
    

      

  • 相关阅读:
    Map的两张遍历方法 keySet(),entrySet()
    http://localhost:8080请求用户名和密码。信息为:“XDB” 解决办法
    redis 集群出现的错误
    通信 缩略词
    redis
    hadoop 概念
    mysql 集群的一些概念
    SQL 基本关键字 函数 关联 连接
    JAVA集合
    SQL.Cookbook 读书笔记5 元数据查询
  • 原文地址:https://www.cnblogs.com/SeekHit/p/4322454.html
Copyright © 2011-2022 走看看