Tổng số bài gửi : 95 Join date : 15/12/2022 Age : 17 Đến từ : Aluuu bạn (anh,chị) có thể cho tui (em) xin một đăng kí này zới được khum ạaaa ???????? cảm ơn bạn (anh,chị) gất nhìuuuuu (ấn vào link để biết chi tiết ạ <3) https://www.youtube.com/@hesinhthaisoielp7485/about
Tiêu đề: Bài 33: M nằm trong hay ngoài tam giác Fri Dec 16, 2022 7:58 pm
Bài 33: Cho tam giác ABC có tọa độ các đỉnh là A(x1, y1), B(x2, y2), C(x3, y3). Xét điểm M(xM, yM) nằm trong hay ngoài tam giác. BAI33.INP BAI33.OUT 0 0 5 0 4 0 1 1 m is in triangle ❖ Thuật toán: - Nối MA, MB, MC ta chia tam giác ABC thành 3 tam giác nhỏ MAB, MBC và MCA. - Điểm M nằm trong tam giác khi tổng diện tích các tam giác này bằng diện tích tam giác ABC. - Lưu ý, khi tính toán dữ liệu trả về kiểu số thực nên có sai số vì thế biểu thức điều kiện là S1 + S2 + S3 <= S.
Video bài giảng:
Code:
from math import sqrt def distance_points(mx, my, nx, ny): return sqrt((nx - mx) ** 2 + (ny - my) ** 2) def area_triangle(ax, ay, bx, by, cx, cy): a = distance_points(ax, ay, bx, by) b = distance_points(bx, by, cx, cy) c = distance_points(ax, ay, cx, cy) p = (a + b + c) / 2.0 return sqrt(1.0 * p * (p - a) * (p - b) * (p - c)) x1 = int(input()) y1 = int(input()) x2 = int(input()) y2 = int(input()) x3 = int(input()) y3 = int(input()) xm = int(input()) ym = int(input()) s = area_triangle(x1, y1, x2, y2, x3, y3) s1 = area_triangle(x1, y1, x2, y2, xm, ym) s2 = area_triangle(x1, y1, xm, ym, x3, y3) s3 = area_triangle(xm, ym, x2, y2, x3, y3) if s1 + s2 + s3 - s <= 1.0e-7: print("M is in triangle") else: print("M is not in triangle")