スレ立てるまでもない質問はここで 164匹目

レス数が900を超えています。1000を超えると表示できなくなるよ。
1デフォルトの名無しさん
垢版 |
2023/04/10(月) 22:13:58.31ID:YMPgGfeQ
この板はプログラムを作る人のための板です。
あらゆる質問はまず
スレ立てるまでもない質問はここで
スレにしてください。

次スレは>>980が立てること

【前スレ
スレ立てるまでもない質問はここで 163匹目
https://mevius.5ch.net/test/read.cgi/tech/1670470167/ VIPQ2_EXTDAT: checked:vvvvv:1000:512:: EXT was configured
2023/06/16(金) 17:12:41.28ID:XznKlCwp
頭悪すぎて引くわ
2023/06/16(金) 17:14:04.86ID:U4xocwYN
エスパー
VB.NET自体は、何にでも使える超基本エンジンみたいに考えたらいいぞ
何にでも使えるけど、ゲームに使いたいならゲーム用のライブラリをその上に積んだほうがいい
期待する関数はきっとそっちのほうにある
2023/06/16(金) 17:15:46.25ID:FJrIBz+q
つかえないじゃん.net
2023/06/16(金) 17:17:21.47ID:h+qjD5Aj
つかえるわけねーじゃん
むしろお前何がつかえるんだよw
826デフォルトの名無しさん
垢版 |
2023/06/16(金) 17:18:37.72ID:es6+kLXo
>>821
探し方が悪いだけでしょw
2023/06/16(金) 17:30:04.71ID:FJrIBz+q
>>825
日本語
2023/06/16(金) 17:35:04.65ID:QRaY2Owc
使えてないぞw
829デフォルトの名無しさん
垢版 |
2023/06/16(金) 17:51:28.99ID:Xntsmxpr
プログラマー向いてる向いてないってどうやったら分かる?
2023/06/16(金) 17:54:52.96ID:V1VZ3egw
>>829
板違いって分かってない時点でプログラマーには向いてない
2023/06/16(金) 18:01:18.95ID:xumbESuc
プログラミングしてみたらわかる
FizzBuzzを何か見ながらでないとできない人がいると聞いて「そんなやつおらんやろ」と思うなら向いてる可能性があるし「初心者ならそんなもんだろ」と思うなら向いてない
2023/06/16(金) 18:07:56.12ID:Exlkot/v
意味不明
2023/06/16(金) 18:08:02.49ID:FJrIBz+q
>>828
大丈夫
ここの住人でも怪しのいるから
2023/06/16(金) 18:24:09.13ID:3GArmgDK
ここで教えてもらえるのは人の煽り方だけよ
2023/06/16(金) 18:31:53.33ID:vaGJrRvS
>>833
自分で気づけてないかもしれんがお前はその中でもブッチギリだぞ?
836デフォルトの名無しさん
垢版 |
2023/06/16(金) 18:36:09.15ID:dv97xAYD
>>821
馬鹿過ぎて笑える
2023/06/16(金) 18:50:02.53ID:FJrIBz+q
>>835
最下位ってこと
ありがとう褒めてもらえて

>>836
工夫しないと何もできないってそれ使えないっていうんですよ
2023/06/16(金) 19:29:24.86ID:+fhP6ggu
>>831
FizzBuzzあたり含めた簡単に判別できるSPIみたいなテストがあればいいのにな
適性ない進路に進む不幸な学生が増えないように
2023/06/16(金) 19:35:27.71ID:vaGJrRvS
そいつら適性無いのを絶対認めないから意味ないよ
儲かるという話を聞かされてその気になったやつの洗脳はなかなか解けない
2023/06/16(金) 20:35:18.39ID:FJrIBz+q
これ思い出した

プログラミングスクールの講師を2年間続けて限界が来て辞めた話
https://qiita.com/Yuhi_M/items/a4cfcea07a93fc593ea9


