Salve, ho scritto questo programmino

codice:
//Esegue la media tra 5 numeri

#include <iostream>
#include <cstdlib>

using namespace std;

int main()
{
     double media = 0.00;
     int val[5];
    
    cout << "Inserisci 5 numeri: \n";

    cout << ">> ";    cin >> val[0];    cout << "\n";
    cout << ">> ";    cin >> val[1];    cout << "\n";
    cout << ">> ";    cin >> val[2];    cout << "\n";
    cout << ">> ";    cin >> val[3];    cout << "\n";
    cout << ">> ";    cin >> val[4];    cout << "\n";

    media = abs(val[0] + val[1] + val[2] + val[3] + val[4])/5;
    
    cout << "\n";
    cout << "La media e' " << media;
 
    return 0;
}
nell'esecuzione il risultato è un numero intero e non numeri con la virgola... nonostante abbia impostato "media" come una variabile di tipo double.

Come posso risolvere questo problema?

grazie