С++ Аргумент x меняется от начального значения 5.2 до конечного 8.3 с шагом 0.75. Вектор B состоит из 8 элементов (положительные действительные числа).
В этом выражении сначала вычитается квадрат натурального логарифма от всех элементов вектора, затем прибавляем x(5.2 изначально) и выводим. И так на каждой итерации.
#include <iostream>
#include <vector>
#include <cmath>
int main()
{
std::vector<float> B(8);
float
tmp,
sum = 0;
for(int i = 0; i < 8; i++)
{
std::cin >> tmp;
B.push_back(tmp);
}
for(auto X = 5.2f; X < 8.3f; X += 0.75f)
{
for(const auto& i : B)
sum += pow(log(i*X + 3.1f), 2);
std::cout << "F при x = " << X << " равно = " << X+sum << std::endl;
}
return 0;
}
1 votes Thanks 1
Browze
Если я неправильно трактовал условия выполнения, сообщите мне. Я исправлю.
Browze
Также я не гнался за использованием всех новшеств языка, дабы сделать решение более доступным
Answers & Comments
Реализация такова:
F = x(сначала 5.2) + ln^2(b[i] * x + 3.1).
В этом выражении сначала вычитается квадрат натурального логарифма от всех элементов вектора, затем прибавляем x(5.2 изначально) и выводим. И так на каждой итерации.
#include <iostream>
#include <vector>
#include <cmath>
int main()
{
std::vector<float> B(8);
float
tmp,
sum = 0;
for(int i = 0; i < 8; i++)
{
std::cin >> tmp;
B.push_back(tmp);
}
for(auto X = 5.2f; X < 8.3f; X += 0.75f)
{
for(const auto& i : B)
sum += pow(log(i*X + 3.1f), 2);
std::cout << "F при x = " << X << " равно = " << X+sum << std::endl;
}
return 0;
}