Cho mảng số 'n', nhiệm vụ là tìm xác suất của 3 số được chọn ngẫu nhiên tạo thành cấp số cộng (AP).
Ví dụ
Đầu vào: arr[] = {2,3,4,7,1,2,3}
Đầu ra: Xác suất 3 số ngẫu nhiên tạo thành AP là: 0.107692
Đầu vào: arr[] = {1, 2, 3, 4, 5}
Đầu ra: Xác suất 3 số ngẫu nhiên tạo thành AP là: 0.151515
Phương pháp sử dụng:
- Nhập mảng các số nguyên dương
- Tính kích thước mảng
- Áp dụng công thức sau để tìm xác suất 3 số ngẫu nhiên tạo thành AP:
3n / (4(n²) - 1)
- In kết quả
THUẬT TOÁN
BẮT ĐẦU
Bước 1 → Hàm tính xác suất 3 số ngẫu nhiên tạo thành AP
double probab(int n)
TRẢ VỀ (3.0 * n) / (4.0 * (n * n) - 1)
Bước 2 → Trong main()
Khai báo mảng int arr[] = {2,3,4,7,1,2,3}
Tính kích thước mảng int size = sizeof(arr)/sizeof(arr[0])
Gọi hàm tính xác suất probab(size)
DỪNG
Ví dụ mã nguồn
#include <bits/stdc++.h>
using namespace std;
// Tính xác suất 3 số ngẫu nhiên tạo thành AP
double probab(int n) {
return (3.0 * n) / (4.0 * (n * n) - 1);
}
int main() {
int arr[] = {2,3,4,7,1,2,3};
int size = sizeof(arr)/sizeof(arr[0]);
cout << "probability of three random numbers being in A.P is: " << probab(size);
return 0;
}
Kết quả đầu ra
Probability of three random numbers being in A.P is: 0.107692