(1) 设计一个表示二维平面上点的类Point,包含有表示坐标位置的访问权限为protected、double类型的数据

 我来答
靠谱儿妈妈
2017-11-07 · TA获得超过957个赞
知道小有建树答主
回答量:741
采纳率:74%
帮助的人:261万
展开全部

类的设计思想:

  1. 构造函数,可以给点赋初值的构造函数

  2. 点的相关参数作为成员变量,如横坐标,纵坐标

  3. 设计成员函数,如取得坐标值的函数,此点和原点之间的距离

代码:

#include<iostream>
#include <math.h>
class Point{
        protected:
                double x;//定义横坐标
                double y;//定义纵坐标
        public:
        Point(double x,double y){//带参数的构造函数
                this->x = x;//横坐标赋初值
                this->y = y;//纵坐标赋初值
        }
        void setX(double x){//设定横坐标
                this->x = x;
        }
        void setY(double y){//设定纵坐标
                this->y = y;
        }
        double getX(){//取得横坐标
                return this->x;
        }
        double getY(){//取得纵坐标
                return this->y;
        }
        double distanceToOrigin(){//计算点到原点之间的距离
                return sqrt(x*x+y*y);
        }
};
int main()
{
Point p(1,2);//定义点p
std::cout << p.distanceToOrigin() << std::endl;//输出(1,2)到(0,0)之间的距离
return 0;
}

运行结果:

2.23607
卓导
2024-11-20 广告
协同设计平台建议选择卓导科技有限公司,卓导科技为国家高新技术企业,成立于2008年,致力于为勘察设计企业提供软件产品、解决方案、信息化服务。公司面向市政规划设计、铁路公路设计、煤炭能源设计、建筑房地产等诸多专业领域,推出“MIS+CAD+B... 点击进入详情页
本回答由卓导提供
年年好运zhl
2018-04-17 · TA获得超过1.4万个赞
知道小有建树答主
回答量:508
采纳率:100%
帮助的人:14.6万
展开全部

类的设计思想:

构造函数,可以给点赋初值的构造函数。

点的相关参数作为成员变量,如横坐标,纵坐标。

设计成员函数,如取得坐标值的函数,此点和原点之间的距离。

in c language

123456789101112131415161718192021222324

