定义一个正方形求面积和周长的cpp程序
时间: 2024-03-10 16:50:27 浏览: 28
好的,下面是一个求正方形面积和周长的C++程序:
```cpp
#include<iostream>
using namespace std;
int main()
{
float side, area, perimeter;
cout << "请输入正方形的边长:";
cin >> side;
area = side * side;
perimeter = 4 * side;
cout << "正方形的面积为:" << area << endl;
cout << "正方形的周长为:" << perimeter << endl;
return 0;
}
```
在程序中,我们首先定义了三个变量:side(正方形的边长)、area(正方形的面积)和perimeter(正方形的周长)。
接着,使用cout和cin语句,分别输出提示信息和读取用户输入的正方形边长。
然后,根据正方形的面积和周长的公式,计算出相应的结果,并使用cout语句输出。
最后,使用return 0语句结束程序。
相关问题
用cpp写一个求正方形面积周长的程序含正方形类
好的,下面是一个使用正方形类来计算正方形面积和周长的C++程序:
```cpp
#include <iostream>
using namespace std;
class Square {
private:
float side;
public:
Square(float s) : side(s) {}
float getArea() {
return side * side;
}
float getPerimeter() {
return 4 * side;
}
};
int main() {
float side;
cout << "请输入正方形的边长:";
cin >> side;
Square square(side);
cout << "正方形的面积为:" << square.getArea() << endl;
cout << "正方形的周长为:" << square.getPerimeter() << endl;
return 0;
}
```
在程序中,我们首先定义了一个Square类,类中包含一个私有成员变量side表示正方形的边长,以及两个公有成员函数getArea()和getPerimeter()分别用于计算正方形的面积和周长。
在主函数中,我们通过用户输入的正方形边长,创建一个Square对象,并调用Square的getArea()和getPerimeter()方法计算正方形面积和周长,并使用cout语句输出结果。
最后,使用return 0语句结束程序。
写一个程序,定义抽象基类Shape,由它派生出3个派生类:Circle(圆形)、Square(正方形)、Rectangle(矩形)。利用指针、虚函数printArea()、printLength()分别输出以上三者的面积和周长,三个图形的数据在定义对象时给定。另外实现一个通用的函数计算面积和周长,而不需要考虑是何种图形。
好的,我已经理解您的问题。以下是您所需要的程序:
```cpp
#include <iostream>
#include <cmath>
using namespace std;
// 定义抽象基类Shape
class Shape {
public:
virtual double getArea() = 0; // 获取面积的纯虚函数
virtual double getLength() = 0; // 获取周长的纯虚函数
virtual void printArea() = 0; // 输出面积的虚函数
virtual void printLength() = 0; // 输出周长的虚函数
};
// 定义派生类Circle
class Circle : public Shape {
public:
Circle(double r) : radius(r) {}
double getArea() { return 3.14 * radius * radius; }
double getLength() { return 2 * 3.14 * radius; }
void printArea() { cout << "圆形的面积为:" << getArea() << endl; }
void printLength() { cout << "圆形的周长为:" << getLength() << endl; }
private:
double radius;
};
// 定义派生类Square
class Square : public Shape {
public:
Square(double s) : side(s) {}
double getArea() { return side * side; }
double getLength() { return 4 * side; }
void printArea() { cout << "正方形的面积为:" << getArea() << endl; }
void printLength() { cout << "正方形的周长为:" << getLength() << endl; }
private:
double side;
};
// 定义派生类Rectangle
class Rectangle : public Shape {
public:
Rectangle(double l, double w) : length(l), width(w) {}
double getArea() { return length * width; }
double getLength() { return 2 * (length + width); }
void printArea() { cout << "矩形的面积为:" << getArea() << endl; }
void printLength() { cout << "矩形的周长为:" << getLength() << endl; }
private:
double length, width;
};
// 定义通用函数,计算面积和周长
void printShape(Shape* shape) {
shape->printArea();
shape->printLength();
}
int main() {
Circle c(5);
Square s(6);
Rectangle r(3, 4);
printShape(&c);
printShape(&s);
printShape(&r);
return 0;
}
```
在上述程序中,我们定义了一个抽象基类Shape,它包含了获取面积和周长的纯虚函数`getArea()`和`getLength()`,以及输出面积和周长的虚函数`printArea()`和`printLength()`。然后我们定义了三个派生类Circle、Square和Rectangle,分别表示圆形、正方形和矩形。这些派生类实现了基类Shape中的纯虚函数,并重载了虚函数`printArea()`和`printLength()`。在`main()`函数中,我们通过指针调用通用函数`printShape()`,分别输出三个图形的面积和周长。
希望这个程序能够满足您的需求。如果您还有任何问题,请随时问我。