1 名前:デフォルトの名無しさん [2019/02/03(日) 11:21:53.20 ID:72eosYJ+.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/ 宿題は宿題スレがあるのでそちらへ。 ※前スレ https://mevius.2ch.net/test/read.cgi/tech/1538096947/
198 名前:デフォルトの名無しさん [2019/02/14(木) 12:26:41.67 ID:9tQDIG7c.net] >>189 じゃあどう解釈すれば良いのか?
199 名前:デフォルトの名無しさん [2019/02/14(木) 12:30:54.48 ID:9tQDIG7c.net] >>192 相変わらず問題がよくわからんよ。
200 名前:デフォルトの名無しさん mailto:sage [2019/02/14(木) 12:50:46.70 ID:QGThOkDI.net] >>192 2x3 の時は、1種類のパーツのみで埋めるとすると 111 111 の時は 111 x2個 1,1,1 1,1,1 の時は 1,1(2段) x3個 11,1 1,11 の時は 110,100(2段) 2個とするのか 11 が 2個と 1 が2個 は2種類のパーツだからダメ?
201 名前:デフォルトの名無しさん mailto:sage [2019/02/14(木) 13:04:00.12 ID:QGThOkDI.net] >>195 90度回転を認めると、11が、3個で良いね。 回転なしなら、111 2個と 1が6個 1 1 2段のパーツが3個 の3種類が解?
202 名前:デフォルトの名無しさん mailto:sage [2019/02/14(木) 13:09:44.77 ID:zlobX1y6.net] 上でもう出てんだろ 回転なしなら辺の約数の組み合わせで全部だっつーの
203 名前:デフォルトの名無しさん mailto:sage [2019/02/14(木) 13:44:03.89 ID:icHgtaXf.net] ヤング図形考えて終わりじゃねえのコレ
204 名前:デフォルトの名無しさん mailto:sage [2019/02/14(木) 13:56:13.92 ID:iDdALKjs.net] abcd badc abab cdcd aaba babb abbb aaab 同じパターンで埋めるのって色々できそうだけどこういうの全部いいの?
205 名前:デフォルトの名無しさん mailto:sage [2019/02/14(木) 18:55:26.99 ID:PxTMiczy.net] >>199 それ何種類も使ってるじゃん。 最低何れかの縦横が連続していないとダメだろ。 パズソーのピースじゃないの? 先ずは2x3で1種類のパーツのみで探せという問題の回答を決めてほしい。
206 名前:デフォルトの名無しさん mailto:sage [2019/02/14(木) 19:04:40.56 ID:iDdALKjs.net] いや全部一種類だよ マスがくっついてないだけで 連続してるとは書かれてなかったし
207 名前:デフォルトの名無しさん mailto:sage [2019/02/14(木) 19:56:54.06 ID:IkVUbwNW.net] お題を正しく理解できてない模様 >>176 をもう1度確認 1つ目の#は6個、2つ目の###は2個、 3つ目の# 4つ目の### #は3個、 ###は1個で2行3列が全て埋まります
208 名前:デフォルトの名無しさん mailto:sage [2019/02/14(木) 20:35:35.28 ID:0TijawxO.net] >>210 例えば、 最初の基本バーツは何? どうしてこれが1種類なのかな? abcd badc -----|
209 名前:デフォルトの名無しさん mailto:sage [2019/02/14(木) 20:45:00.72 ID:0TijawxO.net] >>202 全く理解できない。 >>176 はどうして一つ目が6個なのかな? 1個しかないじゃん? 一つ目って何? 二つ目って何? https://i.imgur.com/GzvMfWg.jpg 自分が今見てるのは、iPhone BB2C
210 名前:デフォルトの名無しさん mailto:sage [2019/02/14(木) 20:54:16.99 ID:RyxU72PZ.net] 回答の良し悪しだけじゃない、良問悪問ってあるよね…
211 名前:デフォルトの名無しさん mailto:sage [2019/02/14(木) 21:20:53.44 ID:IkVUbwNW.net] >>204 1つ目の # は6個で2行3列が全て埋まります ### ### 2つ目の ### は2個で2行3列が全て埋まります ### ### 3つ目の # # は3個で2行3列が全て埋まります ### ### 4つ目の ### ### は1個で2行3列が全て埋まります ### ###
212 名前:デフォルトの名無しさん mailto:sage [2019/02/15(金) 01:14:00.78 ID:Ap6BYDwO.net] >>203 回転を許す立場なら @_ _@ って言うパーツ一種類だけからできてんじゃん 頭大丈夫か?
213 名前:デフォルトの名無しさん mailto:sage [2019/02/15(金) 01:38:17.60 ID:nnYj1Xkq.net] >>207 b と d が同じに見えるそっちこそ頭大丈夫か? abcd badc これのどこが、 --@ @― なんだよ。
214 名前:デフォルトの名無しさん mailto:sage [2019/02/15(金) 02:40:42.39 ID:YMyZWZCa.net] 90度回転ありなら # # # # # と # と # と # で敷きつめられる(=全て埋まる)という意味だろうけど >>179 に抵触するので、これは無しでしょ
215 名前:デフォルトの名無しさん mailto:sage [2019/02/15(金) 06:13:53.42 ID:hXoOelh0.net] >>208 回転を許すっつってんだろ氏ねよ糞無能が @_ _@ を90度回転させたら _@ @_ だろうが 市ね糞野郎
216 名前:デフォルトの名無しさん mailto:sage [2019/02/15(金) 08:54:29.71 ID:nnYj1Xkq.net] >>209 ようやくわかった。 a_ _a _b b_ などと並んでるものは、全て同じパーツとみなすという意味か。 >>176 のお題をよく見ると、2 x 3 の正解の回答が書かれてる。 斜めは許していないからダメだろ。 また、回転も許していない。 回転を許すなら ■ ■ ■ というパーツも入るがそれは除外されてるから、回転も無しだ。
217 名前:デフォルトの名無しさん mailto:sage [2019/02/15(金) 10:38:13.03 ID:NxGjA/1R.net] >>199 のような飛び飛びのパターンまで含めると5x5くらいのサイズなら解けそうでも 10x10くらいの大きさになるとほぼ解けなくなるか?
218 名前:デフォルトの名無しさん mailto:sage [2
] [ここ壊れてます]
219 名前:019/02/15(金) 11:04:50.72 ID:bh7l703i.net mailto: ... d0<-a a->b b->c c->d c'<-d b'<-c' a<-b' d->a2 d<-a2 a2->b2 .... に対して 任意の英数字から初めて右向きの矢印をnこ進んだ英数字を一瞬で割り出す簡単な計算方法を教えろ 左向きの矢印のときも答えろ ここで英数字には好きな整数の値を対応させろ [] [ここ壊れてます]
220 名前:デフォルトの名無しさん mailto:sage [2019/02/15(金) 11:10:32.09 ID:bh7l703i.net] 自己解決しました この問題には答えなくていいです
221 名前:デフォルトの名無しさん mailto:sage [2019/02/15(金) 11:21:16.25 ID:bh7l703i.net] 新問題 ... g0<-a a->b b->c c->d c'<-d b'<-c' a<-b' d->e e->f f->g f'<-g e'<-f' g->a1 g<-a1 a1->b1 .... に対して 任意の英数字から初めて右向きの矢印をnこ進んだ英数字を一瞬で割り出す簡単な計算方法を教えろ 左向きの矢印のときも教えろ ここで英数字には好きな整数の値を対応させろ
222 名前:デフォルトの名無しさん mailto:sage [2019/02/15(金) 11:22:43.57 ID:bh7l703i.net] 訂正 d<-e' 追加で
223 名前:デフォルトの名無しさん mailto:sage [2019/02/15(金) 11:45:59.15 ID:446NzcaO.net] 日本語で書けや
224 名前:デフォルトの名無しさん mailto:sage [2019/02/15(金) 11:55:27.68 ID:bh7l703i.net] 自己解決しました この問題には答えなくていいです >>217 これからは英語で書くので許して下さい
225 名前:デフォルトの名無しさん mailto:sage [2019/02/15(金) 12:34:22.87 ID:fQG3bb7R.net] 自己解決ってどういうこと? 宿題貼ってるの?
226 名前:デフォルトの名無しさん mailto:sage [2019/02/15(金) 12:41:19.85 ID:bh7l703i.net] 俺はキチガイだから相手にしないほうが良い
227 名前:デフォルトの名無しさん [2019/02/15(金) 12:43:47.27 ID:JRF4Gyvi.net] わけのわからん問題が続くなあ・・・
228 名前:デフォルトの名無しさん mailto:sage [2019/02/15(金) 17:27:20.42 ID:DyMjpctN.net] >>211 > 回転もおkかは好きに定めていい
229 名前:デフォルトの名無しさん mailto:sage [2019/02/16(土) 02:08:44.97 ID:3MiMTZ5E.net] しかしこの問題は回転を考えないと、曲がったパーツは不可能だね。 かなり単純化される。
230 名前:デフォルトの名無しさん mailto:sage [2019/02/16(土) 02:11:07.89 ID:vjYPWj7f.net] なんかスレが新しくなってから湧いてきたPythonのクソみたいなコード連投してる日本語がめちゃくちゃのやつうざい
231 名前:デフォルトの名無しさん mailto:sage [2019/02/16(土) 02:16:11.76 ID:bRo2S9Sl.net] 前スレから居るんですよそいつね
232 名前:デフォルトの名無しさん mailto:sage [2019/02/16(土) 02:35:08.75 ID:zutWNq0P.net] 2行3列で回転無しなら以下の4つが答え # ### # # ### ### 回転ありなら更に以下の2つも ## # # ##
233 名前:デフォルトの名無しさん mailto:sage [2019/02/16(土) 07:00:03.49 ID:wpb3vJTT.net] >>226 > ## > # > > # > ## この二つは90度回転した同じものやが
234 名前:デフォルトの名無しさん mailto:sage [2019/02/16(土) 09:56:41.50 ID:3oducOde.net] 煽りではなく本当に発達障害またはそれに準ずる知的ボーダーを疑うレベルで頭悪いな
235 名前:デフォルトの名無しさん mailto:sage [2019/02/16(土) 10:48:56.77 ID:3MiMTZ5E.net] >>228 煽りじゃん。 プログラムを出してくれた方が良い。
236 名前:デフォルトの名無しさん mailto:sage [2019/02/16(土) 12:54:53.60 ID:8ZVYBrON.net] お題:バブルソートを実装せよ
237 名前:デフォルトの名無しさん mailto:sage [2019/02/16(土) 15:04:36.49 ID:PD6v+6Vh.net] >>230 Perl5 use feature qw{current_sub say}; sub bblsort { for (0..@_) { sub { if (@_ >= 2) { __SUB__->(@_[1..$#_]); ($_[1], $_[0]) = ($_[0], $_[1]) if $_[0] > $_[1] } }->(@_[$_..$#_]); } } use List::Util shuffle; @a = shuffle 1..20; say "1) @a"; bblsort @a; say "2) @a"; 実行結果 ~ $ perl 13_230_bblsort.pl 1) 13 6 18 7 15 1 11 8 20 16 14 4 9 10 12 17 2 19 5 3 2) 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20
238 名前:デフォルトの名無しさん mailto:sage [2019/02/16(土) 16:42:44.41 ID:hxDCwUVz.net] お題:数値Xを4つの方法で整数に丸めよ (1) 0に向かう (2) 0から遠ざかる (3) 正の無限大に向かう (4) 負の無限大に向かう X = 0.5 => 0 1 1 0 X = -1.1 => -1 -2 -1 -2 X = 3 => 3 3 3 3
239 名前:デフォルトの名無しさん [2019/02/16(土) 16:47:26.55 ID:akVlWGeE.net] ふたたび、円の内部の整数点を求めるやつ。個数ごとその最小半径を求める。 41個、47個とかが難し目だった気が。
240 名前:デフォルトの名無しさん mailto:sage [2019/02/16(土) 17:07:10.46 ID:wpb3vJTT.net] 内部じゃなくて円周上のやろ
241 名前:デフォルトの名無しさん mailto:sage [2019/02/16(土) 17:07:42.16 ID:cltO7Ts6.net] >>230
242 名前:デフォルトの名無しさん mailto:sage [2019/02/16(土) 17:27:32.65 ID:PD6v+6Vh.net] >>232 組み込み使っていいんだよね? (面倒になるけど、使わなくても書けるけどサ…) Perl5 use POSIX qw(floor ceil); for (0.5, -1.1, 3) { @a = ("$_ => ", sprintf('%d', $_), #int($_), ($_ > 0 ? ceil($_) : ceil($_-1)), ceil($_), floor($_) ); print "@a\n"; } 実行結果 ~ $ perl 13_232_round.pl 0.5 => 0 1 1 0 -1.1 => -1 -2 -1 -2 3 => 3 3 3 3
243 名前:デフォルトの名無しさん mailto:sage [2019/02/16(土) 17:33:21.11 ID:PfkkbXxw.net] >>230 Ruby def bs(ary) ary.tap do |a| (a.size**2).times do (a.size - 1).times do |i| a[i + 1], a[i] = a[i, 2] if a[i] > a[i + 1] end end end end p bs([3, 1, 4, 15, 92]) # => [1, 3, 4, 15, 92] >>232 sgn = -> n {n <=> 0} r4 = -> n {n.floor} r3 = -> n {-r4[-n]} r2 = -> n {sgn[n] * r3[n.abs]} r1 = -> n {sgn[n] * r4[n.abs]} [0.5, -1.1, 3].each{|i| puts 'x = %p => %p %p %p %p' % [i, r1[i], r2[i], r3[i], r4[i]]} # => x = 0.5 => 0 1 1 0 x = -1.1 => -1 -2 -1 -2 x = 3 => 3 3 3 3
244 名前:デフォルトの名無しさん mailto:sage [2019/02/16(土) 17:34:37.44 ID:PD6v+6Vh.net] >>236 これだと 入力が0のとき >(2) 0から遠ざかる が-1になっちゃう。 ($_ > 0 ? ceil($_) : ceil($_-1)), ↓を ($_ >= 0 ? ceil($_) : ceil($_-1)), とすべきでしょうね。スマソ
245 名前:デフォルトの名無しさん [2019/02/16(土) 18:34:59.76 ID:akVlWGeE.net] >>234 円周上が正解
246 名前:デフォルトの名無しさん [2019/02/16(土) 22:05:48.79 ID:lcFO2eao.net] >>262 J f =: (**<.@|),(**>.@|),<.,>. f 0.5 0 1 1 0 f _1.1 _1 _2 _1 _2 f 3 3 3 3 3
247 名前:デフォルトの名無しさん mailto:sage [2019/02/16(土) 22:20:47.39 ID:yZTjSyit.net] >>262 に期待。
248 名前:デフォルトの名無しさん [2019/02/16(土) 22:38:05.19 ID:lcFO2eao.net] >>240 間違えました 262ではなく>>232 でした
249 名前:デフォルトの名無しさん mailto:sage [2019/02/16(土) 23:30:26.24 ID:ReDOqu2L.net] >>232 octave https://ideone.com/7nvSr1
250 名前: mailto:sage [2019/02/17(日) 00:20:40.59 ID:TOi2tzGo.net] >>232 をやろうとおもって、IEEE754 の float/double を直接触る方法を探しているのですが、なにかいい方法はないでしょうか…
251 名前:デフォルトの名無しさん mailto:sage [2019/02/17(日) 00:24:40.58 ID:xZHcxwZO.net] 言語も言わずに(ry https://qiita.com/nia_tn1012/items/d26f0fc993895a09b30b
252 名前: mailto:sage [2019/02/17(日) 00:30:56.20 ID:TOi2tzGo.net] >>245 thx a lot !!
253 名前:デフォルトの名無しさん mailto:sage [2019/02/17(日) 01:04:30.52 ID:iMRi3xg5.net] >>244 あった
254 名前:デフォルトの名無しさん [2019/02/17(日) 08:30:18.08 ID:SfPzlMrR.net] >>233 これ 「Nに対し平面上の円で、その円周上の整数点がちょうどN個となる円の最小半径を求めよ」 例) x^2 + y^2 = 1の整数点は4つだが、最小半径ではない。 (x-0.5)^2 + (y-0.5)^2 = 0.5の方が小さい。
255 名前:デフォルトの名無しさん [2019/02/17(日) 09:09:13.01 ID:SfPzlMrR.net] >>248 網羅的は、きりがなく一つの予想をたてた。 一つ半径を求めたら、次のような操作で半径を縮めたものと、真の最小半径が一致する予想。 半径rの整数点がNだとして。 rを整数比で縮小して中心をずらす。 たとえば上の例だと、r=1で、r → 2/4 r で、 (2x -1)^2 + (2y -1)^2 = 2r 両辺4倍して中心ずらした式
256 名前:デフォルトの名無しさん [2019/02/17(日) 14:03:58.61 ID:SfPzlMrR.net] 整数比かけるので有理数半径ならすべて作り出せるから当たり前か 無駄なく高速に半径縮められる手法が大事か
257 名前:デフォルトの名無しさん [2019/02/17(日) 14:06:36.33 ID:SfPzlMrR.net] あと半径は間違いで、半径でなく右辺、半径^2 だった
258 名前:デフォルトの名無しさん [2019/02/17(日) 19:56:30.00 ID:qArvPplr.net] お題 パンケーキソートを実装する
259 名前:デフォルトの名無しさん mailto:sage [2019/02/18(月) 22:45:5
] [ここ壊れてます]
260 名前:7.31 ID:Gp2d+oGP.net mailto: >>252 Perl5 (効率の良いアルゴリズムではないけれど、まずは…) use List::Util shuffle; @a = shuffle 1..20; print "shuffled) @a\n"; sub flip { ($m, $n) = @_; @a[0..$m] = reverse @a[0..$m]; @a[0..$n] = reverse @a[0..$n]; } for $i (reverse 1..$#a) { $k = undef; for (0..$i) { $k = $_ if (!defined($k) or $a[$k] < $a[$_]) } flip($k, $i) if $k < $i; } print "sorted ) @a\n"; 実行例 ~ $ perl 13_252_clumsy_pancake_sort.pl shuffled) 18 6 2 13 16 1 12 15 10 4 17 20 9 7 19 14 5 11 3 8 sorted ) 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 [] [ここ壊れてます]
261 名前:デフォルトの名無しさん mailto:sage [2019/02/19(火) 22:19:54.18 ID:sIqHxZ1N.net] ; Common Lisp (defun flip (seq n) (concatenate (type-of seq) (nreverse (subseq seq 0 (1+ n))) (subseq seq (1+ n)))) (defun pancake-sort (seq predicate) (loop for s = seq then (if j (flip (flip (flip (flip s (1- j)) (1- i)) i) j) s) for i from 1 to (1- (length seq)) for j = (position (elt s i) s :end i :test predicate) finally (return s)))
262 名前:デフォルトの名無しさん mailto:sage [2019/02/19(火) 22:25:14.24 ID:flzwRht/.net] お題:1から8までのカードを混ぜ、2枚そこから引いた時1枚目*10+2枚目が素数になる確率を求める。 ただし、 1. 小数第3位で四捨五入した後に回答すること。 2. 数学的な証明は禁止。 3. 各カードは9-その数字の数だけ存在する。 (例:1ならば8枚存在する) 4. 各カードが出る確率はまだ引かれていないカードの枚数に比例する。
263 名前:デフォルトの名無しさん mailto:sage [2019/02/20(水) 00:45:46.98 ID:VV/V1Ls8.net] python print(0.31)
264 名前:デフォルトの名無しさん mailto:sage [2019/02/20(水) 00:55:56.83 ID:SyQ4jkRO.net] >>255 Perl5 $R = 0.0; @s = map{($_) x (9-$_)} 1..8; #say "@s"; $t = @s; #say $t; for (qw{11 13 17 23 31 37 41 43 47 53 61 67 71 73 83}) { @o = split''; my %h; $h{$_}++ for @s; my $r = $h{$o[0]}-- / $t; $r *= $h{$o[1]}-- / ($t - 1); $R += $r; } printf "%3.2f\n", $R; 実行結果 ~ $ perl 13_255.pl 0.31
265 名前:さまよえる蟻人間 mailto:sage [2019/02/20(水) 00:58:27.33 ID:5PEVWiZL.net] お題: URLで場所を指定された、インターネット上のテキストファイルをダウンロードするプログラム。
266 名前:デフォルトの名無しさん mailto:sage [2019/02/20(水) 01:16:40.92 ID:SyQ4jkRO.net] >>258 Perl5 require LWP::UserAgent; $ua = LWP::UserAgent->new; $ua->agent('Mozilla/5.0 (compatible; MSIE 10.0; Windows NT 6.2; Win64; x64; Trident/6.0)'); use HTTP::Cookies; $ua->cookie_jar(HTTP::Cookies->new(file => 'lwp-cookies.txt', autosave => 1)); $url = 'ftp.iij.ad.jp/pub/linux/centos/7.6.1810/isos/x86_64/0_README.txt '; $file = './0_README.txt'; $res = $ua->mirror($url, $file); print $res->status_line, "\n"; 実行例 ~ $ perl 13_258.pl 200 OK (※こういうのは、別に今急に考えたわけじゃなく、日常的に作って使っているのですぐ投稿できました)
267 名前:さまよえる蟻人間 mailto:sage [2019/02/20(水) 01:37:18.13 ID:jAMIqMc6.net] WSHでダウンロードできるヤツ、おる?
268 名前:デフォルトの名無しさん mailto:sage [2019/02/20(水) 01:40:03.52 ID:SyQ4jkRO.net] >>260 wget.exe か curl 使えば?
269 名前:デフォルトの名無しさん mailto:sage [2019/02/20(水) 02:05:29.76 ID:Te3YpcYw.net] >>260 download.js var xmlhttp = new ActiveXObject("Msxml2.XMLHTTP"); xmlhttp.Open("GET", "ftp.iij.ad.jp/pub/linux/centos/7.6.1810/isos/x86_64/0_README.txt", false); xmlhttp.Send(); var stream = new ActiveXObject("Adodb.Stream"); stream.Type = 1; stream.Open(); stream.Write(xmlhttp.responseBody); stream.SaveToFile("0_README.txt", 2);
270 名前:デフォルトの名無しさん mailto:sage [2019/02/20(水) 02:28:54.15 ID:PF1BNO4k.net] pythonista stash 反則? $ wget ftp.iij.ad.jp/pub/linux/centos/7.6.1810/isos/x86_64/0_README.txt $ ls -la *.txt 0_README.txt (2.4K) 2019-02-20 02:21:45
271 名前:デフォルトの名無しさん mailto:sage [2019/02/20(水) 02:51:47.69 ID:qYIek1dL.net] >>255 ;; Common Lisp (let ((prime (list 2))) (defun primep (n) (loop for i from (1+ (car prime)) upto n unless (find-if (lambda (j) (zerop (mod i j))) prime :from-end t) do (push i prime)) (find n prime))) (defun nearest (i j) (/ (floor (+ (* i (expt 10 j)) 0.5)) (expt 10 j))) (loop with cards = (loop for i from 1 to 8 nconc (make-list (- 9 i) :initial-element i)) and n = 0 and p = 0 for one in cards do (loop for two in (remove one cards :count 1) do (incf n) if (primep (+ (* 10 one) two)) do (incf p)) finally (format t "~,3F~%" (nearest (* (/ p n)) 3)))
272 名前:さまよえる蟻人間 mailto:sage [2019/02/20(水) 03:32:48.09 ID:jAMIqMc6.net] わーい、これでダウンロード制限された端末でDLできるぞ。やったー!
273 名前:デフォルトの名無しさん mailto:sage [2019/02/20(水) 03:35:30.81 ID:VV/V1Ls8.net] お題スレってそういう趣旨の場所だっけか?
274 名前:デフォルトの名無しさん [2019/02/20(水) 03:43:59.14 ID:J4bEIWoi.net] >>265 できるかなあ?どういう制限しているかにもよるぞ。
275 名前:デフォルトの名無しさん mailto:sage [2019/02/20(水) 05:32:07.81 ID:B2QSVSiS.net] PowerShell にも、curl, wget ある get-alias (gal) curl -> Invoke-WebRequest wget -> Invoke-WebRequest と言うことは、Ruby からも、そのコマンドを呼べる
276 名前:268 mailto:sage [2019/02/20(水) 09:30:07.43 ID:B2QSVSiS.net] なんと、コマンドプロンプトで、 where curl と入力すると、 C:\Windows\System32\curl.exe PowerShell の、curl, wget は、Invoke-WebRequest のエイリアスだけど、 curl.exe は、本物のcurl !
277 名前:デフォルトの名無しさん mailto:sage [2019/02/20(水) 09:49:14.61 ID:hK+DOQws.net] >>268 >>269 死ね
278 名前:デフォルトの名無しさん mailto:sage [2019/02/20(水) 09:52:59.12 ID:PF1BNO4k.net] >>258 >>265 なんだ下心があったのか。 pythonista stash は以下のコマンドが使える。 help(StaSh) v0.7.1 alias, cat, cd, clear, cowsay, cp, crypt, curl, cut, dropbox_setup, du, easy_config, echo, edit, exit, fg, find, ftpserver, gci, gh, git, grep, head, httpserver, jobs, kill, latte, ls, mail, man, mc, md5sum, mkdir, monkeylord, more, mount, mv, openin, pbcopy, pbpaste, ping, Usage, pip, printenv, printhex, ptinstaller, pwd, py-tree, python, python3, quicklook, rm, rmdir, scp, selfupdate, sha1sum, sha256sum, sort, source, sqlite, ssh, ssh-keygen, stashconf, tail, tar, telnet, totd, touch, umount, uniq, unzip, version, wc, webviewer, wget, whatis, which, wol, xargs, zip ftpserver や、httpserverは簡易的なサーバーになる。 ssh やscp 、tar zip などは使い道多そう。 webviewer てpython の下でブラウザが立ち上がってるみたいなんだがどんな使い道があるんだろう? なお、標準python用のシェルは、xonsh と言うのがあるらしい。 xonsh では、標準的なshellコマンドと並行してpython スクリプトも実行できるから強力。 stash ではそれはできない。
279 名前:268 mailto:sage [2019/02/20(水) 10:31:11.68 ID:B2QSVSiS.net] WSH はわからないけど、Ruby では、 require 'nokogiri' html = `curl www.example.com/` # curl は書き込めないので、全角に変換した doc = Nokogiri::HTML( html ) elements = doc.css( "h1" ) puts elements.first.content #=> Example Domain
280 名前:デフォルトの名無しさん mailto:sage [2019/02/20(水) 11:50:14.05 ID:hK+DOQws.net] >>272 死ね
281 名前:デフォルトの名無しさん [2019/02/20(水) 13:03:16.05 ID:agArr1lp.net] >>269 なんかね。UNIX系OSで昔からよく使われてたコマンドを移植したようで、tarとか他にも色々あったと思った。
282 名前:デフォルトの名無しさん mailto:sage [2019/02/20(水) 17:40:48.68 ID:3A0CDvTh.net] >>263 今度は反則なしで。python import requests as r url = 'ftp.iij.ad.jp/pub/linux/centos/7.6.1810/isos/x86_64/0_README.txt ' g= r.get( url ) print('読んだサイズは',len(g.text) ) # 読んだサイズは 2495
283 名前:デフォルトの名無しさん mailto:sage [2019/02/20(水) 17:58:34.75 ID:t1mcuuOB.net] >>258 Pharo 7 'ftp.iij.ad.jp/pub/linux/centos/7.6.1810/isos/x86_64/0_README.txt ' asUrl retrieveContents
284 名前:デフォルトの名無しさん mailto:sage [2019/02/20(水) 18:10:48.97 ID:3A0CDvTh.net] >>276 ありがとう。 そんな言語も出てきてたんだ。 でも普及は難しいのかも。
285 名前:デフォルトの名無しさん mailto:sage [2019/02/20(水) 23:51:29.53 ID:MUUM+ThN.net] >>230 pike https://ideone.com/VZzxoA
286 名前:デフォルトの名無しさん mailto:sage [2019/02/21(木) 18:54:22.61 ID:1axkeZoV.net] お題:リスト等を", "で結合して表示せよ。ただし最後は" and "で結合する。 https://ideone.com/pVuO7T
287 名前:デフォルトの名無しさん mailto:sage [2019/02/21(木) 19:06:17.90 ID:TUYpSwcQ.net] >>279 JavaScript const arr = ['apple', 'banana', 'orange', 'mango']; const last = ' and ' + arr.pop(); console.log(arr.join`, ` + last); //=> apple, banana, orange and mango
288 名前:デフォルトの名無しさん mailto:sage [2019/02/21(木) 19:17:09.75 ID:eUc7EqKm.net] >>279 python l = [ 1,2,3,4,5] print( *l[0:-1] ,'and' , l[-1]) # 1 2 3 4 and 5
289 名前:デフォルトの名無しさん [2019/02/21(木) 19:27:21.23 ID:2zdYL4u2.net] >>279 Haskell main = putStrLn.concat.concat $ [map addCanma (init lst),["and,"],[last lst]] addCanma s = s ++ "," lst = ["apple","banana","orange","mango"] output: apple,banana,orange,and,mango
290 名前:デフォルトの名無しさん mailto:sage [2019/02/21(木) 19:31:58.30 ID:lqQG1Hmj.net] 題意は list = ["red","green","black","white"] print(", ".join(list[:-1]),"and",list[-1]) # red, green, black and white だろ
291 名前:デフォルトの名無しさん mailto:sage [2019/02/21(木) 19:43:56.00 ID:YnrfI9YG.net] そこそこ優秀なのに肝心なところでいい加減だから試験に落ちるタイプだな
292 名前:デフォルトの名無しさん [2019/02/21(木) 19:51:21.05 ID:2zdYL4u2.net] >>283 あ、そうか。 不恰好だけどこれで一応対応。 (putStrLn.concat.concat) [init $ map addCanma $ init lst,[last $ init lst],[" and "],[last lst]] スマートな解答も考えてみるよ。
293 名前:デフォルトの名無しさん mailto:sage [2019/02/21(木) 20:16:12.26 ID:eUc7EqKm.net] >>283 ごめん、俺もカンマが抜けてた。 数字の場合の模範解答をよろしく。
294 名前:デフォルトの名無しさん [2019/02/21(木) 20:20:50.88 ID:2zdYL4u2.net] スマートかは兎も角、一応マシな形に。 空リストや要素数1にも対応。 Haskell main = putStrLn $ last2 lst last2::[String] -> String last2 [] = [] last2 [x] = x last2 [x,y] = concat [x," and ", y] last2 (x:xs) = x ++ "," ++ last2 xs lst = map show [0..5] output: 0,1,2,3,4 and 5
295 名前:デフォルトの名無しさん mailto:sage [2019/02/21(木) 20:59:38.40 ID:lqQG1Hmj.net] >>286 list = [str(x) for x in range(1,5)] とか map(lambda x : str(x), list) でもおk 要素数が1個以下の場合はifで分離するだけなので略
296 名前:デフォルトの名無しさん [2019/02/21(木) 21:09:47.73 ID:y3+CYNZ6.net] >>279 Common Lisp (format t "~{~@{~A~^~#,1^, ~}~^ and ~A~}~%" (list 1 2 3 4)) https://ideone.com/6DcwO9
297 名前:デフォルトの名無しさん mailto:sage [2019/02/21(木) 21:21:18.07 ID:lqQG1Hmj.net] intとstrが混在してる場合でも大丈夫で入力数が1以下ならそのまま返すワンライナー python print("".join(reversed(" ,".join(reversed([str(x) for x in list])).replace(",","dna ",1)))) JS+正規表現 console.log(list.join(", ").replace(/(.*),(.*?)+/,"$1 and $2")) 冷静に考えるとこの正規表現を使い回せばどの言語でもワンライナーなのでは
298 名前:さまよえる蟻人間 mailto:sage [2019/02/21(木) 21:21:18.26 ID:PQQkN+7n.net] ラティス、再び。 お題: >>99 の場合分けのラティス構造を使って、複数の入力文字列について、共通部分をまとめ、1つの文字列に凝縮せよ。 (例) ああい ああ あう →あ{{あ{い/}}/う}