zoukankan      html  css  js  c++  java
  • C++ 百炼成钢20

    题目56:

    编写C++程序完成以下功能:
    (1)定义一个Point类,其属性包括点的坐标,提供计算两点之间距离的方法;
    (2)定义一个圆形类,其属性包括圆心和半径;
    (3)创建两个圆形对象,提示用户输入圆心坐标和半径,判断两个圆是否相交,并输出结果。

    //点类声明
    #include<iostream>
    #pragma once
    //这句代码相当于#ifndef MyP   #define MyP     #endif这三句代码,都是为了防止重定义
    //#ifndef MyP
    //#define MyP
    class MyPoint{
    public:
        //初始化点
        void Init(int x0, int y0);
        //计算距离
        double calculationdistance(MyPoint &mp1);
    private:
        int x;
        int y;
    };
    //
    //#endif
    //点类的实现
    #include<iostream>
    #include"MyPoint.h"
    
    //初始化点
    void MyPoint::Init(int x0, int y0){
        x = x0;
        y = y0;
    }
    
    double MyPoint::calculationdistance(MyPoint &mp1){
        double d =sqrt((x - mp1.x)*(x - mp1.x) + (y - mp1.y)*(y - mp1.y));
        return d;
    }
    //圆类声明
    #pragma once
    
    class MyCircle{
    public:
        void Init(double x0, double y0, double r0);
        int jugdeintersect(MyCircle &mc1);
    private:
        double x;
        double y;
        double r;
    };
    //圆类的实现
    #include<iostream>
    #include"MyCircle.h"
    
    using namespace std;
    
    void MyCircle::Init(double x0, double y0, double r0){
        x = x0;
        y = y0;
        r = r0;
    }
    
    int MyCircle::jugdeintersect(MyCircle &mc1){
        int ret = 0;
        double temp = 0.0, temp2=0.0;
        temp = sqrt((x - mc1.x)*(x - mc1.x) + (y - mc1.y)*(y - mc1.y));
        temp2 = r + mc1.r;
        if (temp>temp2)
        {
            //表示两圆不相交
            ret = 1;
        }
        return ret;
    }
    /*
    编写C++程序完成以下功能:
    (1)定义一个Point类,其属性包括点的坐标,提供计算两点之间距离的方法;
    (2)定义一个圆形类,其属性包括圆心和半径;
    (3)创建两个圆形对象,提示用户输入圆心坐标和半径,判断两个圆是否相交,并输出结果。
    */
    #include<iostream>
    #include"MyCircle.h"
    #include"MyPoint.h"
    
    using namespace std;
    
    void main(){
        //定义两个点
        //MyPoint mp1, mp2;
        //mp1.Init(1, 1);
        //mp2.Init(1, 2);
        //printf("两点之间的距离%lf
    ", mp1.calculationdistance(mp2));
        //定义两个圆
        MyCircle c1, c2;
        c1.Init(1, 1, 1);
        c2.Init(1, 4, 1);
        if (c1.jugdeintersect(c2))
        {
            printf("两圆不相交
    ");
        }
        else{
            printf("两圆相交
    ");
        }
        system("pause");
    }
  • 相关阅读:
    【计算机网络】第三章 数据链路层
    【网页设计】第四周 JavaSript
    【计算机网络】第二章 物理层
    【计算机网络】第一章 概述
    [寒假学习]ps知识
    [蓝桥杯]算法提高 GPA
    用Java模拟游戏重力的实现(弹跳)
    【狼叔分享】狼叔20年上半年故事分享
    旷视教会我如何安装tensorflow环境|这才是真正的pip install tensorflow
    大学逆袭的三步骤:大三实习、大四秋招、大四春招
  • 原文地址:https://www.cnblogs.com/zhanggaofeng/p/5593331.html
Copyright © 2011-2022 走看看