Twitterでバズったやつ
2023/06/16(金) 21:05:05.54ID:pxV2o7lo
稼ぎたいって目的があるだけマシですかね
うちの若い子は他の業界で内定なかったから仕方なくだそうです
842デフォルトの名無しさん
垢版 |
2023/06/16(金) 22:17:33.96ID:jw9f/Yqe
>>840
お前みたいな馬鹿を相手にするのが嫌になって辞めた話しだな
2023/06/16(金) 22:37:35.74ID:+fhP6ggu
プログラミングは適正のある人とない人がはっきり分かれるから10年頑張っても適正ない人はどうにもならない
それが悲しい
相応の時間を掛けて取り戻せるビハインドならその程度は、スクールの先生には手間かもしれないけど、全然問題ないと思う
2023/06/16(金) 22:58:34.88ID:FJrIBz+q
>>842
答えられないのに偉そうにされてもなぁ
そういうのは答えてから言うもんだ
2023/06/16(金) 23:20:36.95ID:ORuYbOPU
FizzBuzzできても日本語が通じないやつはいらない
自前で設計もできないアホもいらない
2023/06/16(金) 23:34:24.97ID:GNGKJ6vV
FizzBuzzっていかようにも書けるので、出題者とのやりとりで「もっとも正しいFizzBuzz」を書く課題だと思ってる
847デフォルトの名無しさん
垢版 |
2023/06/16(金) 23:50:52.79ID:UfuNJ8Sk
>>844
こういう馬鹿は自分では何もせず他人が無償で教えてくれると思ってんのかね
そもそもこんな馬鹿は次々とわからないことが出てきて積むだけだろうに
848デフォルトの名無しさん
垢版 |
2023/06/16(金) 23:57:51.58ID:AmdyN8Nd
>>846
「もっとも正しい~」とか言っちゃう人は10年頑張ってもどうにもならないほうの人なので早めに他の道を模索しろ
2023/06/17(土) 00:30:37.38ID:NJVRNPyW
>>846
もっとも正しいの意味が想像できないので
具体的に出題者役をしてくれないか?
2023/06/17(土) 01:04:49.89ID:J1YbN+ZJ
>>846
もっとも正しいの意味を教えてくれ
2023/06/17(土) 06:39:13.41ID:gxD6uzwh
もっとも正しい=出題者のさじ加減って意味だよ
読んでわからんのか?
2023/06/17(土) 06:46:30.15ID:KfWQWP0B
さすがにわからんだろ
2023/06/17(土) 08:32:41.54ID:78xJyQUW
>>848
その「トラップ」が潜んでいることまで含んでの出題だろ
この出題者を前に、現実解はどんなだ?
2023/06/17(土) 10:17:06.53ID:NJVRNPyW
出題者側としてはコピペ防止のため問題を変形させている
例えばFizzBuzzならこうしてみる
「FizzBuzzを返す関数を書いてください。
プログラミング言語は自由です。
関数の仕様は引数として正の整数を10進数で表した文字列が来ます。
それ以外の文字列は来ないのでエラー処理は不要です。
ただし文字列の長さは1MBが来ても処理できるようにしてくたさい。
文字列の仕様は各言語の標準的なものから自由に選んでも構いません。
関数が返すのは文字列でFizzやBuzz等でない場合はそのまま返せばよいです。
速く動作することを優先としますがSIMDやGPUや並列化の対応は不要です。」
どうぞ
2023/06/17(土) 10:50:18.42ID:KfWQWP0B
>>854
それができるのは数学ができるやつだけだろ
向いてないやつを弾くテストじゃなく文系を弾くテストになってるぞ
各桁の和が3の倍数なら3の倍数になる法則と剰余の和の剰余は和の剰余になるという法則と1の位が0か5なら5の倍数という法則さえ知ってれば解けるが知らなきゃ解けん
856デフォルトの名無しさん
垢版 |
2023/06/17(土) 10:50:25.44ID:O1wkfiF0
まともな日本語が書けない人に
まともなプログラムを書くのは無理
それが”もっとも正しい匙加減の現実解”ww
2023/06/17(土) 10:51:29.19ID:m3COiyiH
と思ったが割り算の筆算ができれば文系でも解けるか
858デフォルトの名無しさん
垢版 |
2023/06/17(土) 10:52:30.30ID:iqIOO0PG
>>855
仕様には3の倍数や5の倍数については一言も述べられてないぞ
つまり・・・
2023/06/17(土) 10:52:35.07ID:O5XlBfbR
>>856
日本語でもう一度
2023/06/17(土) 10:53:35.74ID:O5XlBfbR
>>858
あれで全部なら誰もできんわ
バカの出題だから色々書き忘れてるだけだろ
2023/06/17(土) 11:01:34.04ID:NJVRNPyW
>>855
その算数の知識を知らない人は不採用でよいかと
元のFizzBuzz関数だとif文を書けるかどうかのテストだけになってしまうので

