Các lượt nộp
    Danh sách bài
    Trang chủ
    Báo lỗi
    solution
    Đăng nhập
    Đăng nhập

    Đề bài: Số phức Complex với cộng trừ nhân và equals

    📖Cần ôn lý thuyết? Đọc bài giảng Buổi 5: Lập trình hướng đối tượng (1): lớp và đối tượng — khóa Lập trình Java

    Xây dựng lớp Complex biểu diễn số phức a + bi.

    1. Lớp Complex gồm double real, imag.
    2. Complex add(Complex o), Complex sub(Complex o), Complex mul(Complex o):
      • (a+bi) * (c+di) = (ac - bd) + (ad + bc)i
    3. boolean equals(Complex o) — coi bằng nhau nếu |real - o.real| < 1e-6 và |imag - o.imag| < 1e-6.
    4. String toString() — định dạng a+bi 2 chữ số thập phân. Nếu imag âm thì in a-|b|i. Ví dụ: 3.00+4.00i, 2.00-1.00i, 0.00+0.00i.
    5. Trong main: Đọc Q. Mỗi dòng: a b c d <op> với op ∈ {+, -, *, =}.
      • +, -, *: in kết quả toString().
      • =: in true hoặc false.
    • Định dạng đầu vào:
      • Dòng 1: Q (1 ≤ Q ≤ 100)
      • Q dòng: a b c d <op>
    • Ràng buộc đầu vào:
      • |a|, |b|, |c|, |d| ≤ 10⁴
    • Định dạng đầu ra:

      Mỗi dòng kết quả tương ứng.

    Ví dụ:

    Đầu vào:

    3
    1 2 3 4 +
    1 2 3 4 *
    1 2 1 2 =
    

    Đầu ra:

    4.00+6.00i
    -5.00+10.00i
    true
    

    Giải thích:

    (1+2i)+(3+4i) = 4+6i. (1+2i)(3+4i) = (1×3 - 2×4) + (1×4 + 2×3)i = -5+10i. (1+2i) == (1+2i) → true.

    Đầu vào:

    2
    5 0 3 0 -
    0 1 0 -1 *
    

    Đầu ra:

    2.00+0.00i
    1.00+0.00i
    

    Giải thích:

    (5+0i)-(3+0i) = 2+0i. (0+i)(0-i) = (0-(-1)) + (0+0)i = 1+0i.

    Đầu vào:

    1
    0 0 0 0 +
    

    Đầu ra:

    0.00+0.00i
    

    Đầu vào:

    3
    -1 -2 1 2 +
    1 2 1 3 =
    2 3 1 1 -
    

    Đầu ra:

    0.00+0.00i
    false
    1.00+2.00i
    

    Chủ đề

    🧩 Lập trình hướng đối tượng☕ JavaJavaJava: OOPTất cả môn học

    Đang tải editor...