c++_area
Thu Apr 24 2025 20:55:24 GMT+0000 (Coordinated Universal Time)
Saved by
@tino
#include <iostream>
#include <cmath>
class Pin {
public:
int id;
int n_ring;
float* radius;
Pin(int id, int n_ring, float* rad) : id(id), n_ring(n_ring) {
radius = new float[n_ring];
for (int i = 0; i < n_ring; i++) {
radius[i] = rad[i];
}
}
~Pin() {
delete[] radius;
}
float calc_total_area() {
float area = 0.0;
for (int i = 0; i < n_ring; i++) {
area += M_PI * radius[i] * radius[i];
}
return area;
}
float calc_total_volume() {
float volume = 0.0;
for (int i = 0; i < n_ring; i++) {
volume += (4.0 / 3.0) * M_PI * radius[i] * radius[i] * radius[i];
}
return volume;
}
void print() {
std::cout << "Pin ID: " << id << ", Rings: " << n_ring << "\n";
std::cout << "Total Area: " << calc_total_area() << "\n";
std::cout << "Total Volume: " << calc_total_volume() << "\n";
}
};
int main() {
float rad[] = {1.0, 2.0};
Pin p(1, 2, rad);
p.print();
return 0;
}
content_copyCOPY
Comments