>>858
FizzBuzz問題の変形なので倍数うんぬんは敢えて省略して書きませんでしたが
そんな細かいことをお気にされるようならばすみません
2023/06/17(土) 11:05:38.43ID:U1NDD/d8
遅れて来た
出題1行目から、「FizzBuzzくらい知ってるよね」になってるの草w

その場で確認する度量があっても悪くないな
2023/06/17(土) 11:20:03.81ID:Fw7ahLzw
>>861
ここで例として挙げるために省略したのか、実際に出題するときもそのまま省略するのか
判断する材料がないから細かいことではないな
2023/06/17(土) 11:22:54.16ID:JEt1hz4l
>>854
いい問題だね
865デフォルトの名無しさん
垢版 |
2023/06/17(土) 11:47:24.57ID:NzSsAFu/
>>864
おしい!

「うわぁ、難しいなぁ、よくこんなの考えつくなぁ、考えた人はすごく頭良いんだろうなぁ、”僕”にはできないやぁ(棒)」
これが出題者の意図を汲んだもっとも正しい匙加減の現実解
2023/06/17(土) 11:51:56.23ID:U1NDD/d8
別の角度から

>>861
お題はシンプルにFizzBuzzなんだけど、ぽんとPCだけ渡して、
IDE/vscodeを立ち上げるか、コンソール+エディタを立ち上げるか(どっちでもいいがそれができるか)、
その間どういう態度でPCに触れるか、そっから見る試験って(バリエーション)のも聞いたことある
2023/06/17(土) 12:45:24.03ID:X8x3Qz8X
5ch のスレが 1000 に達して dat 落ちしたときに Chrome でそのスレを開いてソースの表示をして
サクラエディタのマクロで dat に変換したいのですが本来の dat とは微妙に異なってしまいます。
添削していただけないでしょうか?

S_ReplaceAll('\\r\\n', '', 28);
S_ReplaceAll('<script.*?</script>', '', 28);
S_GoFileTop(0);
S_Replace('^.*?レス数が1000を超えています。これ以上書き込みはできません。</div>', '', 28);
S_ReplaceAll('</article>', '\\n', 28);
S_ReplaceAll('<div id="Leaderboard"></div>', '', 28);
S_ReplaceAll('<article id="1001".*\\n', '', 28);
S_ReplaceAll('<article id="1002".*\\n', '', 28);
S_ReplaceAll('<div class="navmenu".*', '', 28);

S_ReplaceAll('<article .*?</span><span class="postusername"><b>', '', 28);
S_ReplaceAll('</span></details><section class="post-content">', '<>', 28);
S_ReplaceAll('<a href="mailto:(\\S*?)">(\\S.*?)</a></b></span></summary><span class="date">', '$2<>$1<>', 28);
S_ReplaceAll('</b></span></summary><span class="date">', '<><>', 28);
S_ReplaceAll('</span><span class="uid">', ' ', 28);
S_ReplaceAll(' </section>$', ' <>', 28);
S_ReplaceAll(' </span></section>$', ' <>', 28);

S_ReplaceAll(' class="reply_link"', '', 28);
S_ReplaceAll('<br> <br>', '<br> <br>', 28);
S_ReplaceAll('<span class="AA">', '', 28);
S_ReplaceAll(' </span><>$', '<>', 28);
S_ReplaceAll('<a href="https?://(.*?)">(.*?)</a>', '$2', 28);
S_ReplaceAll('<a class="image" href="https?://(.*?)">(.*?)</a>', '$2', 28);
S_ReDraw(0);
2023/06/17(土) 12:53:36.83ID:U1NDD/d8
ちょっとそこまでしたくない…その代わりに
微妙に違うのが、たとえばどこの部分でどう微妙に違うの
regexの添削なら好きな人がいると思う
2023/06/17(土) 13:00:20.91ID:xZBJXx3G
まずどう本物と違うのか
2023/06/17(土) 13:08:36.62ID:X8x3Qz8X
現在分かってるのが
・スレの1つ目が異なる (これは気にしない)
・htmlソースで見たときに <br> が複数続くところが異なる
あたりです

