#include <bits/stdc++.h>

using namespace std;

int ipow(int x,int y) {
	if(y==1) return x;
	if(y&1) return x*ipow(x*x,y>>1);
	return ipow(x*x,y>>1);
}

int main() {
	int N,M,K;
	while(cin >> N >> M >> K,N) {
		vector<vector<int> > dp(N+1,vector<int>(N*M+1));
		dp[0][0]=1;
		for(int i=0;i<N;++i)
			for(int j=i;j<=i*M;++j)
				for(int k=1;k<=M;++k)
					dp[i+1][j+k]+=dp[i][j];
		int sum=0;
		for(int i=N;i<=N*M;++i) sum+=dp[N][i]*(i>K?i-K:1);
		printf("%.10f\n",sum/(double)ipow(M,N));
	}
	
	return 0;
}
