• ベストアンサー

JS セルインデックスから関数を作れますか?

JavaScript 正方形を縦横とも同じ数で分割した時に、セルインデックスを引数として 列番号、行番号、色名を返す関数 getCellinfo(index, nn) を作れますか? なお、次の変数名を用いることにします。 let nn : n行n列の正方形 let index : セルインデックス (parameter) let col : 列番号 (先頭 0) let row : 行番号 (先頭 0) let bgc : 色名

質問者が選んだベストアンサー

  • ベストアンサー
回答No.1

function getCellinfo(index, nn) { let x=index % nn; let y=index / nn | 0; return {x:x,y:y,c:x&1^y&1}; } こんな感じ?(超手抜きですけど^^)

retorofan
質問者

お礼

ご回答ありがとうございます。

その他の回答 (5)

回答No.6

>>こっちが水商売やってる側 >大変な勘違いをしてしまい、申し訳ございません。 m(_ _)m > ”BBA”しか来ない、ってことですか! いや、キャストがBAなんです(w) >遊園地なら趣向を凝らして『お化け屋敷』を >やっているところも。 ある意味、今がそれ?(笑)

回答No.5

>BAならぬ ”BBA”ですかい?! >場違いの所へ行っているんじゃありませんか? ちがうちがう。こっちが水商売やってる側なの^^ コロナとかで、暇だからプログラムしてるだけ^^ 客いないと、暇だったから^^ >ところで、「最近の人って、・・・」の件。同感です。 ね^^ (相手によっては、火病中傷にもなりかねないので、  それ以上は触れない方が良さげなので掘らないで置くね~) なもんで、時代の流れとして新しい考え方や手法を?なのかな~と ちょっと楽しみ&ちょっと悲しい気分で見てる所ですね。 結局「人生そんなもんさ」(笑) ってことかな^^ なお、感じてるとは思いますが、 プログラム手法がかなり古い人ではあり、 x+=j>1&j<5-j>5&j<9; y+=j>3&j<7-j>7-j<3; 1 8 2 7 0 3 6 4 5 これを「Atari」ってコメント入れる人です(どんだけ古いんねん) (極値変換なしのダイレクト) (今も酒呑んでるので、ミスってたらごめん。ただやりたいことはわかってもらえるかと^^) 酒のんでるついでだと、 s+=j!=0-j==0&s>0;加減算あり s+=j!=0-j==0*s;シンプルならこれもありね。 これを、x,yの加算値に追加することを プログラム用語で「酔っ払い」ともいう。 (ふる~い、言葉ですが) 3連なら、s=j?s+1:0;こんだけか? んま、こういう人ですんで^^こちら。 lll: mov ax,[j] ; CPUによっては、代入だけでもZが変化する or ax,ax jmp z,zero inc [s] mov ax,[s] ; なければmoveIncStoreでもいい。 ret ; retn retf は機種による zero: xor ax,ax ; よくよく考えると、テンポラリjは破壊していいので別案がある気がするな~ ret あ~だめだ、酒追加してくる~ (これが、私の正体^^割と、ドアホな、のんだくれですわ)

retorofan
質問者

補足

>こっちが水商売やってる側 大変な勘違いをしてしまい、申し訳ございません。 m(_ _)m ”BBA”しか来ない、ってことですか! 今は夏。 遊園地なら趣向を凝らして『お化け屋敷』を やっているところも。 あなたのお店は『BBA屋敷(?)』じゃ 不満ってことなんですね? 若い女子のに来て欲しいのなら、 それなりに企業努力したほうが良さそうですよ。 まあ、OKWAVEには大いに貢献されているのは 認めますが・・・。

回答No.4

>もう少し、待つことにしますので悪しからず! うぃ!適当にたのまっす~ もうね~時代が、若い子がいないもんで、 呑み言っても「BA」ばっかりでしてね~ (こっち側お水系なもんで。  呑み屋の爺の暇つぶしがプログラムなんす~) あ~若い子~(論点はずれすぎ~) ただ、見てると最近の人って、 プログラムをアルゴリズムではなく、パーツとして 見てる傾向が強い気がします。 なので、何してるか?はどうでもよくて、 これを入れればこうなるよね?だけで世界が回ってる ってそんな印象ですね~。

retorofan
質問者

補足

>呑み言っても「BA」ばっかりでしてね~ 「ウヒャ~!」 BAならぬ ”BBA”ですかい?! 場違いの所へ行っているんじゃありませんか? ところで、「最近の人って、・・・」の件。同感です。 今は、何事も時短、せっかちな世の中ですね。 だから、プロセス(途中経過)、アルゴリズムなど 考えずに、「早く結論言ってよ!」というケースが多いように感じられます。(-_-;

回答No.3

やっぱそこか^^要定の話だと思った^^ (前にそこ、話したからま~そうだろうな~と思ってたところでしたわ) とりあえず、今回の遊びは、 割り算の答えに"|0"で0を論理和してる所かなっと。 そこ以外は、何にも、特徴がないんですけどね~

retorofan
質問者

補足

今回のAsarKingChangさんは 999本集めた弁慶と同じ状態です。 牛若丸が現れたら、そちらがBAに。 そうでなければ、あなたがBA。 きわどい状況にいます。 もう少し、待つことにしますので悪しからず!

回答No.2

ちなみ、意味あってた??

retorofan
質問者

補足

>次の変数名を用いることにします。 let col : 列番号 (先頭 0) let row : 行番号 (先頭 0) let bgc : 色名 こうした定義条件されたら、次のようにしないと・・・。 function getCellinfo(index, nn) { let col=index % nn; let row=index / nn | 0; return {col:col, row:row, gbc:col&1^row&1}; }

関連するQ&A