Å jobbe med komplekse tall

Ruby:
Å jobbe med komplekse tall

Hvordan:

Ruby gjør det enkelt å håndtere komplekse tall. Du kan opprette og manipulere dem ved å bruke Complex-klassen:

require 'complex'

# Opprette komplekse tall
c1 = Complex(3, 4)
c2 = Complex('2+5i')

# Grunnleggende operasjoner
sum = c1 + c2               # => (5.0+9.0i)
differanse = c1 - c2        # => (1.0-1.0i)
produkt = c1 * c2           # => (-14.0+23.0i)
kvotient = c1 / c2          # => (0.896551724137931+0.03448275862068961i)

# Konjugat, størrelse, og fase
konjugat = c1.conjugate    # => (3.0-4.0i)
størrelse = c1.abs          # => 5.0
fase = c1.phase            # Math.atan2(4, 3) => 0.9272952180016122 radianer

# Spesifikke metoder for komplekse tall
polar = c1.polar            # => [5.0, 0.9272952180016122]
rektangulær = c1.rect       # => [3.0, 4.0]

Dypdykk

Komplekse tall er ikke nye - de har vært rundt siden det 16. århundret for å løse ligninger uten reelle løsninger. Bortsett fra matematikk, så tar Ruby’s Complex-klasse seg av det tunge løftet beregningsmessig, støttet av Math-modulen for trigonometriske og transcendente funksjoner.

Tidligere programmeringsspråk krevde manuell håndtering av reelle og imaginære deler. Noen, som Fortran og C++, har spesialiserte biblioteker for kompleks aritmetikk.

Rubys tilnærming inkluderer støtte for komplekse tall i sin syntaks, noe som frigjør deg fra å finne opp hjulet på nytt. Bak kulissene tar Complex-klassen seg av matematikken, mens Ruby håndterer objektinteraksjonene.

Se også