HSPポータル
サイトマップ お問い合わせ


HSPTV!掲示板


未解決 解決 停止 削除要請

2012
1121
re関数の使い方について 初歩的な質問です3解決


re

リンク

2012/11/21(Wed) 12:28:02|NO.50784

初歩的なことですみません。関数について質問です。
ヘルプを見て混乱してしまったのでこちらで質問させてください。
HSPで遺伝的アルゴリズムのプログラムを作っています。

関数で配列内の一部を変更したいですがやり方がわかりません。。
この場合、どう記述したらよろしいでしょうか?
ご指南お願いします。


#module #deffunc gene_set int p1 gene(p1,p1)=10 return //gene(p1),gene(p2)をp3の位置でシャッフル #deffunc gene_sh int p1,int p2,int p3 return //gene(p1)をp2の確立で突然変異 #deffunc gene_mu int p1,double p2 return #global gene_n=10 ind=100 gene_l=10 dim gene,gene_n,gene_l gene_set 8 dialog ""+8+","+8+"="+gene(8,8)+"" //10と表示させたい



この記事に返信する


Him

リンク

2012/11/21(Wed) 13:36:18|NO.50786

geneという変数はグローバル領域の変数なのでモジュール領域内で使用するには

gene(p1,p1)=10


gene@(p1,p1)=10
と記述します。



@key

リンク

2012/11/21(Wed) 20:05:11|NO.50788

自分のプログラム固有の関数なら、変数が被らないように気をつけて#module〜#globalを外すのが一番です


他の方法としては、
#deffunc gene_set int p1,array p2
p2(p1,p1)=10
return

として命令を呼ぶときに
gene_set 2,gene としましょう

それか、↑の方の方法を使うのもいいでしょう



re

リンク

2012/11/22(Thu) 01:36:11|NO.50791

himさん、@keiさん、ありがとうございます!
助かりました



ONION software Copyright 1997-2023(c) All rights reserved.