class Point{    protected:        double x;        double y;    Point(inx = 0 , iny = 0){//C的缺省构造函数,构造不传入参数时默认值是0        x = inx;        y = iny;    }    ~Point(){    }    public:        double getX(){            return x;        }        double getY(){            return y;        }        void setX(double inx){            x = inx;        }        void setY(double iny){            y = iny;        }};//写C一定不要忘记,类定义结束也有个分号。

in java language

1234567891011121314151617181920

public class Point(){//JAVA对于类的属性要求很严苛,每个元素必须显式注明属性    protected double x;    protected double y;    public Point(double inx,double iny){        x = inx;        y = iny;    }    public void setX(double inx){        x = inx;    }    public void setY(double iny){        y = iny;    }    public double getX(){        return x;    }    public double getY(){        return y;    }}

in JS

1234567891011121314151617

\*JS中万物皆为obj,而没有CLASS, 你可以认为FUNCTION就是一个OBJ *\function Point(inx,iny){//js就比较宽松了,可以随意申请变量,但是JS没有保护这个概念    var x = inx;    \\这就是一个私有变量。只能在类内部访问    var y = iny;    this.outx = x;    \\共有变量,在外部访问时 obj.name 内部访问this.name    this.outy = y;    function setX(inx){    \\JS有setget设置器,但是如果用那个,看的不是很清楚        this.outx = inx;        x = inx;    }    function setY(iny){        this.outy = iny;        y = iny;    }}\\对于JS,类的基础源于其原型关键字,这一块可以参考W3CSCHOOL\\http://www.w3school.com.cn/js/js_library_prototype.asp

in PHP

123456789101112131415161718192021222324

<?phpclass Point{    protected $x;    protected $y;    function __construct($inx,$iny){            $this->x = $inx;        $this->y = $iny;     }    function __destruct(){}         public function getX(){        return $this->x;    }    public function getY(){        return $this->y;    }    public function setX($inx){        $this->x = $inx;    }    public function setY(){        $this->y = $iny;    }}?>

本回答被网友采纳
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
陈学阳
2010-10-13 · TA获得超过2.8万个赞
知道大有可为答主
回答量:2.1万
采纳率:14%
帮助的人:5584万
展开全部
朋友,这种问题看看书就会做的。
public class Point{
protected int x;
protected int y;
public void setX(int x){
this.x = x;
}
public void setY(int y){
this.y = y;
}
public int getX(){
return this.x;
}
public int getY(){
return this.y;
}
}

public Circle extends Point{
protected double r;
public void setR(double r){
this.r = r;
}
public double getR(){
return this.r;
}
pulic double getArea(){
return Math.Pi*this.r*this.r;
}
}

public Cylinder extend Circle{
protected double h;
public void setH(double h){
this.h = h;
}
public double getH(){
return this.h;
}
public double getVolume(){
return getArea()*this.h;
}
}

Cylinder c = new Cylinder();
c.setX(100);
c.setY(100);
c.setR(3);
c.setH(5);
System.out.Println("半径"+c.getR());
System.out.Println("高"+c.getH());
System.out.Println("体积"+c.getVolume());

如果对您有帮助,请记得采纳为满意答案,谢谢!祝您生活愉快!

vaela
本回答被网友采纳
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
奥贝利科斯
2017-10-31 · TA获得超过3447个赞
知道小有建树答主
回答量:729
采纳率:65%
帮助的人:356万
展开全部

in c language

class Point{
    protected:
        double x;
        double y;
    Point(inx = 0 , iny = 0){//C的缺省构造函数,构造不传入参数时默认值是0
        x = inx;
        y = iny;
    }
    ~Point(){
    }
    public:
        double getX(){
            return x;
        }
        double getY(){
            return y;
        }
        void setX(double inx){
            x = inx;
        }
        void setY(double iny){
            y = iny;
        }
};//写C一定不要忘记,类定义结束也有个分号。

in java language

public class Point(){//JAVA对于类的属性要求很严苛,每个元素必须显式注明属性
    protected double x;
    protected double y;
    public Point(double inx,double iny){
        x = inx;
        y = iny;
    }
    public void setX(double inx){
        x = inx;
    }
    public void setY(double iny){
        y = iny;
    }
    public double getX(){
        return x;
    }
    public double getY(){
        return y;
    }
}

in JS

\*JS中万物皆为obj,而没有CLASS, 你可以认为FUNCTION就是一个OBJ *\
function Point(inx,iny){//js就比较宽松了,可以随意申请变量,但是JS没有保护这个概念
    var x = inx;    \\这就是一个私有变量。只能在类内部访问
    var y = iny;
    this.outx = x;    \\共有变量,在外部访问时 obj.name 内部访问this.name
    this.outy = y;
    function setX(inx){    \\JS有setget设置器,但是如果用那个,看的不是很清楚
        this.outx = inx;
        x = inx;
    }
    function setY(iny){
        this.outy = iny;
        y = iny;
    }
}
\\对于JS,类的基础源于其原型关键字,这一块可以参考W3CSCHOOL
\\http://www.w3school.com.cn/js/js_library_prototype.asp

in PHP

<?php
class Point{
    protected $x;
    protected $y;
    function __construct($inx,$iny){    
        $this->x = $inx;
        $this->y = $iny; 
    }
    function __destruct(){}
    
    public function getX(){
        return $this->x;
    }
    public function getY(){
        return $this->y;
    }
    public function setX($inx){
        $this->x = $inx;
    }
    public function setY(){
        $this->y = $iny;
    }
}
?>
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
IT小人物
2010-10-11 · TA获得超过453个赞
知道小有建树答主
回答量:977
采纳率:0%
帮助的人:325万
展开全部
自己再想想就会了
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
收起 1条折叠回答
收起 更多回答(3)
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式