#include<bits/stdc++.h>
using namespace std;

typedef long long ll;
typedef pair<int, int> P;
typedef tuple<int, int, int> T;

int MOD=1e9+7;
ll INF=1e18;

int dx[]={1, -1, 0, 0};
int dy[]={0, 0, 1, -1};

int main(){
    ll n, m, k;
    while(cin>>n>>m>>k, n){
        vector<vector<ll>> dp(n+10, vector<ll>(n*m+10, 0));
        dp[0][0]=1;
        for(int i=0; i<n; i++){
            for(int sum=0; sum<=n*m; sum++){
                for(int side=1; side<=m; side++){
                    if(sum+side>n*m) continue;
                    dp[i+1][sum+side]+=dp[i][sum];
                }
            }
        }

        double div=1;
        for(int i=0; i<n; i++) div/=m;

        double ans=0;
        for(ll i=0; i<=n*m; i++){
            if(i<=k) ans+=1.*dp[n][i]*div;
            else ans+=1.*dp[n][i]*div*(i-k);
            //cout << i << " " << dp[n][i] << endl;
        }
        cout << fixed << setprecision(10) << ans << endl;
    }
}
