Trong bài toán này, chúng ta có một mảng arr[] gồm n giá trị nguyên. Nhiệm vụ của chúng ta là tạo một Chương trình để tìm số ẩn trong C++.
Mô tả mã − Đối với một mảng, số ẩn là số mà khi trừ nó từ mỗi phần tử của mảng thì tổng bằng 0.
Hãy xem một ví dụ để hiểu bài toán:
Đầu vào
arr[] = {4, 1, 6, 7, 2} Đầu ra
4
Trừ 4 từ tất cả các phần tử của mảng. Và cộng các giá trị
= (1 - 4) + (6 - 4) + (7 - 4) + (4 - 2) = -3 + 2 + 3 - 2 = 0
Phương pháp giải quyết
Để giải quyết bài toán, chúng ta cần tính tổng của tất cả các phần tử của mảng. Sau đó chia tổng cho tổng số phần tử của mảng. Nếu giá trị của sum / (số phần tử) là một số nguyên, đó là số ẩn.
Chương trình minh họa cho hoạt động của giải pháp:
Ví dụ
#include <iostream> using namespace std; int calcHiddenNumber(int arr[], int n){ long int sum = 0; for(int i = 0; i < n; i++){ sum = sum + arr[i]; } int hidNum = (sum / n); if((hidNum * n) == sum ) return hidNum; else return -1; } int main() { int n = 4; int arr[] = { 4, 11, 12, 21 }; cout << "The hidden number for the array is " << calcHiddenNumber(arr, n); return 0; } Đầu ra
The hidden number for the array is 12