#include <stdio.h>
#include <math.h>

main(){
	int i,j,k;
	char s[24],ss[3];
	double p[12],v[11];

	for(i=0;i<9;i++) p[i]=1.0/pow(2.0,(1.0/12.0)*(double)(9-i));
	p[9]=1.0;
	for(i=10;i<12;i++) p[i]=pow(2.0,(1.0/12.0)*(double)(i-9));
	v[0]=0.03125; v[1]=0.0625; v[2]=0.125; v[3]=0.25;
	v[4]=0.5; v[5]=1.0; v[6]=2.0; v[7]=4.0; v[8]=8.0;
	v[9]=16.0; v[10]=32.0;
	strcpy(s,"C C#D EbE F F#G G#A BbB ");
	ss[2]=0;

	for(j=-1;j<10;j++){
		for(i=0;i<12;i++){
			k=12*(j+1)+i;
			ss[0]=s[i*2];
			ss[1]=s[i*2+1];
			printf("\n%s%2d  %3d  [%02x]",ss,j,k,k);
			printf("  %11.5fHz ",440.0*v[j+1]*p[i]);
			printf("  %9.3f",430.0*v[j+1]*p[i]);
			printf("  %9.3f",435.0*v[j+1]*p[i]);
			printf("  %9.3f",442.0*v[j+1]*p[i]);
			printf("  %9.3f",445.0*v[j+1]*p[i]);
		}
	}
}

