Printing polynomials
Ruby agreement is to use snake_case to name methods and variables, and not javaCase. While you could say it's a matter of taste, it's so common in Ruby world you would do better to just stick with it. Ruby programmers also tend to push for initializing arrays like this:

polyArray = []


Your PolynomialElements class is not how you use OOP. It has accessor, but what you pass to them aren't parts of its state - those are arguments for printElement. More proper abstraction would be to make it hold an array of coeficients, and iterate over it to form a string.

class Polynomial
  attr_accessors :coeficients # I think this is a proper name for elements (?)

  def initialize coeficients_array = [0] # default value, just in case
    coeficients = coeficients_array
  end

  def to_s
    coefficients.each_with_object("").with_index do |(coef, str), idx|
      # ...
    end
  end
end


Than, you could use it like:

polynomial = Polynomial.new poly_array
puts polynomial.to_s


Notice that you don't need to operate on array of characters - Ruby string allows you to work in the same way, just use append instead of push, and then you just print/puts it instead of printing each character separately.



Generally speaking, you barely ever need to keep track of index of iteration manually with Ruby. This:

num = numString.to_i
while num &gt; 0
  puts "Enter a value for the Polynomial "
  value = gets
  polyArray.push(value.chomp)
  num -= 1
end


could be much better written as

num_string.to_i.times do
  # ...
end




Ruby way to do (potentially) infinite loop would be:

loop do
  polyArray = []
  # ...
  cont = gets
  break if cont.chomp != "y"
end


This seems more readable, as we directly talk to our loop itself by breaking it, instead of using variable as a "middleman".
Also notice how initializing array inside a loop eliminates need for clearing it.