instance method
Complex#-
(::BigDecimal) -> ::Complex
(::Numeric) -> ::Complex
self - other → complex
complex.c
View on GitHub ↗
VALUE
rb_complex_minus(VALUE self, VALUE other)
{
if (RB_TYPE_P(other, T_COMPLEX)) {
VALUE real, imag;
get_dat2(self, other);
real = f_sub(adat->real, bdat->real);
imag = f_sub(adat->imag, bdat->imag);
return f_complex_new2(CLASS_OF(self), real, imag);
}
if (k_numeric_p(other) && f_real_p(other)) {
get_dat1(self);
return f_complex_new2(CLASS_OF(self),
f_sub(dat->real, other), dat->imag);
}
return rb_num_coerce_bin(self, other, '-');
}
Returns the difference of self and other:
Example
Complex.rect(2, 3) - Complex.rect(2, 3) # => (0+0i) Complex.rect(900) - Complex.rect(1) # => (899+0i) Complex.rect(-2, 9) - Complex.rect(-9, 2) # => (7+7i) Complex.rect(9, 8) - 4 # => (5+8i) Complex.rect(20, 9) - 9.8 # => (10.2+9i)