我正在尝试使用变量“ sum”作为上限,在数组“ size”中获取最近的上限(除非找到等效值)的索引,然后在相同的索引处在数组“ value”中查找该值。
例如:如果“ sum”的值为270,则我的程序应该找到位于
例如:如果“ sum”的值为270,则我的程序应该找到位于
size
中的索引6处的值280,并输出相应value[6]
的值。#include <iostream>
#include <cmath>
#include <cstring>
using namespace std;
int main()
{
double x = 0;
double y = 0;
double sum = 0;
double size[27] = {24, 28, 32, 38, 48, 240, 280, 320, 360, 380,
420, 480, 560, 600, 640, 700, 720, 800, 840,
960, 980, 1120, 1200, 1280, 1440, 1680, 1920};
double value[27] = {.0022, .0026, .0029, .0035, .0044, .0219,
.0256, .0292, .0328, .0384, .0438, .0513,
.0547, .0584, .0641,.0656, .073, .0766,
.0875, .0877, .0897, .1023, .1094, .1169,
.1313, .1531, .175};
cout << "Enter width: " << endl;
cin >> x;
cout << "Enter height: " << endl;
cin >> y;
x = ceil(x) + 3;
y = ceil(y) + 3;
sum = x * y;
}
std::upper_bound
这样的命名函数就好了……还有,value
数组是怎么回事?你为什么要用double
初始化它,然后再将这些(现在都是0)值复制到size
中呢? - user657267memcpy
而不是std::copy
有什么原因吗? - user1804599