#include<stdio.h>
#include<string.h>
#include<math.h>
#define max(a,b) (a<b?b:a)
int N,M,K,i,j,t,C[40];
double R;

void dfs(int d)
{
	int i,a=0;
	if(d==N)
	{
		for(i=0;i<d;i++)a+=C[i];
		R+=(1.0*max(1,a-K)/pow(1.0*M,N));
	}
	else
		for(i=1;i<=M;i++)
		{
			C[d]=i;
			dfs(d+1);
		}
}

int main()
{
	for(;scanf("%d%d%d",&N,&M,&K),N;)
	{
		R=0;
		dfs(0);
		printf("%.9f\n",R);
	}
	return 0;
}