Saludos,
Lo que yo entiendo de tu pregunta es que en la condición de la interacción for, tu le colocas posicionvector < 4; va a dar el mismo resultado si le colocas posicionvector <= 3. En este caso entendí, que al momento de interactuar los elementos del array con los de tu función, estos se van a basar el index(osea la posición del elemento). La posición de tus elementos comienza desde cero, y para saber esa posición se crea la variable posicionvector =0. Esto quiere decir, que al momento que el usuario ingresa su dato, le indicas a la función que interactúe con elementos que contiene el index 0 (3), index 1 (5), index 2(7), index 3 (9). Entonces, no hay un elemento en el index 4, ya que este arreglo contiene 4 elementos y 3 index; también por la condición posicionvector < 4, te indica que nunca vas a tomar el valor del index 4; tampoco existe un index 3.5, index 3.9 ya que los index de un arreglo son número enteros. En cambio, si usas la condición posicionvector <= 3, le estas indicando que puede tomar solo hasta el elemento del arreglo en su posición index 3(su valor es 9 en este caso).
En conclusión, da lo mismo que uses posicionvector <= 3 o posicionvector <4.
Nota:
No se si logre respoder a tu pregunta..