Вычислить значения двух функций в 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;
}