[過去ログ] プログラミングのお題スレ Part18 (1002レス)
1-

このスレッドは過去ログ倉庫に格納されています。
次スレ検索 歴削→次スレ 栞削→次スレ 過去ログメニュー
1
(9): 2020/07/14(火)13:53 ID:jW5p6F/e(1) AAS
プログラミングのお題スレです。

【出題と回答例】
1 名前:デフォルトの名無しさん
  お題:お題本文

2 名前:デフォルトの名無しさん
  >>1 使用言語
  回答本文
  結果がある場合はそれも

【ソースコードが長くなったら】 (オンラインでコードを実行できる)
外部リンク:ideone.com
省11
2: 2020/07/14(火)21:06 ID:5wYEuLp1(1) AAS
%W[> > 1 \ o t s u].each(&:display)

# => >>1 otsu
3
(1): 蟻人間 ◆T6xkBnTXz7B0 2020/07/16(木)06:35 ID:Tv2xtriA(1/13) AAS
前スレ996の三次元タートルグラフィックス。
懸賞WebMoney5000円です。早い者勝ち。
4: 2020/07/16(木)07:00 ID:Rw1l0Cvs(1/3) AAS
>>3
スレチ
消えろ
5: 蟻人間 ◆T6xkBnTXz7B0 2020/07/16(木)07:12 ID:Tv2xtriA(2/13) AAS
宿題ではありません。
6: 2020/07/16(木)11:35 ID:6HbDCmR4(1/5) AAS
普通にドン引き
なんか作って欲しいツールの作成依頼スレになりそう
出題者は解答を持ち合わせておくべきだな
7: 2020/07/16(木)12:31 ID:II7vBdwc(1) AAS
短期間に複数の出題をするのはいかがなものか
前の出題を締め切ってからするべきだろう

中には解答に数ヶ月を要するものもあるので

2chスレ:tech
>0010 蟻人間 ◆T6xkBnTXz7B0 2020/03/15 04:20:
>10
>お題: 一辺2000メートルの正方形の平面上にランダムに動く物体5個がある。

2chスレ:tech
>0801 デフォルトの名無しさん 2020/06/03 15:52:13
>10 js
省3
8
(2): 蟻人間 ◆T6xkBnTXz7B0 2020/07/16(木)17:15 ID:Tv2xtriA(3/13) AAS
【防衛システムに関する解説】
この出題は平面上の幾何学的な事象として論じられる。よって数学のベクトルの知識が必須である。
自機は中央にあり動かないのであるから、これを原点としてもよい。レーダー電波は放射状の電磁波であり、明らかに光速で直進する。
レーダーの直線の方程式は角度thetaのときr*(cos(theta), sin(theta))と書ける。すなわちレーダー角に触れれば探知される。
敵機はアニメーションの原理で動く。よってタイマーを使って一定時間ごとに位置を変化させれば動いているように見える。
位置や速度に特に指定はない。よって乱数などで決めることになる。
続く。
9
(1): 蟻人間 ◆T6xkBnTXz7B0 2020/07/16(木)17:24 ID:Tv2xtriA(4/13) AAS
それぞれの敵機の位置ベクトルと速度ベクトルがあり、それらは時間の変数によって変化する。敵機の速度ベクトルを推定するために、位置ベクトルを記録せねばならない。
レーダーは360度回るのであるから、隠れ場所がなければ特定の角度となり、必ず見つかる。位置は一定時間ごとに必ずわかるはずである。
位置の変位を経過時間で割れば速度ベクトルが推定できる。位置がわかれば3平方の定理で距離がわかる。距離が近ければミサイルを
発射せねばなるまい。ミサイルを撃つ方向はatan2関数を使用すれば求められる。
【解説終わり】
10
(1): 蟻人間 ◆T6xkBnTXz7B0 2020/07/16(木)17:36 ID:Tv2xtriA(5/13) AAS
これでいいか?
11: 蟻人間 ◆T6xkBnTXz7B0 2020/07/16(木)18:19 ID:Tv2xtriA(6/13) AAS
【SQLサイン関数出題の解説】
ウェブや深層学習などの進展につれて、今や巨大データの扱いは、ありふれた作業となってきている。巨大データを扱う場合、データベースを使うとアクセス能力や利便性を向上できる。中でも特に一般的なSQLについて出題することにした。

しかし、SQLは方言が多くて、細かい調整はマニュアルを読まないとわからないことが多い。さらに、アクセス方法やインターフェイスが多様すぎて、こちらで解析するのは困難である。

