TI Basicで作成したこの複雑な反復プログラムを使用して、複素数に対して基本的な反復を実行し、結果の大きさを示します。
INPUT “SEED?”, C
INPUT “ITERATIONS?”, N
C→Z
For (I,1,N)
Z^2 + C → Z
DISP Z
DISP “MAGNITUDE”, sqrt ((real(Z)^2 + imag(Z)^2))
PAUSE
END
私がやりたいのは、これのHaskellバージョンを作成して、課題で先生を驚かせることです。私はまだ学んでいて、ここまで進んでいます:
fractal ::(RealFloat a) =>
(Complex a) -> (Integer a) -> [Complex a]
fractal c n | n == a = z : fractal (z^2 + c)
| otherwise = error "Finished"
方法がわからないのは、反復n
回数だけにする方法なので、カウントアップしてa
から比較して、n
終了したかどうかを確認したいと思いました。
どうすればいいですか?