c++ - 如何计算 double 组中特定范围内的值数

标签 c++

例如,我有一个 double 组,我想搜索等于 2.0 的值,但由于它是一个 double 组,因此很难找到准确的值,所以我想找到 2- 范围内的值1e-10,2+1e-10。我看到有些人使用 upper_bound 和 lower_bound 来做到这一点。 我该怎么做?

最佳答案

只需使用谓词:

std::count_if(
    begin(array),
    end(array),
    [](double v) { return std::abs(v - 2.0) <= 1e-10; }
);

关于c++ - 如何计算 double 组中特定范围内的值数,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/42559023/

相关文章:

c++ - 使用 cuda_add_executable 命令的 Cmake 错误

c++ - 为什么允许类型别名作为变量名?

c++ - 如何将数据从一个 Windows 应用程序复制到另一个 Windows 应用程序?

c++ - 抽象类A继承类C "through"和 "intermediary"类B.如何声明虚函数?

c++ - 代码点中的 fstream 文件大小

c++ - 如何让 C++ 程序在用户输入时计算字数?

c++ - 本地类的限定名称

c++ - 多任务处理和测量时差

c++ - g++ : Can't catch an exception

c++ - Qt 创建者:c++:未定义对 Class::Function 的引用