Skip to content

Instantly share code, notes, and snippets.

@aashish
Created December 4, 2009 18:04
Show Gist options
  • Star 0 You must be signed in to star a gist
  • Fork 1 You must be signed in to fork a gist
  • Save aashish/d061fc428e5f7fcdb66b to your computer and use it in GitHub Desktop.
Save aashish/d061fc428e5f7fcdb66b to your computer and use it in GitHub Desktop.
class Polynomial
def Polynomial.new(args)
@expression = ""
raise ArgumentError, 'Need at least 2 coefficients.' unless args.length > 2
for i in 1..args.length
if (args[i-1].<=>0) == 1 && i > 1
@expression = @expression + "+"
end
if (args[i-1].<=> 0) == 0
next
end
if args.length-i == 0
@expression = @expression + "#{args[i-1]}"
elsif args[i-1] == 1
@expression = @expression + "x^" + "#{args.length-i}"
else
@expression = @expression + "#{args[i-1]}" + "x^" + "#{args.length-i}"
end
end
@expression
end
end
#y = Polynomial.new([-3,-4,1,0,6]) # => -3x^4-4x^3+x^2+6
#puts y
#puts Polynomial.new([1,0,2]) # => x^2+2
#puts Polynomial.new([1]) # => Need at least 2 coefficients. (ArgumentError)
# from D:/aashishkiran.rb:35
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment