首页 > 其他分享 >5月6日打卡

5月6日打卡

时间:2023-05-07 11:34:31浏览次数:38  
标签:题目 Point int 线段 打卡 include 描述

例4-4

题目描述:

类的组合,线段类。

我们使用一个类来描述线段,使用4.3节中Point类的对象来表示端点。这个问题可以用类的组合来解决 ,使Line类包括Point类的两个对象p1和p2,作为其数据成员。Line类具有计算线段长度的功能,在构造函数中实现。

代码部分:

#include<iostream>
#include<cmath>
using namespace std;
class Point {
private:
    int x, y;
public:
    Point(int xx=0, int yy=0)
    {
        x = xx;
        y = yy;
    }
    Point(Point& p)
    {
        x = p.x;
        y = p.y;
        cout << "Calling the copy constructor of Point" << endl;
    }
    int getX()
    {
        return x;
    }
    int getY()
    {
        return y;
    }
};
class Line {
private:
    Point p1, p2;
    double len;
public:
    Line(Point xp1, Point xp2):p1(xp1),p2(xp2)
    {
        cout << "Calling constructor of Line" << endl;
        double x = p1.getX() - p2.getX();
        double y = p1.getX() - p2.getX();
        len = sqrt(x * x + y * y);
    }
    Line(Line& l)
    {
        len = l.len;
        cout << "Calling the copy constructor of Line" << endl;
    }
    double getLen() { return len;}

};
int main()
{
    Point myp1(1, 1), myp2(4, 5);
    Line line(myp1, myp2);
    Line line2(line);
    cout << "The length of the line is:";
    cout << line.getLen() << endl;
    cout << "The length of the line2 is :";
    cout << line2.getLen()<< endl;
    return 0;
}

例4-7

题目描述:

用结构体表述学生基本信息

代码部分:

#include<iostream>
using namespace std;
struct Student {
    int num;
    string name;
    char sex;
    int age;
};
int main()
{
    Student stu = { 97001,"Lin Lin",'F',19 };
    cout << "Num:" << stu.num << endl;
    cout << "Name:" << stu.name << endl;
    cout << "Sex:" << stu.sex << endl;
    cout << "Age:" << stu.age << endl;
    return 0;
}

例4-8

题目描述:

使用联合体保存成绩信息,并且输出。

 

标签:题目,Point,int,线段,打卡,include,描述
From: https://www.cnblogs.com/xuechenhao173/p/17376042.html

相关文章

  • 第15天打卡
    问题:算法设计:直接暴力查找;运用多个判断语句即可源代码:#include<stdio.h>intmain(){longn,sum,i;while(scanf("%ld",&n)!=EOF){sum=0;for(i=7;i<=n;i++)if(i%7==0)if(i%6==5)if(i%5==4)if(i%3==2){sum++;printf("%ld\n",i);}printf("......
  • 每天打卡一小时 第二十天 承接十九天
    这段代码实现了两个大数相加的功能,其中BigNum是一个自定义的大数类,它的数据成员num是一个字符数组,用于存储大数。下面是对代码的解释:1.首先判断两个大数的符号,如果一个为正数,另一个为负数,则通过转换为减法的方式实现加法。2.定义一个新的BigNum对象s,用于存储相加后的结果;另外定......
  • 每日打卡
    完数问题:问题描述:一个等于因子之和的数称为完数,求一定范围内完数的数量代码:#include<stdio.h> intmain() {       inti,j,s,n;       printf("请选择输入上限:");       scanf("%d",&n);              for(i=2;i<=n;i++)  ......
  • 5.6打卡
    一、问题描述:一个口袋中放有12个球,已知其中3个是红的,3个是白的,6个是黑的,现从中任取8个,问共有多少种可能的颜色搭配?二、设计思路:根据问题描述可设任取的8个球中红球为m个,白球为n个,则黑球为8-m-n个。又已知12个球中有3个红球,3个白球,6个黑球,因此,m的取值范围为[0,3],n的取值范围因此为[......
  • 2023.5.6编程一小时打卡
    一、问题描述:键盘输入“Iamastudent./MyuniversityisSTDU./Ilovemyuniversity.”用流对象的成员函数get读取并打印到屏幕上;分别用流对象的成员函数get函数和getline函数读取第一个“/”之前的字符串,之后观察当前指针所指内容,观察是否有差别,若有,请在实验报告中描述;......
  • 5-5打卡
    '''typedefstructlist{intdata;list*next;}list;list*initlist(){list*a=newlist;a->data=0;a->next=NULL;returna;}voidpushback(list**h,intn){list*a=newlist;a->data=n;a->next=NULL;list*p=*......
  • c++打卡第十九天
    一、问题描述 二、设计思路。①、定义总鱼数为x条,这个x我们需要使用double类型定义,②、第一次剩余x1=x-(x/2+1/2);第二次剩余x2=x1-(x1/3+1/3)第三次剩余x3=x2-(x2/4+1/4)第四次剩余x4=x3-(x3/5+1/5)x4=11;③、我们可以使用循环实现此方程。即x-(x/j+1/j);③、使用数组存储每次卖鱼......
  • 打卡8
    #include<iostream>usingnamespacestd;intmain(){ for(inti=1;i<=9;i++) { for(intj=1;j<=i;j++) { cout<<i<<"*"<<j<<"="<<i*j<<""; } cout<<endl; } system("pau......
  • 每天打卡一小时 第十九天 编译四部曲
    第一部曲自然语言 先将大数类的框架写好,再定义其中的函数分别写出每一个函数,通过分步骤的方法解决问题 有参构造函数首先声明函数时,默认参数定义根据数值的正负进行选择 然后进行循环将数字进行输入拷贝构造函数循环进行赋值操作公有函数成员选择正负符号循环赋......
  • 第14天打卡
    问题: 源代码:#include<iostream>using namespace std;int main(){for(int i=95859+1;i<100000;i++){int a=i/10000,b=i/1000%10,c=i/10%10,d=i%10;if(a==d&&b==c){cout<<i;break;}}} ......