fc2ブログ

HSP用複素数(虚数)モジュール

時間ができたので作ってみました。使いたい方はご自由にどうぞ。著作権フリーです。ただし使い方は書いてませんw 2Dのシューティングゲームやアクションゲームで需要がありそう。とはいっても虚数使おうと考える人は自分で書いちゃう気もしますし、虚数をなんで使うのという方には必要ない気もしますが。

#define make_complex_number(%1) ddim %1,2

#module
#deffunc set_imasinary_number array name,int real_part,int imasinary_part

name(0)=real_part
name(1)=imasinary_part

return

#deffunc add array name,int r1,int i1,int r2,int i2

name(0)=r1+r2
name(1)=i1+i2

return

#defcfunc arg array var

return atan(var(0),var(1))

#deffunc product array name,int r1,int i1,int r2,int i2

name(0)=r1*r2-i1*i2
name(1)=r1*i2+r2*i1
return

#deffunc conjugate array name1,array name
name1(0)=name(0)
name1(1)=-name(1)
return

#defcfunc comf array var,int type

if type=1:return strf("(%f,%f)",sqrt(var(0)*var(0)+var(1)*var(1)),atan(var(0),var(1)))
return strf("%d+%di",var(0),var(1))

#global
;~~~~~~以下サンプル~~~~~~
make_complex_number a
make_complex_number x
make_complex_number y
make_complex_number z
set_imasinary_number x,3,2
set_imasinary_number y,1,1
add z,1,2,4,3;imasinary y
product z,11,2,3,4
conjugate a,x
product z,a(0),a(1),x(0),x(1)
mes comf(y,0)

autor:いかろ
スポンサーサイト



検索フォーム
RSSリンクの表示
リンク
ブログランキング
ブログランキング
はやぶさ2署名プロジェクト
ブロとも申請フォーム

この人とブロともになる

QRコード
QRコード