よって採点は行わない。各自で自ら結果を確認して採点してほしい。SQLを始めるなら、まず入門書から入って、次に使用するデータベースのマニュアルを読んでもらいたい。
続く。
12
(1): 蟻人間 ◆T6xkBnTXz7B0 2020/07/16(木)18:37 ID:Tv2xtriA(7/13) AAS
「精度は構わない」といったはずだ。最悪でもnearest neighborhoodを選んでも正解にした。サイン関数は波形のグラフをとる代表的な三角関数だから、高校生以上なら知ってるはずだ、知名度は高いと判断した。 周期性があるので有限のテーブル(表)で近似できる。

「SQLのみを使う」とも言っていない。SQLの外部でサイン関数の数値を計算しても正解とする。しかしテーブルは作成しなければならない。すでに作成済みの場合に備えてまず「DROP TABLE ...」する。

次にテーブルの仕様を設計して「CREATE TABLE ...」する。細かいことは...で省略するが、わからないときは入門書かマニュアルを参照して下さいな。

テーブルの行を追加するには「INSERT INTO ...」する。テーブルからサイン関数の値を問い合わせる場合は「SELECT ... FROM ... WHERE ...」する。これが実際のサイン関数の値に常識的に近ければ正解とする。
【解説終わり】
13: 2020/07/16(木)18:53 ID:CQUy/8Mn(1) AAS
解説と解説に沿った解答例のコードを貼れ
14: 2020/07/16(木)20:27 ID:6HbDCmR4(2/5) AAS
>>12
-πから+πまでのsin関数表を元に-∞から+∞までのsin関数をNN法を使って完成させろという意味だったのか
15: 2020/07/16(木)20:37 ID:Zj8FcZKn(1/7) AAS
精度は構わないなら
0, 1, -1 の3択でも正解か
16: 蟻人間 ◆T6xkBnTXz7B0 2020/07/16(木)21:05 ID:Tv2xtriA(8/13) AAS
>>8
訂正。
(誤) 方程式はr*(cos(theta), sin(theta))と書ける。
(正) 方程式は(x, y) == r*(cos(theta), sin(theta))と書ける。
17
(3): 2020/07/16(木)21:10 ID:6HbDCmR4(3/5) AAS
提出済みのコードに
x_hat%(2*π)-π
を加えれば絶対値が大きな任意の数にも対応出来る
18: 2020/07/16(木)21:11 ID:6HbDCmR4(4/5) AAS
>>17
はsin関数の問題の話ね
19: 2020/07/16(木)21:27 ID:Zj8FcZKn(2/7) AAS
>>8
敵機?
ランダムに動く物体でしょ
慣性が働くとも書いてないし連続で動くとも書いてない
各瞬間ランダム位置に出現なのかもしれない

>>9
ランダムに動く物体5個を区別出来るなんて書いてない
距離と方向がわかるとだけ

予測した位置と移動速度、移動方向から推測してミサイルを打つ方向を決める必要がある
その方向決めという重要な部分が書いてない
省1
20: 2020/07/16(木)21:34 ID:Rw1l0Cvs(2/3) AAS
クソコテはどっちも出題がクソ
存在もクソ
21
(1): 2020/07/16(木)21:44 ID:Zj8FcZKn(3/7) AAS
>>17
任意のは言い過ぎ
値が大きいと有効桁ゼロになる

精度は問わないといっても有効桁ゼロはさすがにダメと思う
22
(2): 蟻人間 ◆T6xkBnTXz7B0 2020/07/16(木)21:54 ID:Tv2xtriA(9/13) AAS
物体の現在位置: (px, py)
物体の推定速度: (vx, vy)
ミサイルの速さ: mv
距離:sqrt(px**2+py**2)
到達にかかる時間: t_star==sqrt(px**2+py**2)/mv
到達までにかかる時間を加味した物体の予想位置:
(px+t_star*vx, py+t_star*vy)
ここまでの計算を繰り返し、誤差を減少させる。
結果の衝突予想位置にatan2に施すとミサイルの発射方向が得られる。
23: 2020/07/16(木)22:05 ID:6HbDCmR4(5/5) AAS
>>21
はいすみません
x_hatがπ以上の正の場合
x_hatが-π以下の負の場合
それ以外の場合で式を分ける必要がありそう
24
(1): 2020/07/16(木)22:06 ID:Zj8FcZKn(4/7) AAS
>>22
頭悪い方法ですね
25: 蟻人間 ◆T6xkBnTXz7B0 2020/07/16(木)22:09 ID:Tv2xtriA(10/13) AAS
スマートな方法は軍事秘密なんだよ

