如何在随机数列表中查找大于或小于的元素
How to find elements greater than or less than in a list on random number
我有一个元素列表(随机数字(,这些元素在输出时不断变化(100个索引(,我想处理的是,如果输出时生成的任何数字(即使是一(等于或大于数字'27',则打开led,但如果数字都小于'27'则关闭led。我为其创建的逻辑不起作用,即使我得到的数字输出值超过27(如25,26.5,27.8,23,29.01,30.87,23……等等(,LED仍然没有准确打开。这是我从Arduino代码的一部分:
for (int x = 0 ; x < 101 ; x++)
{
Serial.print("Pixel ");
Serial.print(x);
Serial.print(": ");
Serial.print(myList[x], 2); #myList has got the 100 random numeric values
Serial.print("C");
Serial.println();
if(myList[x<100]>=27)
digitalWrite(ledPin, HIGH);
if(myList[x<10]<27)
digitalWrite(ledPin, LOW);
}
解决问题的一种可能方法是在数组中找到最大值。这可以通过在数组上使用单程(循环(来完成。
如果最大值小于27
,则所有值都小于27
。
如果最大值等于或大于27
,则满足该条件。
当你发现一个值等于27
时,你可以通过打破循环来"优化"这一点,而不需要找到更大的值。
这是一个简单的搜索算法,它可能会帮助您:
void loop{
...
...
...
boolean found = false;
int x = 0;
while(x<101 && !found){
if(myList[x]>=27){
found = true;
}
x++;
}
if(found) digitalWrite(ledPin, HIGH);
else digitalWrite(ledPin, LOW);
}
相关文章:
- 处理小于cpu数据总线的数据类型.(c++转换为机器代码)
- 大于65535的C++数组[size]引发不一致的溢出
- 查找最接近的大于当前数字的数字的索引
- 从值小于256的uint16到uint8的Endian安全转换
- 将stl字符串缩小到小于15个字符的容量
- 如何检查两个 std::向量在小于 O(n) 的时间复杂度内是否相等
- 如何找到大于整数的最小数字
- 如何在随机数列表中查找大于或小于的元素
- 创建一个循环,该循环将输出大于零且小于 60(不包括 60)的所有 5 的倍数
- 节点小于且大于特定节点的节点数
- 如何做比率和大于和小于C++
- 互锁。比较交换<Int> 使用大于或小于而不是相等
- 在C++中获取大于或等于一个双精度的最小浮点值(以及小于或等于一的最大浮点值)
- 如何返回小于或等于平均值的整数和大于平均值的整数
- 对字符串和基本数据类型应用大于或小于检查
- 是否有一种方法可以正确地比较一个float值是否大于/小于另一个
- 在 std::sort() 中的自定义函数中,>(大于)运算符与 <(小于运算符)的交换会导致分段错误吗?
- 大于和小于在一起
- 如何在同一个while循环中求大于和小于的数
- 如何直观地理解C++优先级队列容器比较器中的大于/小于运算符