Nhận cuốn sách này -> Vấn đề về Array: Đối với các cuộc phỏng vấn và lập trình cạnh tranh Show Trong một bài viết trước, chúng tôi đã nói về các số phức tạp trong Python bằng cách sử dụng các lớp và thuộc tính tích hợp để thực hiện các hoạt động trên chúng. Nhưng, hãy tưởng tượng nếu Python không được trang bị các tiện ích này. Làm thế nào chúng ta sẽ thực hiện các hoạt động phức tạp? Chúng ta có thể khám phá khái niệm đó bằng cách sử dụng các hoạt động toán học tích hợp để tạo ra lớp học phức tạp của riêng chúng ta trong Python.complex numbers in Python using built-in classes and attributes to perform operations on them. But, imagine if Python didn't come equipped with these conveniences. How would we go about implementing complex operations? We can explore that concept by utilizing built-in mathematical operations to create our own complex class in Python. Để bắt đầu, chúng tôi cần khởi tạo số phức của mình:
Như chúng tôi đã nêu trước đây, các số phức được tạo ra từ một số thực và một số tưởng tượng. Toán tử 0 xác định các giá trị hình thành số phức bằng cách khởi tạo giá trị của 1.Bạn có thể nhận thấy rằng 2 (viết tắt của tưởng tượng) đã được đặt bằng không. Điều này là do Zero là một con số tưởng tượng thuần túy. Do đó, nếu người dùng không chuyển bất kỳ giá trị nào vào 2, thì điều này đảm bảo rằng nó vẫn sẽ là tưởng tượng.Chúng tôi có một lớp xác định các số phức tạp bởi các phần thực và tưởng tượng của chúng, bây giờ chúng tôi đã sẵn sàng để bắt đầu tạo các hoạt động để thực hiện trên các số phức tạp. Phép cộngKhi bạn thêm các số phức tạp lại với nhau, bạn chỉ có thể kết hợp như các thuật ngữ. Nói cách khác, chúng ta phải thêm các thành phần thực và tưởng tượng của cả hai số dưới dạng các phần riêng biệt. Nhìn vào lớp bổ sung bên dưới, chúng ta có thể thấy rằng chúng ta đã xác định số đầu tiên là 1 và thứ hai là 5.Sau khi khởi tạo hai số phức tạp của chúng tôi, sau đó chúng tôi có thể thêm chúng với nhau như được thấy bên dưới lớp bổ sung.
Phép trừPhép trừ hoạt động rất giống với việc bổ sung với các số phức. Một lần nữa, chúng ta chỉ có thể kết hợp như các thuật ngữ, do đó, điều quan trọng là chúng ta phải giữ riêng này khi thực hiện thao tác trừ. Sử dụng các biến tương tự từ ví dụ trước, 6 và 7, hãy xem kết quả của phép trừ của hai số phức này.
Đúng như dự đoán, khi bạn trừ 3 từ 2, kết quả là -1 và 10J - 5J dẫn đến 5J. Phép nhânNhân là một chút khó khăn hơn. Không giống như bổ sung và trừ, giờ đây chúng ta sẽ phải kết hợp các hệ số của các số tưởng tượng với các số thực. Tuy nhiên, kết quả phải được trả về dưới dạng số phức. Trước khi chúng tôi nhảy vào mã, chúng ta hãy xem cách toán học hoạt động dưới mui xe. Như bạn có thể thấy dưới đây, chúng tôi chia vấn đề thành hai phần riêng biệt: một phần giải quyết cho số thực và một phần giải quyết cho sự tưởng tượng. Điều này trông quen thuộc với bất cứ ai biết đại số.
Ghi chúPhần thực của số phức được giải quyết bằng cách trừ 8 nhưng điều này trở thành bổ sung vì một số tưởng tượng tương đương với -1. Nói cách khác, phần số thực của phương trình có thể được xem là: 9. 9.Hiểu toán học liên quan đến việc giải quyết cho phép nhân hai số phức là bước đầu tiên quan trọng. Chúng tôi đã sẵn sàng để tiến về phía trước với lớp học. Khi chúng ta nhìn vào bên dưới, bạn sẽ nhận thấy rằng toán học chúng ta đã thực hiện ở trên được đặt rất giống với chính mã.
Phân côngGiống như phép nhân, chia các số phức có thể trở nên lộn xộn khá nhanh. Đặc biệt nếu bạn không quen thuộc với các khái niệm cơ bản về cách giải quyết cho thương số của hai số phức. Tiếp tục với cùng một số phức được sử dụng trong suốt bài viết này, chúng tôi bắt đầu với vấn đề giải quyết cho số thực. Tương tự như phép nhân, sự phân chia các số phức có thể được chia thành hai phương trình riêng cho từng phần của số phức. Sau đó, chúng tôi chuyển sang nửa sau của vấn đề mà chúng tôi giải quyết cho phần tưởng tượng. Điều này khá thẳng thắn vì chúng tôi chỉ tuân theo cùng một nguyên tắc phân chia cơ bản mà chúng tôi sử dụng với các số thực. Khi chúng ta có hai mảnh cho mỗi phần - phần thực và tưởng tượng của số phức - thì chúng ta cần kết hợp chúng để có được kết quả cuối cùng.
Các ước số trong vấn đề trên được tìm thấy bằng cách nâng các phần thực và tưởng tượng của giá trị 5 lên công suất thứ hai. Vì chúng tôi đang chia cho 7 đó là 3 và 5J.J của 5J được loại bỏ một khi số được nâng lên công suất thứ hai, biến nó thành một số thực và cho phép nó được kết hợp với 2.Hãy xem bản viết này bằng Python:
Note:Bạn có thể nhận thấy rằng nhà điều hành bộ phận được đặt tên là 3 thay vì 4. Điều này là do thực tế là 3 là một hoạt động tích hợp trong Python 3 có thể nhận ra nhà điều hành bộ phận 6. Nếu không, 7 sẽ được coi là bất hợp pháp và sẽ dẫn đến một thông báo lỗi.Giá trị tuyệt đốiTrên một lưu ý ít toán học hơn, chúng ta hãy cố gắng tìm giá trị tuyệt đối của một số phức. Để làm như vậy, chúng ta phải trích xuất hệ số từ phần tưởng tượng và kết hợp nó với số thực. Chúng tôi đã thực hiện điều này với ước số trong ví dụ cuối cùng.
Như chúng ta có thể thấy với tôi 8, chúng ta đang nâng các con số thực và tưởng tượng lên sức mạnh thứ hai. Sau khi chúng tôi biến 10J thành -100, chúng tôi phải nhân với -1 vì chúng tôi đã loại bỏ 9 và biến hệ số thành một số âm. Tuy nhiên, kết quả sẽ không chính xác nếu chúng ta trừ 100 từ 4 vì chúng ta không thể giải quyết căn bậc hai của âm.
Bạn có thể tự hỏi tại sao thậm chí cần phải nâng các con số lên sức mạnh thứ hai nếu chúng ta sẽ giải quyết cho căn bậc hai. Như đã lưu ý trước đó, nâng các số thực và tưởng tượng lên công suất thứ hai kéo chúng ra khỏi số phức bằng cách loại bỏ tất cả các phần tưởng tượng (J bình phương là -1). Điều này cho phép chúng tôi kết hợp hai số để tìm giá trị tuyệt đối của chúng. Tất cả cùng nhauCho đến nay, chúng tôi đã thảo luận về việc bổ sung, trừ, nhân, chia và giá trị tuyệt đối với các số phức. Bạn có thể tự mình đóng góp nhiều hoạt động hơn cho lớp phức tạp của bạn. Nhưng, trước tiên, hãy dọn dẹp mã và xem cách nó hoạt động cùng nhau.
Như bạn thấy từ đầu ra kết quả của chúng tôi, chúng tôi có thể thêm một dòng mới ( 0) và dán nhãn hoạt động để câu trả lời của chúng tôi được trả về ở định dạng gọn gàng và dễ đọc hơn cho người dùng. Có nhiều hơn nữa để mở rộng lớp học phức tạp này, tự mình khám phá các khái niệm này để tạo ra sự hiểu biết sâu sắc hơn về Python và các nhà khai thác của nó.Với bài viết này tại OpenGenus, bạn phải có ý tưởng hoàn chỉnh về việc thực hiện và thiết kế các số phức tạp bằng các lớp trong Python. Vui thích. Làm thế nào để bạn tạo ra một lớp học phức tạp trong Python?Các số phức sẽ được hiển thị trong biểu mẫu (A + BI) ... Xác định lớp phức tạp với phần re re và phần tưởng tượng IM .. Xác định một hàm thêm ()..... Trả về một đối tượng phức tạp mới với (re + o.re, im + o.im). Xác định một hàm con ()..... Trả về một đối tượng phức tạp mới với (re - o.re, im - o.im). Xác định một hàm mul () .. Lớp học phức tạp trong Python là gì?Python Complex () Phương thức phức tạp () trả về một số phức khi các bộ phận thực và tưởng tượng được cung cấp, hoặc nó chuyển đổi một chuỗi thành một số phức.Cú pháp của phức tạp () là: phức tạp ([real [, hình ảnh]]))The complex() method returns a complex number when real and imaginary parts are provided, or it converts a string to a complex number. The syntax of complex() is: complex([real[, imag]])
Điều gì là phức tạp () trong Python?Hàm phức tạp () trả về một số phức bằng cách chỉ định một số thực và một số tưởng tượng.returns a complex number by specifying a real number and an imaginary number.
Làm thế nào để bạn tuyên bố một phức tạp?Làm thế nào để khai báo số phức?Giải thích: Chúng tôi có thể khai báo số phức bằng cách sử dụng phức tạp (3,4) trong đó 3 là số thực và 4 là phần tưởng tượng.complex(3,4) where 3 is a real number and 4 is imaginary part. |