操作としては chrome で開いてソースを表示してコピーしてサクラエディタに張り付けて
マクロを実行して出来上がった疑似 dat ファイルを jane で取得できなかったところ移行を dat に張り付けてます
一応 Jane でみれるには見れますが本物の dat と異なってます

Jane の機能のツールのコマンドに
サクラエディタで開く
"C:\Program Files (x86)\sakura\sakura.exe" $LOCALDAT
を入れておりサクラエディタでちゃちゃっとdat補完ができたらいいなってところから来てます
2023/06/17(土) 13:32:43.51ID:U1NDD/d8
そういや、
> S_ReplaceAll('<br> <br>', '<br> <br>', 28);
これってなにがしたいん

勘だけど、Allするより、+32な気がする
<br>が2つまでに圧縮されちゃうでしょ
872デフォルトの名無しさん
垢版 |
2023/06/17(土) 15:21:09.34ID:X8x3Qz8X
そういえばbrなんでこうしたんだっけ…
改行が2つ以上続くとスペースが1つ追加されるとかっぽいからそうしたような…

外出するので帰宅したら確認します
ありがとうございます
873デフォルトの名無しさん
垢版 |
2023/06/17(土) 17:23:16.32ID:2s9HVAD/
>>855
BigDecimal使えばいいだけだよ
2023/06/17(土) 17:53:12.99ID:O5XlBfbR
>>873
1MBでどうなるかやってみなよ
875デフォルトの名無しさん
垢版 |
2023/06/17(土) 18:46:47.78ID:Do0SxNGB
>>874
1MBの数字が入力でも計算自体は何の問題もないよ
画面出力は省略形にでもしないと問題あるけどね
2023/06/17(土) 19:14:55.85ID:O5XlBfbR
>>875
だから実際やってみなよ
アホほど時間かかるから
877デフォルトの名無しさん
垢版 |
2023/06/17(土) 21:01:25.03ID:oEBdD3mt
こんな感じかな
fn fizzbuzz(s: &str) -> &str {
let last = s.bytes().next_back().unwrap();
let is_buzz = last == b'0' || last == b'5';
let sum = s.bytes().map(|n| n as u64).sum::<u64>();
let is_fizz = sum % 3 == 0;
if is_fizz {
if is_buzz {
"FizzBuzz"
} else {
"Fizz"
}
} else {
if is_buzz {
"Buzz"
} else {
s
}
}
}
2023/06/17(土) 21:04:25.47ID:w6G1xf9n
足し算の結果がu64に収まる保証はないので減点ですね
879デフォルトの名無しさん
垢版 |
2023/06/17(土) 21:22:31.12ID:oEBdD3mt
>>878
1バイトの値は2^8未満ですから
もし長さが1TB=2^40だとしても
和が2^48となり2^64に収まっていませんか?
2023/06/17(土) 21:34:19.21ID:w6G1xf9n
文字列長が最大1MBなので収まりますね
881デフォルトの名無しさん
垢版 |
2023/06/17(土) 21:44:51.89ID:Dy0qXr83
>>876
実際やってみて何の問題ないと言ってるだけど?
2~3行足すだけなんだから君こそ実際やってみなよ
2023/06/17(土) 21:59:39.36ID:KfWQWP0B
>>881
コード出してみな
2023/06/17(土) 22:11:53.10ID:xZBJXx3G
てめーがだせよwwww
884デフォルトの名無しさん
垢版 |
2023/06/17(土) 22:27:11.79ID:6cwG2na1
おにまい
885デフォルトの名無しさん
垢版 |
2023/06/17(土) 23:00:45.29ID:eepdysdL
>>882
君はもしかしてFizzBuzzが書けないのかい?

1,200,000桁の数字をFizzBuzz判定して
結果文字列を返すのにBigDecimalへの変換含めてスクリプト言語でも数ミリ秒
アホほど時間かかってるねw
2023/06/17(土) 23:37:08.97ID:NJVRNPyW
採点基準としては>>854で速く動作することを優先と明記したので
多倍長整数の使用は不合格とは言わないまでも追加点無しといったところかな

