class fou{
public static void main(String args[]){
int s1,s2,sx,n;
int pulse[][]=
new int
[101][101];
double a[]=new double[101];
double b[]=new double[101];
double h;
double z;
double x;
for (s1=0;s1<101;s1++){
for (s2=0;s2<101;s2++){
pulse[s1][s2]=0;
if (Math.random()>0.5)pulse[s1][s2]=1;
}
}
s2=50;
h=Math.PI/
100;
for (n=1;n<101;n++){
z=0;
for (s1=-100;s1<101;s1++){
x=s1*h;
sx=s1;
if (sx<0)sx=-sx;
z=z+pulse[sx][s2]*Math.cos(n*x)*h;
}
a[n]=z/Math.PI;
}
for (n=1;n<101;n++){
z=0;
for (s1=-100;s1<101;s1++){
x=s1*h;
sx=s1;
if (sx<0)sx=-sx;
z=z+pulse[sx][s2]*Math.sin(n*x)*h;
}
b[n]=z/Math.PI;
}
z=0;
for (s1=-100;s1<101;s1++){
x=s1*h;
sx=s1;
if (sx<0)sx=-sx;
z=z+pulse[sx][s2]*h;
}
a[0]=0.5*z/Math.PI;
b[0]=0;
for (s1=-100;s1<101;s1++){
x=s1*h;
sx=s1;
if (sx<0)sx=-sx;
z=0;
for (n=0;n<101;n++){
z=z+a[n]*Math.cos(n*x)+b[n]*Math.sin(n*x);
}
System.out.println(pulse[sx][s2]);
System.out.println(z);
}
}
}
最終更新:2010年09月27日 23:02