publicclassGeneralizedHarmonic{publicstaticvoidmain(String[] args){int n = Integer.parseInt(args[0]);int r = Integer.parseInt(args[1]);double H =0.0;for(int i =1; i <= n; i++){
H +=1/ Math.pow(i, r);}
System.out.println(H);}}
BandMatrix.java(数值线性代数中出现概率很大)
publicclassBandMatrix{publicstaticvoidmain(String[] args){int n = Integer.parseInt(args[0]);int width = Integer.parseInt(args[1]);for(int i =0; i < n; i++){for(int j =0; j < n; j++){if(Math.abs(j - i)<= width){
System.out.print("* ");}else{
System.out.print("0 ");}}
System.out.println();}}}
RandomWalker.java(随机游走,布朗运动的离散版本)
publicclassRandomWalker{publicstaticvoidmain(String[] args){int step =0;int r = Integer.parseInt(args[0]);int x =0, y =0;
System.out.printf("(%d, %d)\n", x, y);while(Math.abs(x)+ Math.abs(y)< r){double random = Math.random();// northif(random <.25){
y++;}// eastelseif(random <.5){
x++;}// southelseif(random <.75){
y--;}// westelse{
x--;}
System.out.printf("(%d, %d)\n", x, y);
step++;}
System.out.println("steps = "+ step);}}
RandomWalkers.java
publicclassRandomWalkers{publicstaticvoidmain(String[] args){int r = Integer.parseInt(args[0]);int trials = Integer.parseInt(args[1]);int sum =0;for(int i =0; i < trials; i++){int x =0, y =0, step =0;while(Math.abs(x)+ Math.abs(y)< r){double random = Math.random();// northif(random <.25){
y++;}// eastelseif(random <.5){
x++;}// southelseif(random <.75){
y--;}// westelse{
x--;}
step++;}
sum += step;}
System.out.println("average number of steps = "+1.0* sum / trials);}}
Here is the original linkGeneralizedHarmonic.javapublic class GeneralizedHarmonic{ public static void main(String[] args) { int n = Integer.parseInt(args[0]); int r = Integer.parseInt(args[1]); double H = 0.0; f