Вычислить значения функции на отрезке - C (СИ)

Узнай цену своей работы

Формулировка задачи:

Привет помогите пожалуйста написать задачу. Вычислить значения функции (см вложение) на отрезке [0,1; 0,9] с шагом Delta x=0,2. Вычисления произвести для следующих значений а: 0,15; 0,35; 0,55; ...; 1,55. Вот что получилось пока что.
#include <stdio.h>
main() {
 
    int a, x, y, y2, y3;
    x = 0.1;
    while (x < 0.9 + 0.5)
    {
        x++;
    }
    a = 0.15;
    while (a < 1.55 + 0.075)
    {
        a++;
    }
    y1 = 1 - a*sqr(x);
    if (y1 < 0)
    {
    
    }
    else
    {
    
    }

}

Решение задачи: «Вычислить значения функции на отрезке»

textual
Листинг программы
#include <stdio.h>
#include <math.h>
 
int main(void)
{
    for (int i = 15; i <= 155; i += 20)
    {
        double a = (double)i * 0.01;
        double a2 = a * a;
        printf("a = %f\n", a);
        for (int j = 1; j <= 9; j += 2)
        {
            double x = (double)j * 0.1;
            double x2 = x * x;
            double y = 4.0 * sqrt(1.0 - a * x2) / (1.0 + a2 + x2) + sqrt(1.0 - x2);
            printf("x = %f, y = %f\n", x, y);
        }
    }
    return 0;
}

Объяснение кода листинга программы

В этом коде:

  1. Вычисляются значения функции на отрезке [15, 155] с шагом 20.
  2. Значение переменной a вычисляется как 0.01 * i (где i — значение текущего индекса цикла).
  3. Значение переменной a2 вычисляется как a * a.
  4. Выводится значение переменной a.
  5. Для каждого значения переменной a вычисляются значения переменных x и x2 как 0.1 j и x x соответственно, где j — значение текущего индекса цикла.
  6. Вычисляется значение переменной y как 4.0 sqrt(1.0 - a x2) / (1.0 + a2 + x2) + sqrt(1.0 - x2).
  7. Выводятся значения переменных x и y.
  8. Цикл повторяется для всех значений переменной a в заданном диапазоне.
  9. Программа возвращает 0, указывая на успешное завершение работы.

Оцени полезность:

8   голосов , оценка 3.625 из 5
Похожие ответы