Advertisement
8ugust

Máy tính vận may

Feb 6th, 2023
836
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
Python 3.80 KB | None | 0 0
  1. import webbrowser
  2. import os
  3. import time
  4.  
  5. isRunning = True
  6.  
  7. def main():
  8.     while (isRunning):
  9.         displayMenu()
  10.     exit()
  11.  
  12. def displayHeader() -> None:
  13.     """Display the header of the program."""
  14.     header = """
  15.  
  16.             __              __        ___  __  .  __      __
  17.            / _`  /\  |\/| |__) |    |__  |__) ' /__`    |__) |  | | |\ |
  18.            \__> /~~\ |  | |__) |___ |___ |  \  .__/    |  \ \__/ | | \|
  19.    """
  20.     # in header căn giữa
  21.     print(header.center(80))
  22.     print("Tính toán vận may của bạn".center(85))
  23.     print("            ______________________________________________________________")
  24.     print()
  25.  
  26. def displayMenu() -> None:
  27.     os.system('cls')
  28.     displayHeader()
  29.     print("            1. Tính xác suất chiến thắng của bạn")
  30.     print("            2. Xem bài toán và lời giải")
  31.     print("            3. Thông tin tác giả")
  32.     print("            4. Thoát")
  33.  
  34.     print("            ______________________________________________________________")
  35.     print("            Lựa chọn của bạn: ", end="")
  36.     choice = int(input())
  37.     if choice == 4:
  38.         exit()
  39.     elif choice < 1 or choice > 4:
  40.         print("            Lựa chọn không hợp lệ. Bấm phím bất kì để quay lại menu chính")
  41.     elif 1 <= choice <= 3:
  42.         nav(choice)
  43.     else:
  44.         os.system('cls')
  45.         exit()
  46.  
  47. def choice1() -> None:
  48.     os.system('cls')
  49.     displayHeader()
  50.     money = int(input("            Nhập số tiền bạn có: "))
  51.     probability = float(input("            Nhập xác suất thắng mỗi vòng đấu: "))
  52.     i = money    # i là số tiền ban đầu của bạn
  53.     N = money * 2       # N là số tiền bạn muốn đạt được hay số tiền của cả 2 người chơi
  54.     p = probability     # p là xác suất thắng mỗi vòng đấu
  55.     q = float(1 - p)   # q là xác suất thua mỗi vòng đấu
  56.     if (p != q):
  57.         result = float((1 - (q/p)**i) / (1 - (q/p)**N)) * 100 # công thức tính xác suất chiến thắng cả trò chơi lớn
  58.     elif (p == q):
  59.         result = float(100 * i / N) # công thức tính xác suất chiến thắng cả trò chơi lớn
  60.    
  61.     result = round(result, 2) # làm tròn result đến 2 chữ số thập phân
  62.     print("            Xác suất bạn chiến thắng của bạn là: ", result, "%")
  63.     print()
  64.    
  65.     if result >= 50:
  66.         print(f"            Đây không phải là một tỉ lệ tồi. Biết đâu bạn sẽ có được {N} đồng đó chứ nhỉ\n")
  67.     elif result < 50:
  68.         print("            Bạn sẽ phá sản sớm mà thôi! Quay lại nhà chơi gì đó khác đi\n")
  69.    
  70.     print("            Bấm phím bất kì để quay lại menu chính")
  71.     input()
  72.  
  73. def choice2() -> None:
  74.     # open url in default browser
  75.     print("            Bạn đang được chuyển tới trang web chứa bài toán và lời giải...")
  76.     time.sleep(2)
  77.     webbrowser.open("https://drive.google.com/file/d/1wAY3a0N1h9K4bc-etEbEnp-oyW23B3Gy/view?usp=sharing")
  78.  
  79. def choice3() -> None:
  80.     os.system('cls')
  81.     displayHeader()
  82.     print("            Tác giả: Nguyễn Hữu Khoa")
  83.     print("            Mã sinh viên: A41316")
  84.     print("            Thực hiện bài toán và lời giải: Nhóm 1")
  85.     print("            Lớp: K2N2_2223_XSTK.1.LT")
  86.     print("            Giảng viên hướng dẫn: Cô Phan Thanh Hồng\n")
  87.     print("            Bấm phím bất kì để quay lại menu chính")
  88.     input()
  89. def nav(choice) -> None:
  90.     if choice == 1:
  91.         choice1()
  92.     elif choice == 2:
  93.         choice2()
  94.     elif choice == 3:
  95.         choice3()
  96.     elif choice == 4:
  97.         isRunning = False
  98.  
  99. if __name__ == "__main__":
  100.     main()
  101.  
  102.  
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement