Hola buenos días.
Estoy haciendo un programa, el cual hace lo siguiente:
El usuario mete una cierta cantidad de números y de esos números me dice cual es el mayor.
Lo estoy haciendo con arrays y funciones. 
Os dejo el código para que le echéis un vistazo:    
Código C++:
Ver original#include <iostream>
using namespace std;
float num[10];
float mayor;
float tomarMayor(float num[10]);
 
int main() {
    float i=0;
    for(i=0;i<=num[10];i++)
    {
        cout << "Introduzca un numero para introducir en el array:";
        cin >>num[i];
    }
    cout<<tomarMayor;
 
    return 0;
}
 
float *tomarMayor(float num)
{
    float w=0;
    for(w=0;w<=num;w++)
    {
        if(num[w]>=num[w-1])
        {
            mayor = num[w];
        }
        else
        {
            mayor = num[w-1];
        }
    }
    return mayor;
}
  
El caso es que en el if me pone error, "invalid types 'float[float]' for array subcript",
en return mayor me pone "cannot convert float to float in return", y en cin>>num[i] me pone "invalid types `float[10][float]' for array subscript". 
Alguien me podría ayudar. 
Muchas gracias