Тъкмо научавам за данните и се опитвам да дефинирам донякъде комплексни числа с тях.
До момента имам следното:
data Complex = Complex Int Int deriving(Eq)
instance Show Complex where
show Complex a = a -- Not working
instance Num Complex where
Complex a b + Complex c d = Complex (a+c) (b+d)
-- etc.
Това, което се опитвам да направя, е да инстанцирам Show, за да накарам програмата да отпечата низ като комплексно число, като например: a + bi
Разбирам защо кодът, който написах, дава грешки, тъй като a е от тип Complex и програмата очаква низ, но не мога да си обясня как мога да разделя и двете числа и след това да добавя i към b, както и да поставя оператора между.
Някакви идеи?