어떤 길이의 막대기가 주어지며 그 막대기는 정수 또는 부동 소수점 유형이 될 수 있는 n개의 조각으로 무작위로 쪼개질 수 있으며 부서진 조각이 가능한지 여부를 찾는 것이 작업입니다. n면 다각형을 형성합니다.
공식을 적용하여 확률을 계산할 수 있습니다.
$$P(E^{\prime})=1-P(E)=1-\frac{n}{2^{n-1}}$$
여기서, n은 막대기를 여러 부분으로 분해하여 생성된 조각의 수입니다.
입력
length = 10 , pieces = 4
출력
probability is : 0.5
설명 - 길이 10cm로 주어지며 4부분으로 나뉩니다.
입력
length = 5 , pieces = 3
출력
probability is : 0.25
설명 - 길이가 5cm이고 3등분되어 있습니다.
아래 프로그램에서 사용된 접근 방식은 다음과 같습니다.
-
쪼개질 수 있는 조각의 수와 함께 막대기의 길이를 입력하십시오.
-
공식을 적용하여 확률 계산
-
결과 인쇄
알고리즘
Start Step 1→ Declare function to calculate the probability double probab(unsigned len, unsigned pieces) declare unsigned a = (1 << (pieces-1)) return 1.0 - ((double)pieces) / ((double)a) step 2→ In main() Declare unsigned pieces = 4, len = 10 Call probab(len, pieces) Stop
예시
#include<iostream> using namespace std; //function to calculate probability double probab(unsigned len, unsigned pieces){ unsigned a = (1 < (pieces-1)); return 1.0 - ((double)pieces) / ((double)a); } int main(){ unsigned pieces = 4, len = 10; cout <<"probability is : "<<probab(len, pieces); return 0; }
출력
위의 코드를 실행하면 다음 출력이 생성됩니다 -
probability is : 0.5