Probability Solver Python Program
import math
def combination(n, r):
return [Link](n, r)
def permutation(n, r):
return [Link](n, r)
def binomial_probability(n, r, p):
return combination(n, r) * (p ** r) * ((1 - p) ** (n - r))
def conditional_probability(pa_and_b, pb):
if pb == 0:
return "Undefined (P(B)=0)"
return pa_and_b / pb
def igcse_probability():
print("\\n--- IGCSE Probability Solver ---")
print("1. Simple Probability")
print("2. Conditional Probability")
choice = input("Choose option: ")
if choice == "1":
favorable = float(input("Favourable outcomes: "))
total = float(input("Total outcomes: "))
print("Probability =", favorable / total)
elif choice == "2":
pab = float(input("P(A and B): "))
pb = float(input("P(B): "))
print("P(A|B) =", conditional_probability(pab, pb))
def alevel_probability():
print("\\n--- A-Level Probability Solver ---")
print("1. Combination nCr")
print("2. Permutation nPr")
print("3. Binomial Probability")
choice = input("Choose option: ")
if choice == "1":
n = int(input("Enter n: "))
r = int(input("Enter r: "))
print("nCr =", combination(n, r))
elif choice == "2":
n = int(input("Enter n: "))
r = int(input("Enter r: "))
print("nPr =", permutation(n, r))
elif choice == "3":
n = int(input("Trials (n): "))
r = int(input("Successes (r): "))
p = float(input("Probability of success (p): "))
print("P(X=r) =", binomial_probability(n, r, p))
def further_maths_probability():
print("\\n--- A-Level Further Maths Probability Solver ---")
print("1. Bayes Theorem")
print("2. Conditional Probability")
print("3. Binomial Probability")
choice = input("Choose option: ")
if choice == "1":
pba = float(input("P(B|A): "))
pa = float(input("P(A): "))
pb = float(input("P(B): "))
if pb == 0:
print("Undefined")
else:
result = (pba * pa) / pb
print("P(A|B) =", result)
def main():
print("Maths Probability Solver")
if __name__ == "__main__":
main()