Вычислить значения двух функций в n равномерно распределенных в диапазоне а≤x≤b точках - C (СИ)
Формулировка задачи:
Задание. Вычислить значения двух функций в n равномерно распределенных в диапазоне а≤x≤b точках. Сформировать результаты в виде трех одномерных массивов.
Вот такая получилась программа, но она не работает, считает вообще не пойму что.
Ребята, подскажите где ошибка, пожалуйста.
Листинг программы
- #include <stdio.h>
- #include <conio.h>
- #include <math.h>
- #include <locale.h>
- int main()
- {
- setlocale(LC_ALL, "RUS");
- float x, dx, a = 1, b = 3;
- int A[12];
- int B[12];
- int C[12];
- int i, n;
- printf("Введите число точек \n");
- scanf_s("%d", &n);
- dx = fabs(b - a) / (n - 1);
- x = a;
- for (i = 1; i <= n; i++)
- {
- A[i] = x;
- B[i] = x*log(x)*log(x);
- C[i] = sqrt(exp(x) - 1);
- x = x + dx;
- }
- for (i = 0; i <= 11; i++)
- {
- printf("%d\n ", A[i]);
- printf("%d\n ", B[i]);
- printf("%d\n ", C[i]);
- }
- _getch();
- return 0;
- }
Решение задачи: «Вычислить значения двух функций в n равномерно распределенных в диапазоне а≤x≤b точках»
textual
Листинг программы
- #include <stdio.h>
- #include <conio.h>
- #include <math.h>
- #include <locale.h>
- int main()
- {
- setlocale(LC_ALL, "RUS");
- double x, dx, a = 1, b = 3, A, B;
- int i, n;
- printf("Введите число точек \n");
- scanf_s("%d", &n);
- dx = fabs(b - a) / (n - 1);
- x = a;
- printf("-------------------------------------------------\n");
- printf("|\tx\t|\tA\t|\tB\t|\n");
- printf("-------------------------------------------------\n");
- for (i = 0; i < n; i++)
- {
- A = x*log(x)*log(x);
- B = sqrt(exp(x) - 1);
- printf("|\t%.2lf\t|\t%.2lf\t|\t%.2lf\t|\n", x, A, B);
- x = x + dx;
- }
- printf("-------------------------------------------------\n");
- _getch();
- return 0;
- }
ИИ поможет Вам:
- решить любую задачу по программированию
- объяснить код
- расставить комментарии в коде
- и т.д