(方程式を使う)
26: 2020/07/16(木)22:28 ID:Zj8FcZKn(5/7) AAS
簡単な二次方程式になるわけだけど
27: 蟻人間 ◆T6xkBnTXz7B0 2020/07/16(木)22:32 ID:Tv2xtriA(11/13) AAS
昔はモンキーハンティングとかのシミュレーションやったよ
28: 2020/07/16(木)22:34 ID:Zj8FcZKn(6/7) AAS
頭悪い方法で?
29: 2020/07/16(木)22:35 ID:Zj8FcZKn(7/7) AAS
>>22から頭の悪さがにじみ出てる
30: 2020/07/16(木)22:36 ID:Rw1l0Cvs(3/3) AAS
頭悪いのがにじみ出てて読んでてイライラする
31: 蟻人間 ◆T6xkBnTXz7B0 2020/07/16(木)22:37 ID:Tv2xtriA(12/13) AAS
他に剛体球の衝突とか、太陽系の表示とか、万有引力とか。
32
(1): 蟻人間 ◆T6xkBnTXz7B0 2020/07/16(木)23:19 ID:Tv2xtriA(13/13) AAS
高校レベルの数学でごめんね.

v:ミサイルの速さ。
d:ミサイルの方向ベクトル。
t: 時刻。
P: 物体の現在位置。
V: 物体の推定速度。
方程式v*d*t==P+V*t.
移項して
(v*d - V)*t==P.
t==P・(v*d - V)/||v*d - V||**2.
33: 2020/07/17(金)04:33 ID:MbWzFU1J(1/2) AAS
>>17
訂正

まず、0〜2*πのsin関数表を作成する
その後、
x_hat>=0 の場合: x_hat%(2*π)
x_hat<0の場合: 2*π + x_hat%(-2*π)
という式でx_hatを変換して上書きする
34: 2020/07/17(金)06:25 ID:CFzyXZw3(1/2) AAS
>>32
本当頭悪いね
それでどうやって解くつもり?
高校生ならもっとスマートに解く
35: 2020/07/17(金)08:57 ID:ICqzduEx(1) AAS
解答側だと頭悪いと煽られるから出題側に回ってたわけか
まあ出題も頭悪そうだったが
36
(1): 2020/07/17(金)09:13 ID:TqoFz7RF(1/2) AAS
回答例用意してなくても出題していいと思う
でもニッチすぎる問題で知識ひけらかしてるみたいな出題は例出してくれ
37
(2): 蟻人間 ◆T6xkBnTXz7B0 2020/07/17(金)10:03 ID:+x+SJT9l(1/10) AAS
P + V*t==v*d*t.
二乗すればdが消えて
|P|**2 + 2*P・V*t + |V|**2*t**2 == (v*t)**2.
これはtの二次方程式であるから整理して解の公式で解ける。
t<0のときは過去になるので除外する。
38: 2020/07/17(金)10:05 ID:2gsvlStU(1) AAS
>>1 スレ一覧

1: 2chスレ:tech
2: 2chスレ:tech
3: 2chスレ:tech
4: 2chスレ:tech
5: 2chスレ:tech
6: 2chスレ:tech
7: 2chスレ:tech
8: 2chスレ:tech
9: 2chスレ:tech
省8
39: 2020/07/17(金)10:57 ID:IMrokyul(1) AAS
>>37
えらい時間がかかったね
君、出題者だよね?
40: 蟻人間 ◆T6xkBnTXz7B0 2020/07/17(金)11:00 ID:+x+SJT9l(2/10) AAS
三次元タートルで臓器を描画したら、レオナルド・ダ・ヴィンチのような天才になれるかもよ。
今、3Dプリンタのブームで三次元タートルグラフィックスは需要があるから、面白いことになるよ。
41: 蟻人間 ◆T6xkBnTXz7B0 2020/07/17(金)11:24 ID:+x+SJT9l(3/10) AAS
臓器売買をなくすには、臓器を作ればいい。
ふふん。
42: 2020/07/17(金)11:55 ID:vGVdpt19(1/6) AAS
>>37
で、5個の物体の
43: 2020/07/17(金)11:56 ID:vGVdpt19(2/6) AAS
区別はどうするの?
44
(1): 蟻人間 ◆T6xkBnTXz7B0 2020/07/17(金)12:50 ID:+x+SJT9l(4/10) AAS
レーダー角の順番に物体をソートし、各物体に番号を付ける。レーダー角において物体が重なれば重複する恐れがあるが、とくに問題ではない。重複した物体が離れたときに、新規の物体の出現と見なせばいい。

