Двумерный массив с аргументом и функцией С(СИ) - C (СИ)
Формулировка задачи:
Доброго времени суток.
Напишите программу, которая создает двумерный массив с 2 строками и 6 столбцами, рассчитайте значение функции x^2*tan(x) на интервале от -5 до 5 с шагом 2.
В первую стоку массива занося значения х (от -5 до 5 с шагом 2), во вторую – решение функции x^2*tan(x)
Неполучается никак. Спасибо
Решение задачи: «Двумерный массив с аргументом и функцией С(СИ)»
textual
Листинг программы
#include <stdio.h>
#include <math.h>
#define M 2
#define N 6
double f(const double x)
{
return (x * x) * tan(x);
}
void GenerateArrayWithFunction(double (*array)[N], double (*function)(const double))
{
double x = -5.0;
for (int i = 0; i < N; i++)
{
array[0][i] = x;
array[1][i] = function(x);
x = x + 2.0;
}
}
int main(void)
{
double a[M][N];
GenerateArrayWithFunction(a, f);
for (int i = 0; i < M; i++)
{
for (int j = 0; j < N; j++) printf("%.4f ", a[i][j]);
printf("\n");
}
return 0;
}
Объяснение кода листинга программы
- Подключение необходимых библиотек: iostream.h и math.h
- Определение размеров массива: M=2, N=6
- Определение функции f(x), которая будет использоваться в массиве
- Создание функции GenerateArrayWithFunction, которая генерирует массив a с помощью функции f
- Инициализация переменной x значением -5.0
- Начальные значения массива a инициализируются значениями x и результатом функции f(x) соответственно
- Цикл for для заполнения массива a значениями x и результатами функции f(x)
- Вывод значений массива a на экран с помощью цикла for и функции printf
- Возврат значения 0 в функции main, что означает успешный конец работы программы