- ベストアンサー
パスカル→JAVAに変換方法
- パスカルからJAVAに変える方法についてわからないと困っています。
- 宣言部では、ZISUという配列型とそれに関連する変数が宣言されています。
- メインプログラムでは、入力ベクトルを読み込んで、離散フーリエ変換を行い、出力ベクトルを表示しています。
- みんなの回答 (1)
- 専門家の回答
質問者が選んだベストアンサー
何がどのようにわからないのかわかりませんが、pascalが解読できないと言う前提で少し説明します。 { 宣言部 } type ZISU= array[0..99] of real; var n,k :integer; p,VALREAL,VALIMAG: ZISU; 上記は型宣言とグローバル変数の定義です。 ZISU 実数型で0~99の100個の配列変数の型宣言です。 n,k : 整数型です。 p,VALREAL,VALIMAG: ZISU型の配列変数です。 { EXTERNAL procedure EVAL ( p:ZISU; n:integer; var VALREAL,VALIMAG:ZISU ); } 上記はコメントです。 {$I B:EVAL.SRC} インクルードファイルの宣言です。 { メ イ ン プ ロ グ ラ ム } begin write(lst,'Input vector'); writeln(lst); プリンタに'Input vector'と印刷します read(n); readln; 数字を読み込んで改行キー待ちです。 write(lst,' n=',n); writeln(lst); 読み込んだ数字を印刷します。 for k:=0 to n-1 do begin read(p[k]); readln; write(lst,p[k]); writeln(lst) end; n回ループで数字を配列変数pに順次読み込んでいきます。 読み込んだ数字は1個ずつプリンタに印字します。 EVAL(p,n,VALREAL,VALIMAG); 外部手続きを実行します。 writeln(lst); writeln(ist); 2行プリンタを改行します。 write(lst,'Output vector [THE DISCRETE FOURIER TRANSFORM]'); writeln(lst); タイトル行をプリンタに印刷します。 for k:=0 to n-1 do begin write(lst,' ',VALREAL[k],'+(',VALIMAG[k],'*i)'); writeln(lst) end n個分のデータをreal と imag 部に分けて印刷します。 end. お役に立つかどうかわかりませんが、アドバイスまで。