前回と前々回の観測により、位置と速度が推測できる。次に予想される出現位置に一番近い物体を選択し、番号を関連付ければ同定できる。
45
(4): 2020/07/17(金)13:19 ID:MbWzFU1J(2/2) AAS
>>36
チューリングマシンは現場でバリバリ使える調べて覚えるだけの価値がある技術だ
規則が連続している場合上の方を取ってくるとか2つの数値を比較して大小関係をルールにするといったことが出来る
正規表現で数値を取ってきてプログラミング言語で比較処理するより構造的に書ける
だから解答を用意した上でまずは簡単なお題から出して、次は少し難易度を上げるようなお題を考えながら待っていたが誰も解答しなかった
46: 2020/07/17(金)13:33 ID:TqoFz7RF(2/2) AAS
>>45
どの言語でも使えるアルゴリズム?設計パターンなの?
理論だから賞味期限の長い知識なのはわかるけど優先的に教えられないのはなぜ?
47
(1): 2020/07/17(金)13:35 ID:vGVdpt19(3/6) AAS
>>44
各フレーム物体がランダム位置で出現する場合には使えません
48
(1): 2020/07/17(金)13:37 ID:vGVdpt19(4/6) AAS
>>45
チューリングマシンの実用性はゼロと思うけど
完全に学問用
49: 2020/07/17(金)13:40 ID:Jbjf6afq(1) AAS
CFGのクラスのものを例題にしたから意図したような回答がなかったんじゃないかと
50: 2020/07/17(金)14:08 ID:x8K2tEcw(1) AAS
学術の巨大掲示板群 - アルファ・ラボ 外部リンク:x0000.net
数学 物理学 化学 生物学 天文学 地理地学
IT 電子 工学 言語学 国語 方言 など

