#include <stdio.h>
#include <stdint.h>
struct Sensor {
char name[10];
uint8_t value;
};
// Filter and print only those sensors with value >= threshold
void print_above_threshold(struct Sensor sensors[], uint8_t n, uint8_t threshold) {
for (uint8_t i = 0; i < n; i++) {
if (sensors[i].value >= threshold) {
printf("%s %u\n", sensors[i].name, sensors[i].value);
}
}
}
int main() {
uint8_t n, threshold;
scanf("%hhu %hhu", &n, &threshold);
struct Sensor sensors[100];
for (uint8_t i = 0; i < n; i++) {
scanf("%s %hhu", sensors[i].name, &sensors[i].value);
}
print_above_threshold(sensors, n, threshold);
return 0;
}
Why It’s Important in Firmware?
Logic Summary
Input
4 50 T1 45 T2 67 T3 10 T4 90
Expected Output
T2 67 T4 90