#include <stdio.h>
#define DATA_SIZE 58
#define MAX_PEAKS 20
int main() {
double time[DATA_SIZE
] = { 13.1, 13.2, 13.3, 13.4, 13.5, 13.6, 13.7, 13.8, 13.9, 14.0,
14.1, 14.2, 14.3, 14.4, 14.5, 14.6, 14.7, 14.8, 14.9, 15.0,
15.1, 15.2, 15.3, 15.4, 15.5, 15.6, 15.7, 15.8, 15.9, 16.0,
16.1, 16.2, 16.3, 16.4, 16.5, 16.6, 16.7, 16.8, 16.9,
17.0, 17.1, 17.2, 17.3, 17.4, 17.5, 17.6, 17.7, 17.8, 17.9,
18.0, 18.1, 18.2, 18.3, 18.4, 18.5, 18.6, 18.7
};
double value[DATA_SIZE] = {
2.356458, 2.356458, 2.353911, 2.356458, 2.379380,
2.847997, 3.477066, 3.869279, 3.999167, 4.016995,
3.994073, 3.986433, 3.976246, 3.955871, 3.915122,
3.456691, 2.483800, 2.379380, 2.359005, 2.361552,
2.366645, 2.364099, 2.361552, 2.356458, 2.374286,
2.695187, 3.334443, 3.837717, 3.996620, 3.999167,
3.983886, 3.999167, 3.983886, 3.988980, 3.981339,
3.861638, 2.972792, 2.407395, 2.378833, 2.356458,
2.356458, 2.356458, 2.356458, 2.356458, 2.356458,
2.356458, 2.356458, 2.356458, 2.356458, 2.356458,
2.356458, 2.356458, 2.356458, 2.356458, 2.356458,
2.356458, 2.356458
};
double peak_times[MAX_PEAKS];
double peak_values[MAX_PEAKS];
int peak_count = 0;
for (int i = 1; i < DATA_SIZE - 1; i++) {
if (value[i] > value[i - 1] && value[i] > value[i + 1]) {
if (peak_count < MAX_PEAKS) {
peak_times
[peak_count
] = time[i
]; peak_values[peak_count] = value[i];
peak_count++;
}
}
}
printf("=== 実験2(10Hz)ピーク検出結果 ===\n"); printf("検出されたピーク数: %d\n\n", peak_count
); for (int i = 0; i < peak_count; i++) {
printf("ピーク %d: 時間 = %.1f 秒, 電位 = %.6f V\n", i
+ 1, peak_times
[i
], peak_values
[i
]); }
return 0;
}
I2luY2x1ZGUgPHN0ZGlvLmg+CgojZGVmaW5lIERBVEFfU0laRSA1OCAKI2RlZmluZSBNQVhfUEVBS1MgMjAKCmludCBtYWluKCkgewogICAgZG91YmxlIHRpbWVbREFUQV9TSVpFXSA9IHsKICAgICAgICAxMy4xLCAxMy4yLCAxMy4zLCAxMy40LCAxMy41LCAxMy42LCAxMy43LCAxMy44LCAxMy45LCAxNC4wLAogICAgICAgIDE0LjEsIDE0LjIsIDE0LjMsIDE0LjQsIDE0LjUsIDE0LjYsIDE0LjcsIDE0LjgsIDE0LjksIDE1LjAsCiAgICAgICAgMTUuMSwgMTUuMiwgMTUuMywgMTUuNCwgMTUuNSwgMTUuNiwgMTUuNywgMTUuOCwgMTUuOSwgMTYuMCwKICAgICAgICAxNi4xLCAxNi4yLCAxNi4zLCAxNi40LCAxNi41LCAxNi42LCAxNi43LCAxNi44LCAxNi45LAogICAgICAgIDE3LjAsIDE3LjEsIDE3LjIsIDE3LjMsIDE3LjQsIDE3LjUsIDE3LjYsIDE3LjcsIDE3LjgsIDE3LjksCiAgICAgICAgMTguMCwgMTguMSwgMTguMiwgMTguMywgMTguNCwgMTguNSwgMTguNiwgMTguNwogICAgfTsKCiAgICBkb3VibGUgdmFsdWVbREFUQV9TSVpFXSA9IHsKICAgICAgICAyLjM1NjQ1OCwgMi4zNTY0NTgsIDIuMzUzOTExLCAyLjM1NjQ1OCwgMi4zNzkzODAsCiAgICAgICAgMi44NDc5OTcsIDMuNDc3MDY2LCAzLjg2OTI3OSwgMy45OTkxNjcsIDQuMDE2OTk1LAogICAgICAgIDMuOTk0MDczLCAzLjk4NjQzMywgMy45NzYyNDYsIDMuOTU1ODcxLCAzLjkxNTEyMiwKICAgICAgICAzLjQ1NjY5MSwgMi40ODM4MDAsIDIuMzc5MzgwLCAyLjM1OTAwNSwgMi4zNjE1NTIsCiAgICAgICAgMi4zNjY2NDUsIDIuMzY0MDk5LCAyLjM2MTU1MiwgMi4zNTY0NTgsIDIuMzc0Mjg2LAogICAgICAgIDIuNjk1MTg3LCAzLjMzNDQ0MywgMy44Mzc3MTcsIDMuOTk2NjIwLCAzLjk5OTE2NywKICAgICAgICAzLjk4Mzg4NiwgMy45OTkxNjcsIDMuOTgzODg2LCAzLjk4ODk4MCwgMy45ODEzMzksCiAgICAgICAgMy44NjE2MzgsIDIuOTcyNzkyLCAyLjQwNzM5NSwgMi4zNzg4MzMsIDIuMzU2NDU4LAogICAgICAgIDIuMzU2NDU4LCAyLjM1NjQ1OCwgMi4zNTY0NTgsIDIuMzU2NDU4LCAyLjM1NjQ1OCwKICAgICAgICAyLjM1NjQ1OCwgMi4zNTY0NTgsIDIuMzU2NDU4LCAyLjM1NjQ1OCwgMi4zNTY0NTgsCiAgICAgICAgMi4zNTY0NTgsIDIuMzU2NDU4LCAyLjM1NjQ1OCwgMi4zNTY0NTgsIDIuMzU2NDU4LAogICAgICAgIDIuMzU2NDU4LCAyLjM1NjQ1OAogICAgfTsKCiAgICBkb3VibGUgcGVha190aW1lc1tNQVhfUEVBS1NdOwogICAgZG91YmxlIHBlYWtfdmFsdWVzW01BWF9QRUFLU107CiAgICBpbnQgcGVha19jb3VudCA9IDA7CgogICAgZm9yIChpbnQgaSA9IDE7IGkgPCBEQVRBX1NJWkUgLSAxOyBpKyspIHsKICAgICAgICBpZiAodmFsdWVbaV0gPiB2YWx1ZVtpIC0gMV0gJiYgdmFsdWVbaV0gPiB2YWx1ZVtpICsgMV0pIHsKICAgICAgICAgICAgaWYgKHBlYWtfY291bnQgPCBNQVhfUEVBS1MpIHsKICAgICAgICAgICAgICAgIHBlYWtfdGltZXNbcGVha19jb3VudF0gPSB0aW1lW2ldOwogICAgICAgICAgICAgICAgcGVha192YWx1ZXNbcGVha19jb3VudF0gPSB2YWx1ZVtpXTsKICAgICAgICAgICAgICAgIHBlYWtfY291bnQrKzsKICAgICAgICAgICAgfQogICAgICAgIH0KICAgIH0KCiAgICAKICAgIHByaW50ZigiPT09IOWun+mokzLvvIgxMEh677yJ44OU44O844Kv5qSc5Ye657WQ5p6cID09PVxuIik7CiAgICBwcmludGYoIuaknOWHuuOBleOCjOOBn+ODlOODvOOCr+aVsDogJWRcblxuIiwgcGVha19jb3VudCk7CiAgICBmb3IgKGludCBpID0gMDsgaSA8IHBlYWtfY291bnQ7IGkrKykgewogICAgICAgIHByaW50Zigi44OU44O844KvICVkOiDmmYLplpMgPSAlLjFmIOenkiwg6Zu75L2NID0gJS42ZiBWXG4iLCBpICsgMSwgcGVha190aW1lc1tpXSwgcGVha192YWx1ZXNbaV0pOwogICAgfQoKICAgIHJldHVybiAwOwp9Cg==