その部分以外に元のFizzBuzz問題でも同じ話だけど細かい採点は多数
例えばifが3つ「15の倍数か?」「5の倍数か?」「3の倍数か?」と並列に並ぶ形をとる人がなぜか多くて
どれにも当てはまらない過半数のケースで3回もif判定するから損で正解はif判定を常に2回に抑えられるよね
3回の場合でも「x % 15」などを計算しちゃうのも損で3の倍数か及び5倍数かの情報を使うべきだよね
とはいえ「(x % 3 == 0) && (x % 5 == 0)」等としちゃうとその後に2度目の「x % 3」を計算する羽目になり損だよね
いずれにせよ可読性も兼ねてis_fizzやis_buzzといった変数にブール値を代入するのも必須かな

といった感じで細かい採点基準が多数あるのを恐れてか
コードを出す人が少ないのが残念ですね
2023/06/17(土) 23:45:02.93ID:wQbc2vgl
副作用ないから最適化されて
(x % 3 == 0) && (x % 5 == 0)
と個別のがあっても一回しか演算しなくない?
2023/06/17(土) 23:46:55.37ID:w6G1xf9n
確かに
2023/06/17(土) 23:52:04.91ID:NJVRNPyW
>>887
言語によって二箇所のx % 3の計算を必ずしも1度に集約最適化するかどうかは明確ではないため
x % 3の計算が2回起こりえるかと
2023/06/17(土) 23:56:27.32ID:KfWQWP0B
>>885
提出できないのかよw
2023/06/17(土) 23:59:36.79ID:xZBJXx3G
おまえがねw
2023/06/18(日) 00:17:41.47ID:8CtPSegi
自分ができないから俺にさせるつもりなのかよ
それだとお前のコードを評価できないだろw
ほんと口だけだなお前w
2023/06/18(日) 01:00:16.47ID:5AobDa/U
多倍長整数が早いか遅いか自体が処理系依存
2023/06/18(日) 01:10:45.25ID:/TMQvlLx
どんな環境でも>>877のコードのように10進数文字列を整数に変換せずにそのまま足し算するだけが一番速い
その変換をしてさらに多倍長演算をするのは確実に遅い
2023/06/18(日) 01:34:07.16ID:LoKSj4fv
速攻で0x30を引いた各桁の和を連想した俺、たぶん>>894 と相性がいい

面接試験だとしたら、「そういうこと」だと思う
2023/06/18(日) 02:35:29.36ID:w5e3CbrF
正解はこちら
str.sum(c => c - '0') % 3
2023/06/18(日) 05:42:27.49ID:/TMQvlLx
惜しい
0x30は3の倍数なのでその引き算は必要ない
2023/06/18(日) 08:03:13.08ID:w5e3CbrF
実在する文字コードという決まりはないのでそれは減点ですね
2023/06/18(日) 08:17:01.17ID:/TMQvlLx
実在する文字コードを前提としてはいけないならば
>>896のc-'0'こそ失格となる
その式は'0'から'9'の順に並び1ずつ増えることを前提としている

一方で元の問題>>854を見ると
「文字列の仕様は各言語の標準的なものから自由に選んでも構いません。」
つまりASCIIやUTF8を前提としてもよい
したがってそれらの文字コードを使うプログラムでは'0'を0x30とみなして処理することができる

結論
0x30は3の倍数なのでその引き算は必要ない
2023/06/18(日) 08:23:49.23ID:w5e3CbrF
可読性が低いので減点ですね
2023/06/18(日) 08:32:02.61ID:LoKSj4fv
コメントに、0x30%3はゼロ、と一言書いておかないと、なんも考えずに引き忘れてると思われても惜しいw
2023/06/18(日) 08:46:33.48ID:+pO1SGiD
アスペ大暴れ
2023/06/18(日) 09:50:29.21ID:Hq2StvIR
揚げ足の取り合いは犬も食わない
2023/06/18(日) 11:07:47.01ID:w5e3CbrF
コメントにWHYを書きましょう
大きな減点です
2023/06/18(日) 11:49:45.52ID:N6DPfVpd
>>896
そこでなぜsumを計算すれば済むのか理由をコメントあるいは口頭説明できないと減点なのはわかる
それならば- '0'無しで計算すれば済む理由もコメントあるいは口頭説明すればよいよね
無駄な計算を無くすためにsumにしたのに無駄な計算- '0'を加えているのは中途半端かな
906デフォルトの名無しさん
垢版 |
2023/06/18(日) 18:10:54.03ID:gGYwfccc
>>894
PythonだとDecimal使った方が約5倍速い
Python側でのAPI呼び出し回数の差などによってアルゴリズム自体の速度差は簡単にひっくり返る
遅い言語ではよくあること
2023/06/18(日) 18:27:34.75ID:w5e3CbrF
自分が出題するときは当たり障りのない問題にしとこ
採用側もあまり適当なことは言えん
2023/06/18(日) 20:52:01.63ID:BvI2+OQZ
>>906
速度優先の問題で一桁遅いPythonを持ち出すのはヤバい
単純なメモリ操作問題なのにAPIとか言い出すのもヤバい
皆が言ってるバイト列の和(sum)よりもDecimalの方が速いと言い出すのもヤバい
2023/06/18(日) 21:10:10.35ID:mF1taT/Z
>>908
>速く動作することを優先としますがSIMDやGPUや並列化の対応は不要です。

