


Умоляю помогите с программированием C++
составьте пожалуйста программу вычисления переменной X от х1 до х2 и Y от y1 до y2 используя вложенную циклическую структуру, где X – переменная внешнего цикла, Y – переменная внутреннего цикла 4cos(xy)+(5x-2y)^-1 ( ^-1 это в -1 степени)
Мало знать начальное и конечное значение переменной, нужно ещё знать с каким шагом она изменяется. То есть, знать количество точек измерения, которые позволят вычислить такой шаг. Например, задавать их с клавиатуры:
#include <cmath>
#include <iomanip>
#include <iostream>
using namespace std;
double argument(const char* prompt) {
cout << prompt;
double value;
cin >> value;
cin.ignore(0x1000, '\n');
return value;
}
size_t count(const char* prompt) {
size_t value = 0;
while (value < 2) {
cout << prompt;
cin >> value;
cin.ignore(0x1000, '\n');
}
return value;
}
int main() {
auto x1 = argument("x1: ");
double x2;
do x2 = argument("x2: "); while (x2 <= x1);
size_t nx = count("nx: ");
auto dx = (x2 - x1) / (nx - 1);
auto ex = x2 + dx / nx;
auto y1 = argument("y1: ");
double y2;
do y2 = argument("y2: "); while (y2 <= y1);
size_t ny = count("ny: ");
auto dy = (y2 - y1) / (ny - 1);
auto ey = y2 + dy / ny;
cout.setf(ios::fixed);
cout << '\n' << setw(4) << "x" << setw(12) << "y" << setw(22) << "F(x,y)\n\n";
for (auto x = x1; x < ex; x += dx) {
for (auto y = y1; y < ey; y += dy) {
auto pa = 5.0 * x - 2.0 * y;
cout << setw(7) << setprecision(4) << x
<< setw(12) << setprecision(4) << y;
if (fabs(pa) < 1e-12) cout << setw(16) << "-\n";
else {
auto fxy = 4.0 * cos(x * y) + pow(pa, -1);
cout << setw(22) << setprecision(14) << fxy << '\n';
}
}
}
}
(Это не точно)
#include <iostream>
#include <cmath>
int main() {
double x1 = 0, x2 = 10, y1 = 0, y2 = 5;
for (double x = x1; x <= x2; x++) {
for (double y = y1; y <= y2; y++) {
double res = 4 * cos(x * y) + pow(5 * x - 2 * y, -1);
std::cout << "x = " << x << ", y = " << y << ": " << res << std::endl;
}
}
return 0;
}
Эта программа вычисляет значение выражения 4cos(xy)+(5x−2y)−1 для всех x от x1 до x2 и всех y от y1 до y2. Выражение pow(a, b) возвращает a в степени b.