Giới thiệu
Cho mảng sum[] kích thước n, trong đó sum[i] là tổng của n-1 ẩn (thiếu xᵢ). Tìm giá trị x₁, x₂, ..., xₙ.
Hệ phương trình:
sum[1] = x₂ + x₃ + ... + xₙ sum[2] = x₁ + x₃ + ... + xₙ ... sum[n] = x₁ + x₂ + ... + xₙ₋₁
Ví dụ minh họa
Đầu vào
sum[] = {6, 6, 6, 6, 6, 6, 6}
Đầu ra
x1 = 1, x2 = 1, x3 = 1, x4 = 1, x5 = 1, x6 = 1, x7 = 1
Phương pháp giải
Gọi tổng tất cả ẩn là sumX = x₁+...+xₙ. Khi đó sum[i] = sumX - xᵢ.
Cộng tất cả: Σsum[i] = n·sumX - sumX = (n-1)·sumX
⇒ sumX = Σsum[i] / (n-1)
⇒ xᵢ = sumX - sum[i]
Chương trình minh họa
#include <iostream>
using namespace std;
void calcSumVariables(int sum[], int n) {
float SUMX = 0;
for (int i = 0; i < n; i++)
SUMX += sum[i];
SUMX /= (n - 1);
for (int i = 0; i < n; i++)
cout << "\nx" << (i+1) << " = " << (SUMX - sum[i]);
}
int main() {
int sum[] = {3, 8, 6, 7, 4, 5, 9};
int N = sizeof(sum) / sizeof(sum[0]);
cout << "The value of variables that form the sum are ";
calcSumVariables(sum, N);
return 0;
}
Đầu ra
The value of variables that form the sum are x1 = 4 x2 = -1 x3 = 1 x4 = 0 x5 = 3 x6 = 2 x7 = -2