Bilangan Kompleks di Python: Matematika Lanjut Menjadi Mudah
Banyak yang mengira kemampuan matematika dalam pemrograman terbatas pada aritmetika dasar. Namun, salah satu keunggulan Python yang sering mengejutkan para matematikawan adalah dukungannya yang solid untuk bilangan kompleks. Bagi Anda yang sudah akrab dengan konsep bilangan yang memiliki bagian riil dan imajiner, Python menyediakannya sebagai tipe data bawaan.
Fitur ini menjadikan Python bukan sekadar alat hitung, melainkan sebuah platform yang kuat untuk analisis matematika, teknik, dan fisika. Mari kita selami cara Python menangani bilangan kompleks.
Sintaksis dan Pembuatan Bilangan Kompleks 💡
Hal pertama dan paling penting untuk diingat adalah: dalam dunia matematika, unit imajiner biasanya dilambangkan dengan 'i', namun di Python (dan di banyak bidang teknik), unit imajiner dilambangkan dengan j.
Anda dapat membuat bilangan kompleks dengan dua cara:
- Menulis langsung dalam format
a + bj. - Menggunakan fungsi bawaan
complex(real, imag).
# Cara 1: Menulis langsung (menggunakan j)
z1 = 3 + 5j
print(f"z1 = {z1}")
print(f"Tipe data z1: {type(z1)}")
# Cara 2: Menggunakan fungsi complex()
z2 = complex(3, -5)
print(f"z2 = {z2}")Mengakses Bagian Riil dan Imajiner
Objek bilangan kompleks di Python memiliki atribut khusus untuk mengakses komponen-komponennya secara langsung, yaitu .real dan .imag. Keduanya akan mengembalikan nilai dalam bentuk float.
z = -4 + 7.5j
# Mengambil bagian riil
print(f"Bagian riil dari z: {z.real}") # Output: -4.0
# Mengambil bagian imajiner
print(f"Bagian imajiner dari z: {z.imag}") # Output: 7.5Operasi Aritmetika dengan Bilangan Kompleks
Semua operator aritmetika dasar (+, -, *, /) dapat digunakan secara langsung pada bilangan kompleks. Python secara otomatis akan menerapkan aturan-aturan aljabar yang sesuai.
z1 = 2 + 3j
z2 = 4 - 1j
print(f"Penjumlahan (z1 + z2): {z1 + z2}") # Hasil: (6+2j)
print(f"Pengurangan (z1 - z2): {z1 - z2}") # Hasil: (-2+4j)
print(f"Perkalian (z1 * z2): {z1 * z2}") # Hasil: (11+10j)
print(f"Pembagian (z1 / z2): {z1 / z2}") # Hasil: (0.294...+0.823...j)Fungsi Lanjutan: Modulus dan Modul cmath 🌀
Untuk operasi yang lebih kompleks, Python menyediakan fungsi bawaan dan modul khusus.
- Modulus/Magnitudo: Menggunakan fungsi
abs(), kita bisa mendapatkan modulus atau panjang vektor dari bilangan kompleks di bidang Argan (√(riil² + imajiner²)). - Modul
cmath: Ini adalah "kakak" dari modulmathyang dirancang khusus untuk fungsi-fungsi yang beroperasi pada bilangan kompleks, seperti akar (termasuk akar negatif), fungsi polar, dan fase.
import cmath
z = 3 + 4j
# Menghitung modulus (panjang vektor)
print(f"Modulus dari {z} adalah: {abs(z)}") # Hasil: 5.0
# Menghitung fase/argumen (dalam radian)
print(f"Fase dari {z} adalah: {cmath.phase(z)}") # Hasil: 0.927...
# Mengubah ke koordinat polar (r, phi)
print(f"Bentuk polar dari {z} adalah: {cmath.polar(z)}")
# Akar kuadrat dari bilangan negatif
print(f"Akar dari -9 adalah: {cmath.sqrt(-9)}") # Hasil: 3jKesimpulan
Dukungan bawaan Python terhadap bilangan kompleks dan ketersediaan modul cmath menunjukkan bahwa Python bukan hanya bahasa untuk pemula, tetapi juga merupakan lingkungan komputasi yang sangat kuat untuk para ilmuwan, insinyur, dan matematikawan. Kemampuan ini memungkinkan kita untuk menerjemahkan konsep-konsep matematika tingkat lanjut langsung ke dalam kode yang fungsional dan akurat.

