のくす牧場
コンテンツ
牧場内検索
カウンタ
総計:127,062,905人
昨日:no data人
今日:
最近の注目
人気の最安値情報

    元スレ+ JavaScript の質問用スレッド vol.98 +

    JavaScript覧 / PC版 /
    スレッド評価: スレッド評価について
    みんなの評価 :
    タグ : 追加: タグについて ※前スレ・次スレは、スレ番号だけ登録。駄スレにはタグつけず、スレ評価を。荒らしタグにはタグで対抗せず、タグ減点を。
    ←前へ 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 次へ→ / 要望・削除依頼は掲示板へ / 管理情報はtwitter

    501 = :

    >>493
    >32bitで64マスを扱うより64bitで64マスを扱う方が高速なのはもちろん遥かに、遥かに簡単になる
    ちとピンとこないな。
    っつーか、「16bitの漢字は16bitのパソコンでないと扱えない」みたいな勘違い臭がする。

    502 = :

    JS的に考えると、内部で自動的に型を変換して、処理速度とメモリが許すまで無限に大きい数を扱えるようにして欲しい。
    現状でも特定の変数を32bit浮動少数型からより小さい整数型にしたりして勝手に高速化したりしてるんだからそれくらいできるはず。

    503 :

    >>493
    だからオセロなのかw

    504 = :

    >>501
    JavaScriptではbit演算は32bit整数扱いになる

    各ビット、(または何ビットかずつ)でマスの状態を表す事で
    演算一回全てのマスにで効果を与える事ができて、
    何回かの単純な演算をするだけで目的の効果を全てのマスに与えられる
    これは配列でループ的なものを使ってやるより普通ビックリするくらい究極に早い
    いわゆるパターンマッチは(場合によってトリッキー(繁雑)になるが)もう配列より遥かに得意
    なにより演算だけでなく参照もarray[n10]よりint&n2の方が早い
    ライフゲームとかだともう天と地ほど違う
    おまけでメモリ消費量も少ない

    8x8マスのオセロ(色んな箇所でbit演算が非常に有効)でやろうとすると64ビット必要
    これを32ビット×2でやると桁溢れ等の始末や、
    どちら、または両方のどの位置同士を演算するかを求める演算が別個にいる
    演算を補助するためにそれより多く演算がいるんだから数倍から下手すると十倍くらい
    パフォーマンスが下がる上に非常に面倒な処理を書かなくてはいけなくなる

    505 = :

    盤上のオセロの状態って、石無し、黒石、白石、の3状態だから1マスにつき2bitの情報量が必要じゃねの?

    507 = :

    >>504
    ビットきっちりのデータ構造よりも、1セル1バイトや1ワードの方が
    特定ビットを取り出す演算がない分、すっきり書けるよ。
    オセロもライフゲームも、書いた事ないでしょ。
    経験者の発言とはちょっと思えない。

    508 = :

    >>505
    ベテランの504さんが1bitで出来るつってんだから出来るだろ

    509 = :

    C+で作ったときは白他、黒他、有無の3つ64bit用意して使うたな。
    128bitで2bitずつ使うのはこれよりどれだけ楽になるのか。
    奇数を有無、偶数を白黒とかにする…?
    うむ???

    510 = :

    64bitを3つだと1マスにつき3bit使ってることになるが・・・

    511 = :

    >>507
    オセロ、将棋、囲碁、ライフゲーム、○×、五目並べといろいろ作ってるよ
    オセロで64ビットでできるというのは間違えてた
    一番昔にオセロ、直近にライフゲーム作ってビット演算で悩んでたから混乱してたわスマン
    でも>>509のやり方でできるのか?

    512 = :

    使用メモリ量を減らすことと、処理速度を上げること、トレードオフであるから用途に合わせて好きなようになさい

    513 = :

    配列とビット演算ならどちらもビット演算の勝ちじゃないの?

    514 = :

    ビット演算がいいのはコピーが早いこと。
    これは配列がどう足掻いても勝てない。

    516 = :

    >>511
    囲碁のプログラミングは難しいだろ、すげーな。
    でも、『GNU GO』みたいなdilation/erosionをするには、
    1ビット(又は2ビット)じゃ足りないよね。
    どうやってビット単位で?

    517 = :

    ネット弁慶の机上の空論なんだから>>501で正解。
    そう言えば、「丘サーファー」みたいに「振りだけのプログラマ」を指す
    短い言葉ってあるのかな。

    518 = 503 :

    >>514
    検索も速いような気がしてきた

    519 = :

    お前らすごいね
    大学や専門学校でプログラム勉強してCとかさんざやったあと
    javascriptの世界に来たの?

    520 = :

    俺はニワカ知識でjavascriptやって状況に応じてC++とかやってたらいつの間にか知ってたな
    大学の情報とか専門行ってたやつと比べると穴だらけだが

    522 = :

    >>516
    お前さんが何を言ってるのかちんぷんかんぷん
    思い出してみたらbit演算を本気でやろうとしてたのはライフゲームだけで
    あとは特にオセロ何かでは配列の変わりに文字列を使えないか悩んでたんだったわ
    それでごっちゃになってた、スマン
    囲碁が難しいってCOMのAIの話か?
    そんなの9路で素人の自分にも負けるようなしょぼいのしか作れんわ
    スマホがメインだから処理がきつくてきつくてな……
    オセロはスマホでもそこらの奴らには負けなくなったけど
    囲碁はちょうど今モンテカルロ系を知って作ってみようかってところ

    523 = 503 :

    学校でちゃんと習ったのは、大学の一般教養でCのポインタまでと
    研究室で院生に教わったアセンブラでDSPを動かしてたくらい

    あ、小学校のときBASICを独学した
    というか本に載ってるプログラムを丸写しがほとんどだったなw

    524 = :

    さっきから、自己の主張を否定する事をよく「思い出す」な。

    525 = :

    >>524
    本当にスマンかった
    その通りだ申し訳ない

    526 = :

    var fade = function (node) {
    var level = 1;
    var step = function ( ) {
    var hex = level.toString(16);
    node.style.backgroundColor = '#FFFF' + hex + hex;
    if (level < 15) {
    level += 1;
    setTimeout(step, 100);
    }
    };
    //setTimeout(step, 100);//Javascript Good partsの記述
    step();//これでも挙動が同じ
    };
    fade(document.body);

    good partsにクロージャのサンプルとして背景を黄色から白色に
    徐々に変えていくとコードが載ってましたが、
    setTimeout(step, 100);である必要ってのが理解できません。
    step()でも全く問題なく同じ挙動しているようにみえるのですが、
    教えてください。

    527 = :

    同じ挙動に「見える」だけで、同じじゃないだろ。

    逆に、setTimeoutって何よ?

    528 = :

    質問させて下さい

    ブログでランダム記事を作成したいと思っています

    <script type="text/javascript"><!--
    function GetRandomNumber() {
    var randnum = Math.floor( Math.random() * 100 );
    document.getElementById("sample").innerHTML = randnum;
    }
    // --></script>
    <p>
    <input type="button" value="ランダムな番号を選ぶ" onclick="GetRandomNumber();">
    </p>
    <p>
    ランダムに選ばれた番号: <span id="sample">***</span>
    </p>

    この * 100 の部分にURLをいれればいいのでしょうか?

    529 = :

    >>528
    なんかもう、ぜんぜん分かってないじゃないか・・・
    お前には無理だやめとけ

    531 = :

    >>529-530
    すいません、ずぶの素人ですT-T

    使用しているのはライブドアブログで

    URLはhttp://blog.livedoor.jp/○○○/archives/3302814.html

    このようになっています

    ランダムで3302814.htmlこの部分を他のアーカイブ数字に変更したいんです

    532 = :

    んじゃそのアーカイブ数字はいくつからいくつまでが存在して、いくつからいくつまでを指定すんのよという話に

    533 = :

    >>532
    ここの数字を完全にランダムにしてしまうと

    他の人のブログに飛んでしまいますんで

    自分のブログ内でのランダムにしたいんです

    説明が下手で申し訳ないです

    534 = 503 :

    >>533
    じゃあまずその数字の規則性を見つけないと

    535 = 503 :

    ああ、途中で・・・

    規則性がないなら、自分の番号だけを配列に入れておこう

    536 = :

    >>535
    この場合は、自分のURL全体をランダムにするより

    数字だけをランダムに入れた方が

    表示は軽くなりますよね?

    537 = :

    自分のブログのRSSを取得して配列にぶち込む
    ぶち込んだ配列の最大長までのランダムなキーを生成
    配列からデータ取り出して、記事URLへリダイレクト

    これが理解できないなら無理
    以下次の質問へ

    538 = :

    >>537
    ヒントいただき有り難うございます!
    頑張ります!

    539 = :

    RSSってなんだそりゃー
    もはやjavascript関係ねー

    540 = :

    >>536
    さして変わらんと思うよ
    俺なら全部入れとくと思う

    541 = :

    えー、xhrの出番だろ?モロにJSじゃないかJK

    542 = :

    てかlivedoorのブログってその記事番号変えただけで人のブログになるような仕様になってんの?
    そんなアホな

    543 = :

    ウェブ上で科学計算が出来るページを作りたいのですが
    その計算に使われるデータが膨大になり,スクリプト本体ではなく
    サーバ上のデータファイルにアクセスするような仕様にしたい場合は
    Javascriptでは厳しいでしょうか?
    別の言語でCGIを利用すべきですか?

    544 = :

    >>543
    ちょっと何言ってんのかわかんない
    ってか、質問者の日本語が分からないのが多いんですけど

    545 = :

    CGIで計算XHRで入出力か、全部JSでやるかって事だろ
    そんなんどっちがいいか状況に合わせて考えることで一概にには言えない

    546 = :

    >>543
    普通はcgi
    JSでやるにしてもサーバー側でのプログラミングも必要だしデータのマージ処理も大変面倒
    ただサーバー側が重くなるので限界はある
    完全に分散処理でweb上で行いたいならJSでもいいんじゃね?

    547 = :

    どちらにせよブラウザがギブアップして処理を中断すると予想

    548 = :

    そんな処理なら並のPCのCGIでやらせたらも危険だから逆にブラウザでやらせるべきだな
    Workerとか使ってさ

    549 = :

    JSで分散コンピューティングか。面白そうだ。
    Nodeとか使えばJSオンリーでいけるよ。

    550 = :

    別に分散コンピューティングとは決まってないが


    ←前へ 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 次へ→ / 要望・削除依頼は掲示板へ / 管理情報はtwitterで / JavaScript一覧へ
    スレッド評価: スレッド評価について
    みんなの評価 :
    タグ : 追加: タグについて ※前スレ・次スレは、スレ番号だけ登録。駄スレにはタグつけず、スレ評価を。荒らしタグにはタグで対抗せず、タグ減点を。

    類似してるかもしれないスレッド


    トップメニューへ / →のくす牧場書庫について