K.Maebashi's BBS 投稿フォーム
ハンドル名
件名
Link
>>http://kmaebashi.com/programmer/devlang/index.html >>のページに、最新版への配布ページへのリンクがあると、 >>多少はこういう間違いが減るかもしれません… > >一応つけました。 >ただ、crowbarはまだいろいろな意味で未完成品なので、 >いかにもな「ダウンロードページ」はまだ作りたくないところです。 > >ver.0.3.01の修正でkitさんのプログラムが動くようになりましたので、 >動いたものを貼っておきます。 > >function ArrayIterator(anArray) { > this = new_object(); > index = 0; > this.first = closure() { index = 0; }; > this.next = closure() { index++; }; > this.isDone = closure() { return index >= anArray.size(); }; > this.currentItem = closure() { return anArray[index]; }; > return this; >} > >function compare(i, j) { > for (; !i.isDone() && !j.isDone(); i.next(), j.next()) { > if (i.currentItem() < j.currentItem()) { > return -1; > } > if (i.currentItem() > j.currentItem()) { > return 1; > } > } > if (i.isDone() && j.isDone()) { > return 0; > } > if (i.isDone()) { > return -1; > } else { > return 1; > } >} >a = {1, 2, 3, 4, 5, 6, 7, 8}; >b = {1, 2, 3, 4, 5, 6, 7, 9}; > >print("compare.." + compare(ArrayIterator(a), ArrayIterator(b)) + "\n"); > >for (i = ArrayIterator(a); !i.isDone(); i.next()) { > print("" + i.currentItem() + " "); >} >print("\n"); >
spamよけのため、ここに「ほげぴよ」と入力してください。
削除パスワード :
クリック!