Создать программку на языке С++.Cоздать 3 одномерных статических массива Х1, Х2,
Создать программку на языке С++.
Cоздать 3 одномерных статических массива Х1, Х2, Х3 размерностями N1, N2, N3 (где N константа, определяемая в программе программером). Заполнить каждый массив Х1, Х2, Х3 случайными числами в спектре [D1_min, D1_max], [D2_min, D2_max], [D3_min, D3_max] соответственно.
Сделать еще 3 одномерных массива Y1, Y2, Y3 размерностями N1, N2, N3, каждый элемент массивов Y вычисляется в согласовании с зависимостью (см. номер варианта). К примеру Y1[i]=f(X1[i], k), k- количество частей многочлена из варианта.
Вывести на экран значения всех массивов.
Заполнение массивов Х1, Х2, Х3 случайными числами, вывод частей массива на экран, вычисление значения функции f(X1[i], k), а также наполнение массивов Y1, Y2, Y3 воплотить в собственных функциях.
include lt;cmathgt;
include lt;time.hgt;
using namespace std;
float LogFunction(int x,int k,int a);
long double fact(int N);
void main()
setlocale(0, "");
srand(time(NULL));
int a,n1, n2, n3, d1, d2, d3, d1max, d2max, d3max, k;
cout lt;lt; "Введите размерность массива n1 n2 n3 и а" lt;lt; endl;
cin gt;gt; n1 gt;gt; n2 gt;gt; n3gt;gt;a;
int* x1 = new int[n1];
int* x2 = new int[n2];
int* x3 = new int[n3];
float* y1 = new float[n1];
float* y2 = new float[n2];
float* y3 = new float[n3];
cout lt;lt; "Введите спектры чисел в массиве в таковой последовательности: d1min, d1max, d2min, d2max, d3min, d3max" lt;lt; endl; cin gt;gt; d1 gt;gt; d1max gt;gt; d2 gt;gt; d2maxgt;gt; d3 gt;gt; d3max;
for (int i = 0;i lt; n1;++i)
x1[i] = d1 + rand() % (d1max - (d1-1)); //заполняем массив рандомными числами
for (int i = 0;i lt; n2;++i)
x2[i] = d2 + rand() % (d2max - (d2-1));
for (int i = 0;i lt; n3;++i)
x3[i] = d3 + rand() % (d3max - (d3-1));
cout lt;lt; "Введите k " lt;lt; endl;
cin gt;gt; k;
for (int i = 0;i lt; n1;++i)
y1[i] = LogFunction(x1[i], k , a); // через отдельную функцию считаем значения массива y1
for (int i = 0;i lt; n2;++i)
y2[i] = LogFunction(x2[i], k , a);
for (int i = 0;i lt; n3;++i)
y3[i] = LogFunction(x3[i], k , a);
for (int i = 0;i lt; n1;++i)
cout lt;lt; " " lt;lt; x1[i];
cout lt;lt; endl;
for (int i = 0;i lt; n2;++i)
cout lt;lt; " " lt;lt; x2[i];
cout lt;lt; endl;
for (int i = 0;i lt; n3;++i)
cout lt;lt; " " lt;lt; x3[i];
cout lt;lt; endl;
for (int i = 0;i lt; n1;++i)
cout lt;lt; " " lt;lt; y1[i];
cout lt;lt; endl;
for (int i = 0;i lt; n2;++i)
cout lt;lt; " " lt;lt; y2[i];
cout lt;lt; endl;
for (int i = 0;i lt; n3;++i)
cout lt;lt; " " lt;lt; y3[i];
cout lt;lt; endl;
system("pause");
float LogFunction(int x, int k,int a)
float result=0;
for (int i = 1;i lt;= k;++i)
result += ((pow(log(a),i)) / fact(i))*(pow(x, i + 1) + i); //Формула которая на картинке
return result;
long double fact(int N) //считаем факториал , который в знаменателе на картинке.
if (N lt; 0) return 0;
if (N == 0) return 1;
else return N * fact(N - 1); //Рекурсия
P.s не забудь отметить ответ наихорошим, если он таков
-
Вопросы ответы
Статьи
Информатика
Статьи
Математика.
Физика.
Математика.
Разные вопросы.
Разные вопросы.
Математика.
Разные вопросы.
Математика.
Физика.
Геометрия.