#include <stdio.h>
#include <math.h>
#define N 24
#define A 0.4
#define B 1.0
int main() {
double sequence[N];
double sum = 0.0;
double min, max, avg;
double step = (B - A) / (N - 1);
// I. Генерация последовательности
for (int i = 0; i < N; i++) {
double x = A + i * step;
double y
= 2 * x
* sin(x
) - cos(x
); sequence[i] = y;
sum += y;
}
// нахождение min и max
min = max = sequence[0];
for (int i = 1; i < N; i++) {
if (sequence[i] < min)
min = sequence[i];
if (sequence[i] > max)
max = sequence[i];
}
// среднее арифметическое
avg = sum / N;
printf("Generated sequence:\n"); for (int i = 0; i < N; i++) {
printf("A[%d] = %f\n", i
+1, sequence
[i
]); }
printf("\nМинимальное значение: %f\n", min
); printf("Максимальное значение: %f\n", max
); printf("Среднее арифметическое: %f\n", avg
);
// 2. Поиск индекса по значению y
double y_search;
printf("Введите значение y для поиска: ");
int index_found = -1;
for (int i = 0; i < N; i++) {
if (fabs(sequence
[i
] - y_search
) < 1e-6) { // допуск для сравнения index_found = i;
break; // если нужно найти первый
}
}
if (index_found != -1) {
printf("Значение y = %f найдено под индексом %d (начиная с 1)\n", y_search
, index_found
+ 1); } else {
printf("Значение y = %f не найдено в последовательности.\n", y_search
); }
return 0;
}
I2luY2x1ZGUgPHN0ZGlvLmg+CiNpbmNsdWRlIDxtYXRoLmg+CgojZGVmaW5lIE4gMjQKI2RlZmluZSBBIDAuNAojZGVmaW5lIEIgMS4wCgoKaW50IG1haW4oKSB7CiAgICBkb3VibGUgc2VxdWVuY2VbTl07CiAgICBkb3VibGUgc3VtID0gMC4wOwogICAgZG91YmxlIG1pbiwgbWF4LCBhdmc7CiAgICBkb3VibGUgc3RlcCA9IChCIC0gQSkgLyAoTiAtIDEpOwoKICAgIC8vIEkuINCT0LXQvdC10YDQsNGG0LjRjyDQv9C+0YHQu9C10LTQvtCy0LDRgtC10LvRjNC90L7RgdGC0LgKICAgIGZvciAoaW50IGkgPSAwOyBpIDwgTjsgaSsrKSB7CiAgICAgICAgZG91YmxlIHggPSBBICsgaSAqIHN0ZXA7CiAgICAgICAgZG91YmxlIHkgPSAyICogeCAqIHNpbih4KSAtIGNvcyh4KTsKICAgICAgICBzZXF1ZW5jZVtpXSA9IHk7CiAgICAgICAgc3VtICs9IHk7CiAgICB9CgogICAgLy8g0L3QsNGF0L7QttC00LXQvdC40LUgbWluINC4IG1heAogICAgbWluID0gbWF4ID0gc2VxdWVuY2VbMF07CiAgICBmb3IgKGludCBpID0gMTsgaSA8IE47IGkrKykgewogICAgICAgIGlmIChzZXF1ZW5jZVtpXSA8IG1pbikKICAgICAgICAgICAgbWluID0gc2VxdWVuY2VbaV07CiAgICAgICAgaWYgKHNlcXVlbmNlW2ldID4gbWF4KQogICAgICAgICAgICBtYXggPSBzZXF1ZW5jZVtpXTsKICAgIH0KICAgIC8vINGB0YDQtdC00L3QtdC1INCw0YDQuNGE0LzQtdGC0LjRh9C10YHQutC+0LUKYXZnID0gc3VtIC8gTjsKCnByaW50ZigiR2VuZXJhdGVkIHNlcXVlbmNlOlxuIik7CmZvciAoaW50IGkgPSAwOyBpIDwgTjsgaSsrKSB7CiAgICBwcmludGYoIkFbJWRdID0gJWZcbiIsIGkrMSwgc2VxdWVuY2VbaV0pOwp9CgpwcmludGYoIlxu0JzQuNC90LjQvNCw0LvRjNC90L7QtSDQt9C90LDRh9C10L3QuNC1OiAlZlxuIiwgbWluKTsKcHJpbnRmKCLQnNCw0LrRgdC40LzQsNC70YzQvdC+0LUg0LfQvdCw0YfQtdC90LjQtTogJWZcbiIsIG1heCk7CnByaW50Zigi0KHRgNC10LTQvdC10LUg0LDRgNC40YTQvNC10YLQuNGH0LXRgdC60L7QtTogJWZcbiIsIGF2Zyk7CgovLyAyLiDQn9C+0LjRgdC6INC40L3QtNC10LrRgdCwINC/0L4g0LfQvdCw0YfQtdC90LjRjiB5CmRvdWJsZSB5X3NlYXJjaDsKcHJpbnRmKCLQktCy0LXQtNC40YLQtSDQt9C90LDRh9C10L3QuNC1IHkg0LTQu9GPINC/0L7QuNGB0LrQsDogIik7CnNjYW5mKCIlbGYiLCB5X3NlYXJjaCk7CgppbnQgaW5kZXhfZm91bmQgPSAtMTsKZm9yIChpbnQgaSA9IDA7IGkgPCBOOyBpKyspIHsKICAgIGlmIChmYWJzKHNlcXVlbmNlW2ldIC0geV9zZWFyY2gpIDwgMWUtNikgeyAvLyDQtNC+0L/Rg9GB0Log0LTQu9GPINGB0YDQsNCy0L3QtdC90LjRjwogICAgICAgIGluZGV4X2ZvdW5kID0gaTsKICAgICAgICBicmVhazsgLy8g0LXRgdC70Lgg0L3Rg9C20L3QviDQvdCw0LnRgtC4INC/0LXRgNCy0YvQuQogICAgfQp9CgppZiAoaW5kZXhfZm91bmQgIT0gLTEpIHsKICAgIHByaW50Zigi0JfQvdCw0YfQtdC90LjQtSB5ID0gJWYg0L3QsNC50LTQtdC90L4g0L/QvtC0INC40L3QtNC10LrRgdC+0LwgJWQgKNC90LDRh9C40L3QsNGPINGBIDEpXG4iLCB5X3NlYXJjaCwgaW5kZXhfZm91bmQgKyAxKTsKfSBlbHNlIHsKICAgIHByaW50Zigi0JfQvdCw0YfQtdC90LjQtSB5ID0gJWYg0L3QtSDQvdCw0LnQtNC10L3QviDQsiDQv9C+0YHQu9C10LTQvtCy0LDRgtC10LvRjNC90L7RgdGC0LguXG4iLCB5X3NlYXJjaCk7Cn0KCnJldHVybiAwOwp9