1 名前:デフォルトの名無しさん [2020/03/13(金) 01:42:47.06 ID:0rEhys36.net] プログラミングのお題スレです。 【出題と回答例】 1 名前:デフォルトの名無しさん お題:お題本文 2 名前:デフォルトの名無しさん >>1 使用言語 回答本文 結果がある場合はそれも 【ソースコードが長くなったら】 (オンラインでコードを実行できる) https://ideone.com/ codepad.org/ compileonline.com/ rextester.com/runcode https://runnable.com/ https://code.hackerearth.com/ melpon.org/wandbox https://paiza.io/ 宿題は宿題スレがあるのでそちらへ。 ※前スレ プログラミングのお題スレ Part16 https://mevius.5ch.net/test/read.cgi/tech/1573948822/
2 名前:デフォルトの名無しさん mailto:sage [2020/03/13(金) 08:41:14.93 ID:RXilWx3L.net] >>1 おつ
3 名前:デフォルトの名無しさん [2020/03/14(土) 15:24:12 ID:L+5etp1i.net] お題: 日本式ローマ字の文字列をひらがなに変換してください 入力:tokugawayosimunehaedozidaidaihatidaisyougun
4 名前:デフォルトの名無しさん mailto:sage [2020/03/14(土) 16:53:59 ID:R7iBZnY8.net] 何スレか前にやったじゃん。ネタ切れかよ
5 名前:デフォルトの名無しさん mailto:sage [2020/03/14(土) 17:13:09 ID:ZPl207sd.net] ネタ切れだよ 文句言うな
6 名前:蟻人間 ◆T6xkBnTXz7B0 mailto:sage [2020/03/15(日) 02:13:51 ID:IdLAz5Ve.net] お題: なるべく短い文字数のコマンドで自動的にMS-DOSのシステムを完全停止させる。
7 名前:蟻人間 mailto:sage [2020/03/15(日) 02:20:41.61 ID:IdLAz5Ve.net] >>6 ただし、システムは破壊しないものとする。
8 名前:蟻人間 mailto:sage [2020/03/15(日) 02:41:15.46 ID:IdLAz5Ve.net] ヒント:外部コマンド
9 名前:蟻人間 ◆T6xkBnTXz7B0 mailto:sage [2020/03/15(日) 03:52:16 ID:IdLAz5Ve.net] >>6 やっぱりお題を撤回します。古いハードディスクの関係で、システムを強制終了するとドライブが壊れる可能性があるらしいので。つまんないの。
10 名前:蟻人間 mailto:sage [2020/03/15(日) 04:20:10.12 ID:IdLAz5Ve.net] お題: 一辺2000メートルの正方形の平面上にランダムに動く物体5個がある。正方形の中心に自機があり、自機を中心にレーダー電波が一定速度で回転しながら常に放射されている。 物体がレーダー電波に当たるとその瞬間にその物体までの距離と方向がわかる仕組みになっている。 各物体が直線等速運動をしていると仮定して随時に各物体の速度を推定し、物体が100メートルより近いときは、それが当たりそうな場所に向かってミサイルを自動的に発射する次のようなアルゴリズムを作れ。 1. 毎分ごとに物体5個の位置(Pxn, Pyn)と推定速度(Vxn, Vyn)を報告すること。 2. 自機は動かない。 3. ミサイルを発射するときは方向(Tn; ラジアン)を報告すること。ミサイルの速さは毎秒5メートルである。 4. ミサイルの個数には制限がない。 5. ミサイルと物体座標が2メートル以内であれば、ミサイル命中と見なす。命中すれば物体は消える。実際に消えたときは消えた位置を報告する。
11 名前:デフォルトの名無しさん mailto:sage [2020/03/15(日) 05:43:09.27 ID:fxB2xu91.net] 前スレの6N+1型と6N-1型の素数どちらが多いかという問題 それぞれの素数全てからなる集合をA, B としたとき、A, Bの濃度はどちらも?_0であり等しい。 問題(と出題者の)頭が悪すぎ
12 名前:蟻人間 mailto:sage [2020/03/15(日) 08:04:53.86 ID:C2+jTQYL.net] 頭悪いと言われるけど、技術的な問題を作れるヤツが少ないから困ってるんだ。 80年代の防衛システムを作れる奴が居ないんだぜ。 ひつじのような学生ばかり作って必要な分野に投資しない。この国はお金を動かす奴等が馬鹿ばかりだ。
13 名前:蟻人間 mailto:sage [2020/03/15(日) 09:44:00.57 ID:IdLAz5Ve.net] ぼくが指導者になるしかないのかな。。。
14 名前:デフォルトの名無しさん mailto:sage [2020/03/15(日) 10:11:20.50 ID:R5iQYFh6.net] インパール作戦の指揮者のような死導者になるのかな
15 名前:デフォルトの名無しさん [2020/03/16(月) 16:23:53.04 ID:8T/rxY7p.net] >>11 どちらも有限個でない証明がいるんじゃね? 双子素数の無限存在の十分条件だな(´・ω・`)
16 名前:デフォルトの名無しさん [2020/03/16(月) 16:31:49.21 ID:8T/rxY7p.net] Oops sorry 6nプラマイ型の無限性じゃ双子予想導けなかった(´・ω・`)
17 名前:デフォルトの名無しさん mailto:sage [2020/03/16(月) 18:20:29 ID:GOFQMBOW.net] >>15 Dirichlet prime number theoremでググれ 初等的な照明は6n±1どちらも簡単
18 名前:デフォルトの名無しさん mailto:sage [2020/03/17(火) 12:37:21.90 ID:55EeZ8o4.net] 2種類のSSRキャラが各2%、2種類のSRキャラが各2.5%の確率で排出されるガチャがある これら4種のキャラが全て(各1体以上)出るまでに必要なガチャ回数の期待値は何回か また、一日3回ガチャした場合に、イベント期間中の2週間(14日)で出る確率はいくらか
19 名前:デフォルトの名無しさん mailto:sage [2020/03/17(火) 13:05:48.12 ID:VICFa3qx.net] 無限につづく数列の足し算はできる言語あるの?(wolframとか??) シグマ(k=4から無限まで) Pk Pnとは n回で出る時の確率であり Pn = (0.02*0.025)^2 * (0.91)^(n-4) * (n-1 C 3)
20 名前:デフォルトの名無しさん [2020/03/17(火) 14:41:18.66 ID:4Vk7SyLR.net] >>6 本当にMS-DOSならばいきなり電源切ればいいのでは?
21 名前:蟻人間 mailto:sage [2020/03/17(火) 15:11:28.29 ID:jDLeGHZW.net] >>20 Ctrl+Cかexitしないとハードディスクが壊れるというハードウェアがあったらしい。
22 名前:デフォルトの名無しさん [2020/03/17(火) 15:46:16.41 ID:4Vk7SyLR.net] >>21 あー。HDD付いてるのか。 フロッピーディスクのみかと思った。
23 名前:デフォルトの名無しさん mailto:sage [2020/03/17(火) 20:32:07 ID:WZhpPu/2.net] >>19 数式処理ができる言語なら級数の収束が数式で解けるから できるはずだが
24 名前:デフォルトの名無しさん mailto:sage [2020/03/18(水) 09:09:56 ID:I/71Lz9x.net] (多項式)*(等比数列)の形の級数に限れば多項式をn, n(n+1), n(n+1)(n+2), ... の線形結合で表してΣ[i=0 to Infinity] i(i+1)...(i+n-1)*r^i = n!r/(1-r)^(n-1)を使えば求められる だから多項式を展開できて連立方程式が解ける言語ならなんでも
25 名前:デフォルトの名無しさん [2020/03/19(Thu) 09:16:32 ID:bOFq5rto.net] >>10 ミサイルの速度遅くね? 敵の速度ってどれくらい?
26 名前:デフォルトの名無しさん mailto:sage [2020/03/19(Thu) 13:17:22 ID:WnokI830.net] お題: ミサイル迎撃システムがある 関数analyzeに敵ミサイルの座標である「緯度」「経度」「高度」が渡されるので敵ミサイルを迎撃せよ なおこのanalyze関数は敵ミサイルが飛翔している間、座標を更新しながら100ミリ秒ごとに繰り返し呼ばれるものとする 敵ミサイルの高度が0以下になった場合、ミサイルの迎撃に失敗したものとみなす 迎撃ポイントを確定したら関数fireを呼び出し、敵ミサイルを撃墜すること なお迎撃に使うレーザー砲は敵ミサイルに届くまで1秒かかるものとする 敵ミサイルの軌道は直線的とし、重力や空気抵抗を考慮しないものとする
27 名前:デフォルトの名無しさん mailto:sage [2020/03/19(木) 15:56:22.46 ID:GbpHbvNZ.net] レーザーが届くまでに一秒かかるということは ミサイルの位置も一秒前のものしかわからないわけだな
28 名前:デフォルトの名無しさん mailto:sage [2020/03/19(木) 16:21:54.04 ID:SIWc9klw.net] 高度は地表からの距離だろうか。 地球が完全な球と仮定してよいか。 地球の半径、迎撃レーザーの発射点の座標とかは勝手に決めてよいのか。 ミサイルの起動について地球の自転は考慮不要か。 ミサイルの起動は直線だとして速度が一定と仮定してよいのか。
29 名前:デフォルトの名無しさん [2020/03/19(木) 16:50:52.26 ID:bOFq5rto.net] 地球は平面だろ!
30 名前:デフォルトの名無しさん mailto:sage [2020/03/19(木) 16:59:57.04 ID:88pUuzIX.net] 糞コテのお題だぞ 無視しろよ
31 名前:デフォルトの名無しさん mailto:sage [2020/03/19(木) 17:18:21.03 ID:WnokI830.net] >>28 指摘された点を推敲したいと思います・・・
32 名前:デフォルトの名無しさん mailto:sage [2020/03/19(木) 18:08:36.94 ID:SIWc9klw.net] >>31 かなり杜撰な問題だと思うけどそもそも自分でちゃんと解いたのか?
33 名前:デフォルトの名無しさん mailto:sage [2020/03/19(木) 18:18:34.03 ID:WnokI830.net] >>32 いいえ
34 名前:デフォルトの名無しさん mailto:sage [2020/03/19(木) 18:21:33.25 ID:sZ6Ndc8g.net] テキトーすぎる コテ関係なく質がひどすぎるお題なんて触
35 名前:黷ネくておk [] [ここ壊れてます]
36 名前:デフォルトの名無しさん [2020/03/19(Thu) 20:14:53 ID:WsP7BoFG.net] おまえらやる気なさすぎワロタw
37 名前:デフォルトの名無しさん mailto:sage [2020/03/19(Thu) 20:33:34 ID:I3A3yd/j.net] 奇形のデブス前にしてチンコ勃てろと言ってるようなもの。 それでEDと罵られても困る。
38 名前:デフォルトの名無しさん [2020/03/20(金) 06:22:44.72 ID:Edy1QoAW.net] >>29 球なのに平らであると
39 名前:デフォルトの名無しさん mailto:sage [2020/03/20(金) 08:51:54 ID:WvSQRAtR.net] リーマン球面は複素平面である。 故に球面は平面である。 Q.E.D.
40 名前:デフォルトの名無しさん [2020/03/20(金) 09:12:05 ID:xr3G6R5C.net] お題:Gとなるノノグラムデータを作って下さい。
41 名前:デフォルトの名無しさん mailto:sage [2020/03/20(金) 09:29:42 ID:tkx4ScZk.net] Gとなる、というのは解がGの文字の字形になるということか? Gの文字の字形に定義はあるの?
42 名前:デフォルトの名無しさん mailto:sage [2020/03/20(金) 09:49:35 ID:iazeZlcv.net] リーマン球面は複素平面である...???
43 名前:デフォルトの名無しさん mailto:sage [2020/03/21(土) 19:49:46 ID:I6z+mtmQ.net] お題: RGBを独自定義の色定数に変換せよ 関数convに引数r, g, bが渡される。それぞれの引数は0~255の範囲の値を持つRGBカラーの値である このRGB値を以下の色定数に変換し、戻り値として返却せよ 111 ... BLACK 112 ... BLUE 121 ... GREEN 122 ... CYAN 211 ... RED 212 ... MAGENTA 221 ... YELLOW 222 ... WHITE 色の正規化の方法など、詳しいことは一任するが、↑の色定数の名前に近似するように調整すること
44 名前:デフォルトの名無しさん [2020/03/21(土) 20:01:40 ID:I6z+mtmQ.net] >>42 訂正: MAGENTA -> PURPLE
45 名前:デフォルトの名無しさん [2020/03/21(土) 21:38:46 ID:H1X3lIOS.net] >>42 Java https://paiza.io/projects/WYGXHjLQV3dqe9mnt6Cy4g
46 名前:デフォルトの名無しさん mailto:sage [2020/03/21(土) 22:23:41.82 ID:vYB/WqOU.net] int conv(int r, int g, int b){ return (r&0x80?200:100) + (g&0x80?20:10) + (b&0x80?2:1); }
47 名前:デフォルトの名無しさん [2020/03/22(日) 00:11:44 ID:3eM1H9mL.net] >>3 Java https://paiza.io/projects/SMUi1lmLId-7uHaE9m-HUQ
48 名前:デフォルトの名無しさん mailto:sage [2020/03/22(日) 03:48:21 ID:INd1TwL5.net] >>42 Ruby def conv( *rgb ) rgb.map{|v| v >> 7 & 1 }.inject(0){|r,i| 10*r + i + 1 } end conv( 0x80, 0, 0 ) #=> 211
49 名前:デフォルトの名無しさん mailto:sage [2020/03/22(日) 10:39:01 ID:q38LxNo0.net] >>42 Pharo/Squeak Smalltalk "すでに機能として組み込まれている" Color r: 0 g: 0 b: 0. "=> Color black " Color r: 0 g: 0 b: 1. "=> Color blue " Color r: 0 g: 1 b: 0. "=> Color green " Color r: 0 g: 1 b: 1. "=> Color cyan " Color r: 1 g: 0 b: 0. "=> Color red " Color r: 1 g: 0 b: 1. "=> Color magenta " Color r: 1 g: 1 b: 0. "=> Color yellow " Color r: 1 g: 1 b: 1. "=> Color white " "カラー名と同名のメソッドコールでオブジェクトを得ることもできる" Color red + Color green + Color blue. "=> Color white " Color white - Color yellow "=> Color blue "
50 名前:デフォルトの名無しさん mailto:sage [2020/03/22(日) 12:47:56.07 ID:EPda6hnZ.net] >>48 さしがsmalltalkさん
51 名前:デフォルトの名無しさん mailto:sage [2020/03/22(日) 23:23:43.84 ID:Bu0KMZaA.net] >>48 恐ろしい子・・・
52 名前:デフォルトの名無しさん mailto:sage [2020/03/23(月) 00:59:16 ID:ryqQXgQk.net] >>48 さすスモ
53 名前:デフォルトの名無しさん [2020/03/27(金) 23:49:15 ID:7AzyN3tE.net] お題:安価をレス番リストに変換せよ 例: "1" -> [1] "1-3" -> [1,2,3] "1,3" -> [1,3] "1,3-5" -> [1,3,4,5]
54 名前:デフォルトの名無しさん mailto:sage [2020/03/28(土) 00:46:37 ID:xGS8Imsw.net] >>52 Ruby def anka(str) nums=[] str.split(“,”)
55 名前:.each do |s| x,y=s.split(“-“) if y nums+=(x.to_i .. y.to_i).to_a else nums<<x.to_i end end return nums end anka(“1,3-5”) #=> [1,3,4,5] [] [ここ壊れてます]
56 名前:デフォルトの名無しさん [2020/03/28(土) 01:05:52 ID:ngUeRIaE.net] お題:>>52 例: >>52 に追加で "1,1" -> [1] "1-3,2" -> [1,2,3] "1-4,2-3" -> [1,2,3,4] "1-4,3-5" -> [1,2,3,4,5]
57 名前:デフォルトの名無しさん [2020/03/28(土) 01:08:29 ID:ngUeRIaE.net] やっぱやめた。 よく考えたら>>53 のコードに重複削除追加するだけだった
58 名前:デフォルトの名無しさん mailto:sage [2020/03/28(土) 09:55:13 ID:YBto5Ud7.net] >>52 Ruby %w[1 1-3 1,3 1,3-5].each{|e| p eval "[#{e.gsub(/(\d+)-/, '*\1..')}]"} # => [1] [1, 2, 3] [1, 3] [1, 3, 4, 5]
59 名前:◆QZaw55cn4c mailto:sage [2020/03/28(土) 10:17:31 ID:WJROMx30.net] >>52 >>54 既出 = mevius.2ch.net/test/read.cgi/tech/1514772904/34,41,83,84 https://mevius.5ch.net/test/read.cgi/tech/1434079972/64
60 名前:デフォルトの名無しさん mailto:sage [2020/03/28(土) 11:14:59 ID:VFdWLa/U.net] >>52 Perl5 $"=','; for $a (<DATA>) { $a =~ s/-/.../; @s = eval $a; print "[@s]\n"; } __DATA__ 1 1-3 1,3 1,3-5 実行結果 ~ $ perl 17_53_ancres.pl [1] [1,2,3] [1,3] [1,3,4,5]
61 名前:デフォルトの名無しさん mailto:sage [2020/03/28(土) 11:21:13.18 ID:VFdWLa/U.net] >>58 Perl5 ちょっと修正 $"=','; for $a (<DATA>) { $a =~ s/-/.../g; @s = sort{$a<=>$b} eval $a; print "[@s]\n"; } __DATA__ 1 1-3 1,3 1,8-10,3-5 実行 ~ $ perl 17_53_ancres.pl [1] [1,2,3] [1,3] [1,3,4,5,8,9,10]
62 名前:デフォルトの名無しさん [2020/03/28(土) 18:22:26.71 ID:ssy5u0i6.net] >>52 Java https://paiza.io/projects/9WPvdN2nn77fXNzmk5qhQQ
63 名前:デフォルトの名無しさん [2020/03/28(土) 18:24:03.79 ID:ssy5u0i6.net] お題:レス番リストを安価に変換せよ 例: [1] -> "1" [1,2,3] -> "1-3" [1,3] -> "1,3" [1,3,4,5] -> "1,3-5"
64 名前:デフォルトの名無しさん mailto:sage [2020/03/28(土) 19:38:54.96 ID:RLgHfGbj.net] 前者は2ch browserで使えるけど後者はそうじゃないね
65 名前:デフォルトの名無しさん [2020/03/28(土) 23:41:39 ID:X4tW2giy.net] まーたやらな言い訳かー やる気ねーなw
66 名前:デフォルトの名無しさん [2020/03/29(日) 10:50:09 ID:ACisvDeP.net] >>61 js let レス番リスト=[1,3,4,5]; let 先頭レス番=レス番リスト[0]; let 安価=""; for(let イ=0;イ<レス番リスト.length-1;イ++){ if(レス番リスト[イ]+1!=レス番リスト[イ+1]){ 安価+=レス番リスト[イ]==先頭レス番?先頭レス番+",":先頭レス番+"-"+レス番リスト[イ]+","; 先頭レス番=レス番リスト[イ+1]; } } 安価+=レス番リスト[レス番リスト.length-1]==先頭レス番?先頭レス番:先頭レス番+"-"+レス番リスト[レス番リスト.length-1]; console.log(安価); =>1,3-5
67 名前:デフォルトの名無しさん mailto:sage [2020/03/29(日) 14:05:00.00 ID:kU1QBoxf.net] >>61 Perl5 (もう少しスマートな書き方はあるかもしれないが…) for (qw{[1] [2,3] [1,2,3] [1,3] [1,3,4,5]}) { @a = /(\d+)/g; %h = map{$_ => $_} @a; @b = map{$h{$_}//','} 1..1000; $"=','; $b = "@b"; $b =~ s/^,*(.+?),*$/$1/; @c = split /,,+/, $b; @d = map{[eval]} @c; @e = map{@$_ > 2 ? "$$_[0]-$$_[-1]" : "@$_"} @d; print "@e\n"; } 実行結果 ~ $ perl 17_61_resanc.pl 1 2,3 1-3 1,3 1,3-5
68 名前:デフォルトの名無しさん [2020/03/29(日) 18:03:50 ID:5iH4CTSz.net] なにやってるのか全くわからんw
69 名前:デフォルトの名無しさん mailto:sage [2020/03/29(日) 18:46:57.43 ID:CipzEZQ7.net] @a = /(\d+)/g; … 文字列から数値だけを抽出しリスト変数@aに格納、たとえば文字列が"[1,3,4,5]" の場合@aは(1, 3, 4, 5) %h = map{$_ => $_} @a; … 変数@aのリスト例えば(1, 3, 4, 5)を入力として値対値ハッシュ {1=>1, 3=>3, 4=>4, 5=>5}を作り変数%hとする @b = map{$h{$_}//','} 1..1000; … 1〜1000までの数値に対しハッシュ%hを参照し値があればその値、無ければ','文字のリストを生成して変数@bに格納、上記{1=>1, 3=>3, 4=>4, 5=>5}の場合はこんな感じ # 1 2 3 4 5 6 7 8 9 … 1000 @b: 1 , 3 4 5 , , , , … , $"=','; $b = "@b"; … 上記リスト@bを元に要素を区切り文字','で繋いだ文字列を作り変数$bに設定 上記@b: 1 , 3 4 5 , , , … , の場合 $b = "1,,,3,4,5,,,,,,,…,," 2や6以降は無いので,となっている $b =~ s/^,*(.+?),*$/$1/; … 文字列$bの先頭と末尾に','があれば除去 例 $b = "1,,,3,4,5,,,,,,,…,," ⇒ "1,,,3,4,5" @c = split /,,+/, $b; … $bを正規表現/,,+/を区切りとして分割したリストを@cに格納 例 $b = "1,,,3,4,5" ⇒ @c = ("1", "3,4,5") @d = map{[eval]} @c; … リスト@cの文字列をそれぞれevalして数値リストのreferenceの配列を@dに設定 例 @c = ("1", "3,4,5") ⇒ @d = ([1], [3, 4, 5]) @e = map{@$_ > 2 ? "$$_[0]-$$_[-1]" : "@$_"} @d; @dの夫々の数値リストに対し、要素が1だったらその数値自体を文字列に、2個だったら数値を','で連結した文字列に、 3個以上だったら"最初の数値-最後の数値"という文字列に変換 例 @d = ([1], [3, 4, 5]) ⇒ @e = ("1", "3-5") print "@e\n"; @e の文字列リストを','で繋いで印字(上の方で区切り文字$"は=','に設定済) 例 @e = ("1", "3-5") ⇒ 1,3-5 @dと@eを作るところがもう少しエレガントにできればよかったけれど
70 名前:デフォルトの名無しさん [2020/03/29(日) 19:07:03 ID:5iH4CTSz.net] なるほど、そうやって並んだ部分でグループ化するのか
71 名前:デフォルトの名無しさん mailto:sage [2020/03/30(月) 22:44:25.79 ID:xSpiMCgD.net] >>65 Perl5 少しスマートに書けた(文字列マッチンク処理゙主体になっちまったけれど…) $"=','; for (qw{[1] [2,3] [1,2,3] [1,3] [1,3,4,5]}) { @a = /(\d+)/g; %h = map{$_ => $_} @a; @b = map{$h{$_}//' '} 1..20; $b = "@b"; @c = $b =~ /(\d(?:,\d)*)/g; s/(,\d+)+,/-/ for @c; print "@c\n"; } 実行 ~ $ perl 17_61_resanc_0330.pl 1 2,3 1-3 1,3 1,3-5
72 名前:デフォルトの名無しさん mailto:sage [2020/03/30(月) 22:45:46.57 ID:q7KIsR+X.net] >>69 テスト時のcodeが残ってた…orz × @b = map{$h{$_}//' '} 1..20; ○ @b = map{$h{$_}//' '} 1..1000;
73 名前:デフォルトの名無しさん mailto:sage [2020/03/31(火) 23:56:04.38 ID:9DwI/QO9.net] >>59 めったに使えない evalが入てて楽しい
74 名前:デフォルトの名無しさん [2020/04/03(金) 19:14:26.56 ID:tv+k2Xei.net] お題 文字列の先頭から続く、0 は、8進数と解釈されるため、バグります! なので、それらを除去して、10進数と解釈できる文字列にして下さい。 以下は、すべて文字列です 090 → 90 0080 → 80 123 → 123 0 → 0 000 → 0 "" → ""
75 名前:デフォルトの名無しさん mailto:sage [2020/04/03(金) 19:53:54.22 ID:MoLJYTUl.net] >>72 マルチポスト&スレチ https://mevius.5ch.net/test/read.cgi/tech/1578068134/
76 名前:72 mailto:sage [2020/04/03(金) 20:02:16.50 ID:tv+k2Xei.net] 向こうのスレから移動したので、このスレで続けて下さい!
77 名前:デフォルトの名無しさん [2020/04/03(金) 20:06:07.16 ID:etO49JcP.net] 粘着者湧いてるじゃん
78 名前:デフォルトの名無しさん [2020/04/03(金) 20:13:05 ID:D8CnMwXH.net] >>72 js result=input==""?"":Number(input)
79 名前:デフォルトの名無しさん mailto:sage [2020/04/03(金) 20:17:14 ID:Ea8es11U.net] >>72 perl5 https://pastebin.com/msNvZtWg
80 名前:デフォルトの名無しさん [2020/04/03(金) 20:17:36 ID:D8CnMwXH.net] すまん、よく読んでなかったわ
81 名前:デフォルトの名無しさん mailto:sage [2020/04/04(土) 00:40:59 ID:oi+wB/l2.net] >>72 Perl5 for $a (qw{090 0080 123 0 000}) { ($b = $a) =~ s/^0*([\d])/$1/; print "$a → $b\n" } 実行結果 ~ $ perl 17_72_0dec.pl 090 → 90 0080 → 80
82 名前:123 → 123 0 → 0 000 → 0 [] [ここ壊れてます]
83 名前:デフォルトの名無しさん mailto:sage [2020/04/04(土) 00:43:04 ID:7bsK3hPl.net] >>79 いや、([\d])は(\d)で十分だた… for $a (qw{090 0080 123 0 000}) { ($b = $a) =~ s/^0*(\d)/$1/; print "$a → $b\n" }
84 名前:デフォルトの名無しさん mailto:sage [2020/04/04(土) 01:02:31.09 ID:PfYZfNM0.net] >>80 r オプションつかうと括弧省ける $b = $a =~ s/^0*(\d)/$1/r;
85 名前:デフォルトの名無しさん mailto:sage [2020/04/04(土) 01:49:49 ID:jL2VaRwC.net] >>81 そっか、今度から置換代入にはr使ってみる。 も少し書き換えたら、こうなった for (qw{090 0080 123 0 000}) { /^0*(\d+)/; print "$_ → $1\n" } ~ $ perl 17_72_0dec.pl 090 → 90 0080 → 80 123 → 123 0 → 0 000 → 0
86 名前:72 [2020/04/04(土) 12:46:11.12 ID:1ehA2Rbs.net] >>72 Ruby で def delete_successive_zero( str ) return "" if str == "" str.to_i.to_s # 10進数 end ary = %w(090 0080 123 0 000) ary.push "" p ary.map { |str| delete_successive_zero( str ) } 出力 [ "90", "80", "123", "0", "0", "" ]
87 名前:デフォルトの名無しさん mailto:sage [2020/04/04(土) 13:37:45 ID:tmNSQTrZ.net] >>52 Dart void main() { final List<String> anchors = ["1", "1-3", "1,3", "1,3-5"]; anchors.forEach((anchor) => print("$anchor => ${toNums(anchor)}")); } List<int> toNums(str) { final List<int> result = []; str.split(",").forEach((param){ if(param.contains("-")) { result.addAll(hoge(param)); } else { result.add(int.parse(param)); } }); return result; } List<int> hoge(str) { final List<int> result = []; final range = str.split("-"); for(var i = int.parse(range[0]);i <= int.parse(range[1]); i++) result.add(i); return result; } // => 1 => [1] 1-3 => [1, 2, 3] 1,3 => [1, 3] 1,3-5 => [1, 3, 4, 5]
88 名前:デフォルトの名無しさん mailto:sage [2020/04/04(土) 13:48:29 ID:qnbQjwAi.net] >>72 Python def strip(s): s = s.lstrip('0') if not len(s): return '0' return s
89 名前:デフォルトの名無しさん [2020/04/04(土) 14:34:09.15 ID:VszBH+2q.net] >>72 Java https://paiza.io/projects/40ARFB6Tj0__7hbt0GT4Jg
90 名前:デフォルトの名無しさん [2020/04/04(土) 23:52:04.74 ID:sokSr0we.net] >>85 ""が0になりませんか
91 名前:デフォルトの名無しさん mailto:sage [2020/04/05(日) 01:07:14.83 ID:14D27qM5.net] >>72 >>85 修正 https://ideone.com/rm7jwt
92 名前:デフォルトの名無しさん [2020/04/05(日) 05:36:36.03 ID:sZO7YFrq.net] >>72 Perl5 ある意味手抜きなプログラムである。 https://paiza.io/projects/rlLxhWyuXx9FG7oVB7Kutw オマケ機能としてマイナスの時に -00009 みたいなやつも -9 になるようにした。 更に、整数の数でない場合(文字列の場合)はダブルクォーテーションで括って出すようにした。
93 名前:デフォルトの名無しさん [2020/04/05(日) 05:42:34.94 ID:sZO7YFrq.net] >>72 Kotlin https://paiza.io/projects/5CLwMbqJUtLbrE6nD5oZOA >>89 よりも更にもっと手抜きである。びっくりするほど何もやってない。仕様は同じ。
94 名前:デフォルトの名無しさん mailto:sage [2020/04/05(日) 06:46:49.40 ID:14D27qM5.net] あ〜マイナス値は考慮してなかったな〜
95 名前:デフォルトの名無しさん mailto:sage [2020/04/05(日) 06:56:54 ID:RExqiO2w.net] 教えて君の質問に馬鹿正直に答えてやるなよ
96 名前:デフォルトの名無しさん mailto:sage [2020/04/05(日) 07:43:19 ID:14D27qM5.net] >>72 Python https://ideone.com/Q5vth7 PerlとKotlinの人のに比べると長くなってしまったのが心残り
97 名前:デフォルトの名無しさん [2020/04/05(日) 12:55:09.83 ID:SfC0ZJYK.net] 粘着君の意に反して回答わっさわっさ来ててワロタ
98 名前:デフォルトの名無しさん mailto:sage [2020/04/05(日) 12:56:43.55 ID:yw9/uuhJ.net] 粘着君ってなんやねん スレチだって言われてんだろ
99 名前:デフォルトの名無しさん [2020/04/05(日) 13:01:09.81 ID:SfC0ZJYK.net] えw それ言ってるのが粘着君じゃないの?w どの辺がスレチなのか知らんけど君の意見なんか誰も同調しないかのように回答わさわさなのを見てどんな気持ち???w
100 名前:デフォルトの名無しさん mailto:sage [2020/04/05(日) 13:06:14.44 ID:yw9/uuhJ.net] あほくさ
101 名前:デフォルトの名無しさん mailto:sage [2020/04/05(日) 13:06:52.23 ID:liJZihU7.net] >>72 GNU Smalltalk | fn | fn := [:str | str isEmpty ifTrue: [str] ifFalse: [str asNumber]]. (#('090' '0080' '123' '0' '000' '') collect: fn) display. => (90 80 123 0 0 '' ) https://ideone.com/x8y6JM