Ruby:
การทำงานกับตัวเลขซับซ้อน
วิธีการ:
Ruby ทำให้การจัดการตัวเลขซับซ้อนเป็นเรื่องง่าย คุณสามารถสร้างและจัดการกับพวกเขาโดยใช้คลาส Complex:
require 'complex'
# สร้างตัวเลขซับซ้อน
c1 = Complex(3, 4)
c2 = Complex('2+5i')
# การดำเนินการพื้นฐาน
sum = c1 + c2 # => (5.0+9.0i)
difference = c1 - c2 # => (1.0-1.0i)
product = c1 * c2 # => (-14.0+23.0i)
quotient = c1 / c2 # => (0.896551724137931+0.03448275862068961i)
# ผกผัน, ขนาด และ ระยะ
conjugate = c1.conjugate # => (3.0-4.0i)
magnitude = c1.abs # => 5.0
phase = c1.phase # Math.atan2(4, 3) => 0.9272952180016122 รัศมี
# วิธีการเฉพาะสำหรับตัวเลขซับซ้อน
polar = c1.polar # => [5.0, 0.9272952180016122]
rectangular = c1.rect # => [3.0, 4.0]
ลงลึกยิ่งขึ้น
ตัวเลขซับซ้อนไม่ใช่เรื่องใหม่—พวกเขามีมาตั้งแต่ศตวรรษที่ 16 โดยการแก้สมการที่ไม่มีคำตอบจริง นอกเหนือจากเรื่องคณิตศาสตร์ คลาส Complex ของ Ruby ทำงานหนัก โดยมีโมดูล Math ให้การสนับสนุนสำหรับฟังก์ชันตรีโกณมิติและข้ามธรรมชาติ
ภาษาโปรแกรมก่อนหน้านี้ต้องการการจัดการส่วนจริงและส่วนจินตภาพด้วยตนเอง บางภาษา เช่น Fortran และ C++ มีห้องสมุดพิเศษสำหรับการคำนวณซับซ้อน
วิธีการของ Ruby ฝังการสนับสนุนตัวเลขซับซ้อนไว้ในไวยากรณ์ของมัน ช่วยให้คุณไม่ต้องกลับไปเริ่มต้นใหม่ อยู่เบื้องหลัง คลาส Complex จัดการกับคณิตศาสตร์ ในขณะที่ Ruby ดูแลการทำงานร่วมกันของอ็อบเจกต์
ดูเพิ่มเติมที่
- เอกสาร Ruby เกี่ยวกับ Complex: https://ruby-doc.org/core/Complex.html
- ทัศนะของ MathWorld เกี่ยวกับตัวเลขซับซ้อน: http://mathworld.wolfram.com/ComplexNumber.html
- เกริ่นนำเกี่ยวกับตัวเลขซับซ้อนและทำไมพวกเขาถึงมีประโยชน์: https://www.youtube.com/watch?v=5PcpBw5Hbwo