• 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();
    
    
    
            }
        }
    }
    

      

  • 相关阅读:
    修改url地址参数
    jquery点击click事件和blur事件冲突如何解决
    js 小数点 取整数
    js正则表达式 验证手机号,email地址和邮政编码
    js轮播功能 标签自动切换 同页面多轮播js
    json 数组操作
    Jquery页面中添加键盘按键事件,如ESC事件
    记录一下。。。服务器 共享文件夹 模拟模拟 IIS 验证的帐户或用户
    vs2015 js 无智能提示解决办法
    解决poshytip 表单高度大于屏幕高端 显示问题
  • 原文地址:https://www.cnblogs.com/SeekHit/p/4322454.html
Copyright © 2020-2023  润新知