simulationライブラリで純粋な関数式プログラミングをする
UIライブラリ (C#, 2D) を作ったよ
連続と離散を統一した!
4Dエンジン
matrixのライブラリ
ある強力なFor関数
SQLライブラリ
省4
51
(1): 蟻人間 ◆T6xkBnTXz7B0 2020/07/17(金)14:59 ID:+x+SJT9l(5/10) AAS
>>47
UFOじゃあるまいし、そんな物体が地球上にあるわけない。
52: 蟻人間 ◆T6xkBnTXz7B0 2020/07/17(金)15:18 ID:+x+SJT9l(6/10) AAS
ステルス機とか、超音速機とか、プラズマ兵器とかのことか。

それらは想定外だよ。
53: 蟻人間 ◆T6xkBnTXz7B0 2020/07/17(金)15:23 ID:+x+SJT9l(7/10) AAS
プラズマ兵器は、実戦で使われた記録はないし、超音速でもレーダー網からは捕捉出来る。

ステルスは想定外。
54: 蟻人間 ◆T6xkBnTXz7B0 2020/07/17(金)16:57 ID:+x+SJT9l(8/10) AAS
防衛システムの歯無しは終わり。

次は三次元タートルグラフィックス。位置と向きの情報を持ったタートル(亀)を操作して、面白い図形を描こうというお話。平面じゃないよ、立体だよ。

レンダリングを何にするか。OpenGLは終わったし、DirectDrawは初心者には難しいし。そうだ、JavaScriptのThree.jsにしよう。これならスマホでも確認できるね。使ったことないけど。
55: 2020/07/17(金)17:49 ID:vGVdpt19(5/6) AAS
>>51
出題文を読みかえしてみろ
56: 2020/07/17(金)17:51 ID:vGVdpt19(6/6) AAS
ランダムに動く物体5個
57: 蟻人間 ◆T6xkBnTXz7B0 2020/07/17(金)18:31 ID:+x+SJT9l(9/10) AAS
さて、亀は三次元の座標データP=(x, y, z)と三次元の方向ベクトルD=(dx, dy, dz) (単位ベクトルとする)で表せる訳だが、
線分を一つ引くごとに、線分を指定した位置に世界に追加する。世界の観測者の視点であるカメラは、テキトーな位置と方向で設置しておく。
描画ルーチンは、世界に追加された線分群をまとめて描く。描画エンジンは遠近法により、奥行きを持った映像を完成する。
58
(1): 蟻人間 ◆T6xkBnTXz7B0 2020/07/17(金)18:35 ID:+x+SJT9l(10/10) AAS
小さなお題: Three.jsで三次元空間に線分を一本描画せよ。
59
(1): 2020/07/17(金)20:07 ID:Q6g2SqxJ(1) AAS
だめだ
何をいっているのだか私にはさっぱり
60
(1): 2020/07/17(金)20:36 ID:RwfCcdVI(1) AAS
>>59
NGワードに糞コテを登録すればOKということだけ理解してれば大丈夫。
61: ◆QZaw55cn4c 2020/07/17(金)20:39 ID:zSX7HXP2(1) AAS
>>60
NGワードなんてスルー能力の足りない人が使うものですよ、私は全然使いませんね、だって必要ないし…
62: 2020/07/17(金)21:03 ID:CFzyXZw3(2/2) AAS
クソコテスレ
63: 蟻人間 ◆T6xkBnTXz7B0 2020/07/17(金)21:18 ID:hZ0JaeyU(1/2) AAS
こんな感じでHTMLを書けばThree.jsで三角形が描ける。
外部リンク:gist.github.com
64: 蟻人間 ◆T6xkBnTXz7B0 2020/07/17(金)21:29 ID:hZ0JaeyU(2/2) AAS
これを応用すれば、スマホでも動作するブラウザゲームを自分で作って
ゲーム会社を立ち上げることができるかも。

Three.jsがどんなものかは、

外部リンク:threejs.org

を見ればたぶんわかる。三次元を描画するものだ。
65: 2020/07/17(金)21:32 ID:C5ummCR0(1) AAS
スレタイからずれすぎ
66: 2020/07/18(土)00:01 ID:tp8HW1uL(1/2) AAS
ついに蟻人間は、3次元まで行ってしまったか

その内、Quaternion(4元数)がどうたらこうたらと、言い出しかねないw
67: 2020/07/18(土)00:03 ID:wH8oKg8v(1) AAS
>>58
分かり難いけど、描けました。
画像リンク[gif]:i.imgur.com
P0(0,0,0)-P1(100,100,100)です。

//形状オブジェクトの宣言と生成
var geometry3 = new THREE.Geometry();

geometry3.vertices.push( new THREE.Vector3(0, 0, 0) );

geometry3.vertices.push( new THREE.Vector3(100, 100, 100) );

//材質オブジェクトの宣言と生成
var material3 = new THREE.LineBasicMaterial({ color: 0xFFFFFF, transparent:true,
省6
68
(4): 2020/07/18(土)06:18 ID:yeg1h1ii(1/2) AAS
お題:何らかの数式のグラフとしてハート形を出力せよ。
使用する言語は問わない。
69
(4): 2020/07/18(土)10:23 ID:Z+cMIoZ7(1/2) AAS
>>68
HTML5,JavaScript
<canvas id="cv" width="360" height="360"></canvas>
<script>
var ctx = document.getElementById("cv").getContext("2d");
ctx.lineWidth = 5; //線の太さ
ctx.strokeStyle = "red";
ctx.beginPath();
var r=10;var x0=0,y0=0;

for(i=0;i<=360;i+=5){
省8
70
(2): 2020/07/18(土)10:47 ID:zLRZfcZE(1) AAS
>>68 Lua
for y=1.5,-1.5,-0.1 do
for x=-2,2,0.1 do
if (x^2+y^2-1)^3-x^2*y^3<0 then
io.write("@@")
else
io.write("__")
end
end
print()
省1
71
(2): 2020/07/18(土)10:50 ID:dRuMQkW5(1) AAS
>>45
出題が糞過ぎたから誰も答えなかったんだぞ
72: 2020/07/18(土)11:55 ID:n7a2F8Nj(1/6) AAS
>>45
このスレでは誰もお題に答えないということがよくある
俺もお題出したことがあるがそういう時があった
73: 2020/07/18(土)12:04 ID:Z+cMIoZ7(2/2) AAS
>>68
❤♡🤎🧡🤍🖤❤❣💟💜💚💛💙💗
&hearts; &#9825; &#10084;
74
(1): 2020/07/18(土)12:35 ID:xMoPei8m(1) AAS
>>69
きれい
1-
あと 928 レスあります
スレ情報 赤レス抽出 画像レス抽出 歴の未読スレ AAサムネイル

ぬこの手 ぬこTOP 0.239s*