この前提にしがみついてるのか
GPUまで可にしたらPythonにボロ負けするからな
2023/06/18(日) 22:01:21.90ID:rIYv+hUF
>>909
GPUとPythonにはなんら関係ない
GPUへのアクセスの様々なものはC++で書かれている
それを通してPythonでも使えるというだけにすぎない

今回の話は足し算するだけだからメモリ読み出しが律速段階
GPUは役に立たないだろう
2023/06/18(日) 22:07:58.82ID:Kh0krmy9
Pythonな採用条件なのにPython使えんかったら逆にアウツ
試験次第だろ
2023/06/18(日) 23:00:39.56ID:gFZv57C2
Pythonはあくまでもスクリプト言語であってプログラミング言語ではないからね
Pythonでプログラミングしたら遅くて使い物にならないのは当たり前
Pythonは他言語で書かれたライブラリを呼び出すスクリプトを書くための言語
それを理解できずにPythonでプログラミングしてしまい
遅くてリソースコストのかかるものを作っているバカがたまにいる
2023/06/19(月) 02:12:53.01ID:gDKkBJkW
Python(パイソン)はインタープリタ型の高水準汎用プログラミング言語である。
2023/06/19(月) 03:13:50.68ID:Yn3VPHXt
プログラミング言語は自由って出題なんだから言語の遅い早いは問うべきではない
2023/06/19(月) 04:03:21.97ID:gDKkBJkW
最悪アセンブリでもいいわけだしな
2023/06/19(月) 05:42:53.42ID:ZYkgUwyp
Pythonてプログラミング言語じゃないのに何でこの板でスレが立ってるんですか
2023/06/19(月) 05:54:51.89ID:y4CVZZ7w
>>906
もしそれが本当ならば、
Pythonで足し算をするよりも、
C++で書かれたライブラリ内でDecimal変換して計算する方が、
5倍速いという話になる。

足し算すらPython自体でプログラミングするのは論外であり、
それさえもC++で書かれたライブラリに任せるべきなのであろう。
そうしないとアルゴリズムの比較ではなく、
言語による速度の比較になってしまっている。
非常に遅いPythonでプログラミングすることの悲劇といえよう。
2023/06/19(月) 06:18:19.73ID:+D8KPC+w
アルゴリズムの速度比較の課題でPythonを使うのを禁止したら?
Pythonではアルゴリズムの比較という基本的な学習も身につかないね
Pythonを教育現場で採用してはいけない理由がよくわかったよ
2023/06/19(月) 08:48:49.86ID:/2uCI9xU
いつのまにアルゴリズムの比較をする話になってんだ?
2023/06/19(月) 09:09:29.73ID:pIKXsL98
そもそもPythonで回答プログラムを書こうとしたのが間違い
そこでPythonを選ぶのは筋が悪すぎる
2023/06/19(月) 09:23:37.86ID:T5Ntw3R8
>>854の言語自由ってのは自分の手に馴染んだ言語を使って回答しろって意味じゃないのか
処理の速い言語を選ぶことも採点基準のうちってこと?
レス数が900を超えています。1000を超えると表示できなくなるよ。
5ちゃんねるの広告が気に入らない場合は、こちらをクリックしてください。

ニューススポーツなんでも実況