显示结构C++成员的相同值
Display same values of a member of structure C++
我有一个几何图形列表,其中包含:图形和体积的代码。例如:
我需要001 213.1
002 414.7
003 718.3
004 414.7
005 718.3
006 114.5
找到重复的音量值并显示它,所以在出口处我需要得到:
002 414.7
004 414.7
003 718.3
005 718.3
请帮助我
struct Sfere
{
char codsf[5];
float volum;
} sf[100];
让我们再试一次:
static const unsigned int ID_CAPACITY = 256;
static const unsigned int MAX_UNIQUE_VOLUMES = 512;
struct Record
{
double volume;
int ids[ID_CAPACITY];
unsigned int ids_size;
};
Record database[MAX_UNIQUE_VOLUMES];
int main()
{
double volume;
int id;
static const double epsilon = 1e-06;
unsigned int database_size = 0U;
std::ifstream input_file("data.txt");
while (input_file >> id >> volume)
{
bool volume_is_duplicate(false);
// Find a duplicate volume
for (unsigned int i = 0U; i < database_size; ++i)
{
const double volume_from_database = database[i].volume;
const double diff = std::abs(volume - volume_from_database);
if (diff < epsilon)
{
unsigned int id_index = database[i].ids_size;
database[i].ids[id_index] = id;
++(database[i].ids_size);
duplicate_volume = true;
break;
}
}
if (!duplicate_volume)
{
Record r;
r.volume = volume;
r.ids[0] = id;
r.ids_size = 1;
database[database_size] = r;
++database;
}
}
std::cout << "nnPaused. Press ENTER to continue.n";
std::cin.ignore(100000, 'n');
return 0;
}
在上面的程序中,记录作为两个单独的变量读入。 在数据库中搜索等效卷。 如果存在等效卷,则新值将追加到 ID 容器。 如果卷是唯一的,则记录将追加到数据库中。
数据库的打印留作OP的练习(以及边界/范围检查(。
这里的诀窍是按卷而不是按 ID 组织数据库。 每个数据库记录将包含等效卷的 ID:
vol. IDs
+-------+-----+
| 213.1 | 001 |
+-------+-----+-----+
| 414.7 | 002 | 004 |
+-------+-----+-----+
| 718.3 | 003 | 005 |
+-------+-----+-----+
| 114.5 | 006 |
+-------+-----+
相关文章:
- 如何在C++中定义静态成员结构
- 使用模板化类的成员结构
- 初始化固定的 C 数组成员结构
- 指向成员结构的指针如何工作
- 如何将此“指针从外部类传递到成员结构
- 导致IAR ARM中出现错误的成员结构位字段元素的Initializer列表初始化
- 映射文件中成员结构的地址
- Visual C++ 模板类成员结构初始化语法糖
- C :初始化成员结构的静态字段的正确方法
- 如何在C 类的初始化器列表中使用未命名结构初始化成员结构
- 从成员结构的成员函数中访问类的成员?
- 模板化类的成员函数无法返回指向成员结构的指针?
- 重载非类型模板结构的成员结构的复制赋值运算符
- 灵气属性传播问题与单成员结构.
- 将具有 int* 成员C++结构编接到 C#
- 复杂的班级成员结构
- 将向量成员(结构)传递给函数
- 成员结构的前向声明
- 重载运算符<<用于模板结构中定义的成员结构
- 返回带有模板化类的类成员结构