我需要一些帮助来解决以下问题,即使用getArea()方法计算出数组中每个圆的区域。如何使用Circle :: getArea()成员函数访问数组然后计算圆的区域。
Main.cpp文件
#include <iostream>
#include <cstdlib>
#include <ctime>
using namespace std;
#include "Circle.h"
#include "Random.h"
int main()
{
// Array 1, below section is to populate the array with random
// radius number within lower and upper range
int CircleArrayOne [5];
const int NUM = 5;
srand(time(NULL));
for(int x = 0; x < NUM; ++x)
{
CircleArrayOne[x] = Random::random(1, 40); // assumed 0 and 40 as the bounds
}
// output the radius of each circle
cout << "Below is the radius each of the five circles in the second array. " << endl;
// below is to output the radius in the array
for(int i = 0; i < NUM; ++i)
{
cout << CircleArrayOne[i] << endl;
}
// Here I want to access the array to work out the area using
// float Circl::getArea()
system("PAUSE");
return 0;
}
float Circle::getArea()
{
double PI = 3.14;
return (PI * (Radius*Radius));
}
float Circle::getRadius()
{
return Radius;
}
int Random::random(int lower, int upper)
{
int range = upper - lower + 1;
return (rand() % range + lower);
}
Circle.h文件
#pragma once
#include <string>
class Circle
{
private:
float Radius;
public:
Circle(); // initialised radius to 0
Circle(float r); // accepts an argument and assign its value to the radius attribute
void setRadius(float r); // sets radius to a value provided by its radius parameter (r)
float getRadius(); // returns the radius of a circle
float getArea(); // calculates and returns the areas of its circle
};
感谢。 非常感谢很多帮助。
答案 0 :(得分:1)
到目前为止,您只有圆圈的随机半径,但没有Circle
个对象。所以,首先创建圆形对象。
Circle obj[5]; // Create 5 objects default constructed.
现在使用setRadius
设置每个对象半径并在每个对象上调用区域。