七行プログラミング part6
■ このスレッドは過去ログ倉庫に格納されています
ttp://tsushima.2ch.net/test/read.cgi/newsplus/1257697437/ ν即+見て久方ぶりに飛んできました…初期の砂嵐なんかはお題も良かったね。 ttp://www.broadtail.jp/ typedef と詰め詰めのコードがキモいヘッダ画像はさすが悪趣味だね。 >>249 この人part1からいたみたいだな しかも常連さん おれもいつかインタビューで仮眠愚アウトする日がくるかもしれない #define MAX 36 typedef long long a,b[MAX];void c(a*e,a*f){a g=*e,h=*f;for(;g?h%=g:0;)g%=h;*e/= g+=h;*f/=g;}int printf(char*,...),d;int main(){for(b e={1},f={1};printf("B[%d]\ =%lld/%lld\n",d,e[d],f[d]),++d<MAX;){a g=0,h=1,i=d,j,k,l;for(;i--;g=g*l+k*h,h*= l,c(&h,&g))for(l=f[j=i],k=e[i];c(&k,&l),j;k*=d+1-j)l*=j--;h*=d+1;c(&g,&h);l=h<0 ?i:1;e[d]=-g/l;f[d]=h/l;}} 久々に雑誌買ってみようかな? トリッキーの1さん懐かしいな。 GetMessageが-1以外の負数を返さないことが保証されてないのが怖い 微妙な燃料投下。 #!perl open(F,shift)||die;binmode F;print<DATA>,$/,'#~';$p=$j=2;while(read(F,$c,1)){ push(@b,ord($c));if($#b>2){&E;@b=()}}close F;&E if@b;print"*\n";sub E{for($t=0, $i=0;$i<4;++$i){$t*=3;$t+=$b[$i]%3}$c=int(($t+1)*20/19);while(1){++$c if($c+=33) >=42;print chr($c);if(++$p>=72){print"\n#";$p=0}last if!@b;$c=int((shift@b)/3)}} __DATA__ #?7%00%DDPYA44P,5@P_4?P],}P^5'2PZ-%qPR545PZ5E]1F}5uAP5,ZP]5w9'PU/5zjPRQu #Nide/com2txt/X-uw'P'5+~PZ5g(P]-vjPRU-*`P5H9P-E)PZ-KaP5V2P]5hTP5BSPRUVES #?[X5;:PZ5WN'PR',~P/5`QP5Z P-UrPEUQ]EENNNNNN#~ nideさん作 com2txt をperlで書いてみた。 改行コードは DOS/Windows系のCRLF前提なので、LFのみ時は要変換。 >>263 改行コード問題の改善と文法レベルでの縮め。 #!perl $L="\x0D\x0A";sub E{$t=0;($t*=3)+=$b[$_]%3 for 0..3;$_=int(($t+1)*20/19);{($_+= 33)>=42&&++$_;print chr;$p=0,print"$L#"if++$p>=72;@b||last;$_=int((shift@b)/3); redo}}binmode STDOUT;if(open F,pop){binmode F;print'#?7%00%DDPYA44P,5@P_4?P],}' ,"P^5'2PZ-%qPR545PZ5E]1F}5uAP5,ZP]5w9'PU/5zjPRQu$L#Nide/com2txt/X-uw'P'5+~PZ5g" ,"(P]-vjPRU-*`P5H9P-E)PZ-KaP5V2P]5hTP5BSPRUVES$L#?[X5;:PZ5WN'PR',~P/5`QP5Z P-U" ,"rPEUQ]EENNNNNN#~$L$L#~";$p=2;while(read F,$_,1){push@b,ord;E,@b=()if@b>3}@b&& E;print"*$L"} DOSの.com ファイルをテキスト化するcom2txt。 DOSリアルモードで動くJperl4に対応させてみた。 http://www.vector.co.jp/soft/dl/dos/util/se000203.html #!/usr/bin/perl $L="\x0D\x0A";sub E{$t=0;for(0..3){$t*=3;$t+=$b[$_]%3};$_=int(($t+1)*20/19);{( $_+=33)>=42&&++$_;print pack(C,$_);$p=0,print"$L#"if++$p>=72;@b||last;$_=int(( shift@b)/3);redo}}binmode STDOUT;if(open(F,shift)){print'#?7%00%DDPYA44P,5@P_4' ,"?P],}P^5'2PZ-%qPR545PZ5E]1F}5uAP5,ZP]5w9'PU/5zjPRQu$L#Nide/com2txt/X-uw'P'5+" ,"~PZ5g(P]-vjPRU-*`P5H9P-E)PZ-KaP5V2P]5hTP5BSPRUVES$L#?[X5;:PZ5WN'PR',~P/5`QP5" ,"Z P-UrPEUQ]EENNNNNN#~$L$L#~";binmode F;$p=2;while(read(F,$_,1)){push(@b,ord); &E,@b=()if@b>3}@b&& &E;print"*$L"} 七行テトリスまだ縮んでるみたいだね ttp://d.hatena.ne.jp/Ozy/20100325/p1 ttp://d.hatena.ne.jp/murky-satyr/20100801/tetris464 #!/usr/bin/perl %T=qw(! ¡ ' , . ˙ ; ؛ ? ¿ _ ~ a ɐ b q c ɔ d p e ǝ f ɟ g ƃ h ɥ i ı j ɾ k ʞ m ɯ n u p q r ɹ t ʇ u v ʌ w ʍ y ʎ ); print join('',map{$T{$_}||$_}reverse split//,lc"@ARGV"),$/ http://fliptitle.com をperlにしてみた。 Windows 7プログラミングが 7行プログラミングかと間違える今日この頃。 >>271 アイとエルはもうちょっといい文字ないのかな まあないんだろうけど >>271 JavaScript。反転文字の復元はできない一方通行。 よく分からなくてマッピングの順序いじっちゃった。 function fliptitle(s){var m="!¡',.˙;؛?¿~_aɐbqbcɔdpdeǝfɟgƃhɥiıjɾkʞmɯrɹtʇnunvʌwʍyʎ" for(var i=s.length,o='';i;i--)o+=(_=1+m.indexOf(x=s.charAt(i-1)))?m.charAt(_):x; return o} >>276 ちょっと改良してみた、復元も出来る function fliptitle(s){m="!¡',.?;??¿~_a?bqc?dpe?f?g?h?i?j?k?m?r?t?nuv?w?y?";for( i=s.length,o='';i--;)o+=(_=m.indexOf(x=s.charAt(i)))+1?m.charAt(_^1):x;return o } すまん、化けた function fliptitle(s){m="!¡',.˙;؛?¿~_aɐbqcɔdpeǝfɟgƃhɥiıjɾkʞmɯrɹtʇnuvʌwʍyʎ";for( i=s.length,o='';i--;)o+=(_=m.indexOf(x=s.charAt(i)))+1?m.charAt(_^1):x;return o } function fliptitle(s){for(i=o='';x=s.charAt(i++);o=(m.charAt(m.indexOf(x)^1)||x )+o)m="!¡',().˙;؛<>?¿[]_~aɐbqcɔdpeǝfɟgƃhɥiıjɾkʞmɯnurɹtʇvʌwʍyʎ{}";return o} >>272 linux 使いざんす(^^;。 せっかくなので、JavaScript版に HTML部分も付けてみまつた。 動作確認は Gentoo Linux上の firefox-3.6.9 と Opera-10.61 でしました。 <html><body><script>function $(f){return document.getElementById(f)} function fliptitle(s){for(i=o='';x=s.charAt(i++);o=(m.charAt(m.indexOf(x)^1)||x )+o)m="!!',().˙;؛<>??[]_~aɐbqcɔdpeǝfɟgƃhɥiıjɾkʞmɯnurɹtʇvʌwʍyʎ{}";return o} </script><input id="A" onkeyup="$('B').value=fliptitle($('A').value)"><br> <input id="B"></body></html> 1 kB の JavaScript で何ができる ? http://www.excite.co.jp/News/net_clm/20101001/Slashdot_10_10_01_0115233.html ある Anonymous Coward 曰く、 1 kB 以下の JavaScript デモを作るコンテスト「JS1K」が開催され、トップ 10 が発表された (本家 /. 記事より) 。 このコンテストのルールは「1 kB 以下の JavaScript でイケてるデモを作る」という至ってシンプルなもの。外部ファイルの使用は認められておらず、twitter で投稿できる 140 文字以内に収めた場合にはボーナスポイントがもらえるそうだ。 3 位のTetris with sound (音量注意) は操作はもちろん、題名の通りゲーム音楽までついている。1 位に輝いたのは「Legend Of The Bouncing Beholder」という横スクロールゲーム。 アクセス過多のためか残念ながらデモが開かないときもあるが、1 kB の可能性の大きさに改めて驚かされる。 1位「Legend Of The Bouncing Beholder」 http://js1k.com/demo/635 2位「2.Tiny chess」 http://js1k.com/demo/750 3位「Tetris with sound」 http://js1k.com/demo/730 #include <stdio.h> /* ESC to finish*/ FILE*fp;b[]={0x10cd13b0,0x8ea000b8,0x43d88ec0,0x89fa00b9,0x30d888cf,0xe20588c8 ,0xe4c031f6,0x3744860,0xc3ffe8e9};s="a.com";main(){fp=fopen(s,"wb");fwrite(b,4 ,9,fp);fclose(fp);system(s);} cygwinの場合はs="./a.com"にしないとだめ(-mno-cygwinつければおk)。 マルチバイト文字や8文字以上のディレクトリ名の中では走らん。 ちょっとコードを短くして、>>265 の 7com2txt.pl に掛けてみた。 終了は ESC。画面モードは自分で戻す必要があるみたい。 ちなみに四行目の空行を詰めても動いた。 #?7%00%DDPYA44P,5@P_4?P],}P^5'2PZ-%qPR545PZ5E]1F}5uAP5,ZP]5w9'PU/5zjPRQu #Nide/com2txt/X-uw'P'5+~PZ5g(P]-vjPRU-*`P5H9P-E)PZ-KaP5V2P]5hTP5BSPRUVES #?[X5;:PZ5WN'PR',~P/5`QP5Z P-UrPEUQ]EENNNNNN#~ #~i\'f&`D!W,S8_!u_OgOj;2dO"Bmt2b"nB:I?pc* >>283 cygwinの場合、"./a.com"にしただけじゃ実行ビットが立ってないから動かないよ。 え、なんかエラーでたけどうちでは動いちゃったぞw でもx属性ついてないから動いちゃマズイ気がするww CYGWIN_NT-5.1 1.7.7(0.230/5/3) うちだけ? >>281 一位凄すぎだろ・・・ゲームとか詳しくないけどこれは信じられねーわ emacs とか vz にある yabyax というマクロ。 ついでに DOS 版 Jperl4 にも対応させてみた。perl-5.12 でも動いたお。 ----------^ yab.pl ( date:110-12-09 time:15:31 ) -----------< cut here #!/usr/bin/perl if($#ARGV<0){print"$0 files...\n";exit}for$F(@ARGV){if(!open(F)){print STDERR "$F:open err!\n";next}@T=localtime((stat$F)[9]);$T[4]++;$F=~s/^.*[\\\/]//;$_= "^ $F ( date:".sprintf("%03d-%02d-%02d time:%02d:%02d ) ",@T[5,4,3,2,1]);&H; $.=0;while(<F>){$p=0;while(($p=index($_,"\t",$p))>=0){$c=8-$p%8;substr($_,$p,1) =' 'x$c;$p+$c}print}print$/if/\n$/;$_="\$ $F ( lines:$. ) ";&H} sub H{print"".("-"x10).$_.('-'x(50-length))."< cut here\n"} ----------$ yab.pl ( lines:7 ) -----------------------------< cut here ----------^ yax.pl ( date:110-10-25 time:09:47 ) -----------< cut here #!/usr/bin/perl while(<>){next if!/^-+\^\s+([^ ]+) \( date:(\d+)-(\d+)-(\d+) time:(\d+):(\d+)/; ($F,$y,$m)=($1,$2,$3);$m+=12,$y--if($m-=3)<0;$t=((int(($y*365.2425+$m*30.6+$4)- 25508)*24+$5-9)*60+$6)*60;$F.=$ENV{TMP};print"$F:".localtime($t).': '; if(-r$F){print"file exists!\n";next}if(!open(F,">$F")){print"$!!\n";next}$l=0; while(<>){last if/^-+\$/;print F;++$l}close F;utime($t,$t,$F);print"$l $/"} ----------$ yax.pl ( lines:6 ) -----------------------------< cut here http://okajima.air-nifty.com/b/2010/01/post-abc6.html 人材獲得作戦・4 試験問題をやってみた ----------------------------------------------------------- using System;using System.IO;using System.Collections.Generic;using System.Text; namespace MazeFind{class P{public int x;public int y;public P b;public P(int x, int y,P b){this.x=x;this.y=y;this.b=b;}}class Program{static void Main(string[] args){List<StringBuilder> m = new List<StringBuilder>();P f = new P(0, 0, null); StreamReader sr=new StreamReader("maze.txt");int i,j;for(i=0;!sr.EndOfStream; i++){StringBuilder s=new StringBuilder(sr.ReadLine());m.Add(s);for (j=0;j<s. Length;j++){if(s[j]=='S')f=new P(j,i,null);}}Queue<P> q = new Queue<P>();q. Enqueue(f);while(q.Count > 0){P n=q.Dequeue();if (m[n.y][n.x]=='*'||m[n.y][n.x] =='.')continue;else if(m[n.y][n.x]=='G'){P p=n.b;while(p!=null){m[p.y][p.x]='@' ;p=p.b;}break;}if(m[n.y-1][n.x]!='*'){q.Enqueue(new P(n.x, n.y-1,n));m[n.y][n.x] ='.';}if (m[n.y][n.x+1]!='*'){q.Enqueue(new P(n.x+1,n.y,n));m[n.y][n.x]='.';}if (m[n.y+1][n.x]!= '*'){q.Enqueue(new P(n.x,n.y+1,n));m[n.y][n.x] = '.';}if(m[n.y] [n.x-1] != '*'){q.Enqueue(new P(n.x-1,n.y,n));m[n.y][n.x] = '.';}}foreach (StringBuilder s in m)Console.WriteLine(s.ToString().Replace('.', ' '));Console. ReadLine();}}} ----------------------------------------------------------- どうやってもこれ以上縮まらない >>294 もうちょっと頑張れよ using S=System.Text.StringBuilder;using R=System.IO.StreamReader;using C=System. Console;using System.Collections.Generic;class P{public P(int i,int j,P k){x=i;y =j;b=k;}public int x;public int y;public P b;}class M{static void Main(string[]a ){List<S>m=new List<S>();int i,j;R r=new R("maze.txt");P f=new P(0,0,null);for(i =0;!r.EndOfStream;i++){S s=new S(r.ReadLine());m.Add(s);for(j=0;j<s.Length;j++){ if(s[j]==83)f=new P(j,i,null);}}Queue<P>q=new Queue<P>();q.Enqueue(f);while(0<q. Count){P n=q.Dequeue();if((m[n.y][n.x]&7)==2)continue;else if(m[n.y][n.x]==71){P p=n.b;while(p!=null){m[p.y][p.x]='@';p=p.b;}break;}if(m[n.y-1][n.x]!=42){m[n.y][ n.x]=':';q.Enqueue(new P(n.x,n.y-1,n));}if(m[n.y][n.x+1]!=42){q.Enqueue(new P(n. x+1,n.y,n));m[n.y][n.x]=':';}if(m[n.y+1][n.x]!=42){q.Enqueue(new P(n.x,n.y+1,n)) ;m[n.y][n.x]=':';}if(m[n.y][n.x-1]!=42){q.Enqueue(new P(n.x-1,n.y,n));m[n.y][n.x ]=':';}}foreach(S s in m)C.WriteLine(s.ToString().Replace(':',' '));C.Read();}} 俺ももうちょっと頑張るべきだった using S=System.Text.StringBuilder;using R=System.IO.StreamReader;using C=System. Console;using System.Collections.Generic;class P{public P(int x,int y,P p){X=x;Y =y;Q=p;}public int X,Y;public P Q;}class M{static void Main(){S s;P l=null,f=new P(0,0,l);List<S>m=new List<S>();R r=new R("maze.txt");int i,j,x,y;for(i=0;!r. EndOfStream;i++){m.Add(s=new S(r.ReadLine()));for(j=0;j<s.Length;j++)if(s[j]==83 )f=new P(j,i,l);}Queue<P>q=new Queue<P>();q.Enqueue(f);while(0<q.Count){P n=q. Dequeue();s=m[y=n.Y];if((s[x=n.X]&7)==2)continue;else if(s[x]==71){P p=n.Q;while (p!=l){m[p.Y][p.X]='@';p=p.Q;}break;}if(m[y-1][x]!=42){q.Enqueue(new P(x,y-1,n)) ;s[x]=':';}if(s[x+1]!=42){q.Enqueue(new P(x+1,y,n));s[x]=':';}if(m[y+1][x]!=42){ q.Enqueue(new P(x,y+1,n));s[x]=':';}if(s[x-1]!=42){q.Enqueue(new P(x-1,y,n));s[x ]=':';}}foreach(S t in m)C.WriteLine(t.ToString().Replace(':',' '));C.Read();}} >>295 スクエニのSNS、アカウントなしに見れねえよ >>295 ideoneとかCodepadに頼む Ideone.com | Online IDE & Debugging Tool >> C/C++, Java, PHP, Python, Perl and 40+ compilers and intepreters http://ideone.com/ すまん。 アカウントがないとみれないことを失念してた http://ideone.com/KXP7D using C=System.Console;using System.Collections.Generic;using S=System.Text. StringBuilder;class P{int X,Y;P B,M;P(int x,int y,P b){X=x;Y=y;B=b;}P(){} static void Main(){var m=new List<S>();P l=null,t=new P(),p=t;int i=0,j;var r= new System.IO.StreamReader("maze.txt");var s=r.ReadLine();do{j=s.IndexOf('S'); t=j>-1?new P(j,i,l):t;m.Add(new S(s));i++;}while((s=r.ReadLine())!=null);t.M=p ;while(t!=l){if(m[t.Y][t.X]==71){while((t=t.B)!=l)m[t.Y][t.X]='@';break;}if(m[ t.Y][t.X]!=46&&m[t.Y][t.X]!=42){p.M=new P(t.X,t.Y-1,t);p.M.M=new P(t.X+1,t.Y,t );p.M.M.M=new P(t.X,t.Y+1,t);p.M.M.M.M=new P(t.X-1,t.Y,t);p=p.M.M.M.M;m[t.Y][t .X]='.';}t=t.M;}foreach(S b in m)C.WriteLine(b.Replace('.',' '));C.Read();}} ここで力尽きた using C=System.Console;using S=System.Text.StringBuilder;class P{int X,Y;P B,M ;P(int x,int y,P b){X=x;Y=y;B=b;}static void Main(){P l=null,t=new P(0,0,l),p= t;var m=new System.Collections.Generic.List<S>();int i=0,j;var r=new System.IO .StreamReader("maze.txt");var s=r.ReadLine();do{j=s.IndexOf('S');t=j>-1?new P( j,i,l):t;m.Add(new S(s));i++;}while((s=r.ReadLine())!=null);t.M=p;while(t!=l){ if(m[t.Y][t.X]==71){while((t=t.B)!=l)m[t.Y][t.X]='@';break;}if(m[t.Y][t.X]!=46 &m[t.Y][t.X]!=42){p=p.M=new P(t.X,t.Y-1,t);p=p.M=new P(t.X+1,t.Y,t);p=p.M=new P(t.X,t.Y+1,t);p=p.M=new P(t.X-1,t.Y,t);m[t.Y][t.X]='.';}t=t.M;}foreach(S b in m)C.WriteLine(b.Replace('.',' '));C.Read();}} もうちょい縮んだ req=urllib2.Request('http://hibari.2ch.net/test/bbs.cgi',urllib.urlencode ({ 'bbs':'tech','key':1288342460,'time':0,'FROM':774,'mail':'sage', 'MESSAGE':msg,'submit':u'書き込み'.encode('cp932'),'k':''}),{ 'Referer':'http://hibari.2ch.net/' });opener=urllib2.build_opener( urllib2.HTTPCookieProcessor(cj));opener.open(req).read();opener.open( req).read() 自分自身の処理系を最短で記述できるインタプリタを、コンパイルできる既存言語で七行以内で記述できるインタプリタの言語で作って。 #!/usr/bin/perl eval($ARGV[0]) >>306 それだと、perlのインタプリタを七行で書かなければならないんだぜ。コンパイルできる言語で 最終的に要件としては自分を記述できるってこと以外何もないわけだから、evalさえ実行できればいいと思うんだ RUNはBASICの命令ではあるけど、処理系ではないな。 >>304 > コンパイルできる既存言語で七行以内で記述できるインタプリタの言語 つまり、コンパイル可能なインタプリタ言語で書くってこと? Cで例えれば、CのインタプリタをCで書けってこと? evalがない言語だと無理くせーな。 BrainfuckでBrainfuckは記述できるらしいけど、コンパイル可能なBrainfuckのインタプリタで七行ってあったようななかったような BFより記述能力が高くて七行で作れる言語ってどういう設計が良いんだろうな。 Cとかで書かれてるbfのインタプリタで7行って普通にあったような気がするけどどうだっけ と思って前スレを開いたら俺はちょうど前にその付近を見てたらしく いきなり出てきたよ 七行プログラミング part5 ttp://pc11.2ch.net/test/read.cgi/tech/1142467359/487 char URL[] = { 0x68,0x74,0x74,0x70,0x3a,0x2f,0x2f,0x62,0x69,0x74, 0x2e,0x6c,0x79,0x2f,0x69,0x34,0x4a,0x51,0x66,0x6a }; for (int i=0; i<20; i++) { printf("%c", URL[i]); } printf("\n"); JavaScriptで文字のUTF-32を返す関数。 ブレークスルー求む! ----+----|----+----|----+----|----+----|----+----|----+----|----+----|----+--- function utf32(s){var a=[];encodeURI(s).replace(/[^%]{2}/g,function(e){a.push( parseInt(e,16))});a.length||(a[0]=s.charCodeAt(0));return[a[0].toString(16),$( a[1],a[0]),$(a[2],a[1],a[0]&31),$(a[3],a[2],a[1],a[0])][a.length-1];function $ (z,y,x,w){for(var i=s=0,a=[(w&7)<<2|(x&63)>>4 ,(x&15)<<4|(y&63)>>2 ,(y&3)<<6|(z& 63)];i<a.length;i++)a[i]&&(s=(s<<8)+a[i]);return s.toString(16);}} def repl s (s=~/\(.*?(\(.*)\)/?s.sub($1,(repl $1).to_s):s).scan(/\((.*?)\s(.*)\)/).flatten.pop.split.map(&:to_f).inject *(eval"[$1=~/[a-z]/,:#{$1}].compact") end repl"(print (+ 8 9))" puts p repl"(* 8 9 5 5 5 5)" repl"(p (* 59 5 (* 4 (/ 10 6))))" ほらしねよ ゴミカス共 これ ; デリミタっていうんだけどさ、よく打ち忘れるよね Rubyだとつけなくてよくなるんだけど ゴミって意味わかってんのかなこいつら > warnings which real programmers ignore わはは >>323 どうみてもお前そのものじゃん 今日はどんなゴミグラミングをやってきたんだ? せっかくこんなスレにいるんだから何か晒せよ 勿論 自分で書いたものをな 俺は晒した 俺にレスしたんだから次はテメーの番だ ↓ 3日以内に晒さなかったらテメーは逃げたってことで 今保守してる8085のコードにいろいろあった。 R4SIFT: RLC RLC RLC RLC RET MSBとLSBのニブルをひっくり返すのに多用されてた。 アセンブラで7行はきついな。 COMを表示可能キャラクタだけで書き下してた人がいたし、そっちのほうがよくね? 7行におさまってればいい、他人が読めなくてもいい、動けば良い この条件は、アスペプログラマが得意とする条件と一致する 普通に、他人にもわかりやすいように書けって方が難儀するだろうね マニュアル書いたり >>334 ある程度までは機械的に短縮できそうだけど 革命的な短縮は無理そうだな >>334 そうやってステレオタイプにしかものを見られないのはコミュ障の証拠。 mes"に" mes"ち" mes"ゃ" mes"ん" mes"ね" mes"る" mes"^ω^" 7行の「ぷよぷよ」もあるよ。ググれば、すぐに見つかる。 ./>>324 > >>324 .txt awk '/25A/ {system("sleep 0.1");} {print;}' >>324 .txt # いや、ふと書きたくなってね。 Visual C++ 2010 Express で動作確認済 powl()を自作 long double Pow(long double x,long double y){if(x<0&&y-(int)y!=0)return 0; long double n,m,p,z,l,i,j,c,a;int b,t,f=1;y<0?y=-y,f=0:0;a=x,b=(int)y;i=n=p=1; for(;i++<=b;)f?n*=a:b?n/=a:0;if(x<0||y-(int)y==0)return n;c=n;for(t=0;t++<20;) {a=10,b=t;i=0,n=1;for(;i++<b;)n*=a;a=x,b=(int)(y*n)%10;i=0,n=1;for(;i++<b;)n*= a;z=n;for(j=0;j++<t;){for(l=0;l++<40;){for(i=n=1;i++<40;)n=((1/m*z)/n+n)/2.0; for(i=m=1;i++<40;)m=(n/m+m)/2.0;p=(m/p+p)/2.0;}z=p;}f?c*=z:c/=z;}return c;} お前たちはただ短くすればいいとか思っててアルゴリズム的な美しさが無いよね 小さなコードで物凄く多くのことが出来るようなのをかかないとじゃね? お前たちは使ってる言語も・・・アレだし・・・ >>319 これはヤバイ 再帰も使ってるし1行だし >>347 >>319 はたったの1行で RubyをLispのように使える injectとevalを悪用してRubyの関数を呼べるようにしてある それに引き換え>>345 これはなんすかwwww powを自作って え。。。。?何がしたいの マジで意味がわからない そのpoowは普通のpowwwwよりもリファクタリングされてんのそれ?速度速いの? 本当にゴミだな 少しは見習ってほしい 名前欄にuyとあるのは荒らしなので今後はNGネームに指定した。 >>319 これって末尾再帰じゃないよね? 実用しないだろうから問題にはならないけれど、いつかスタックオーバーフローしそう。 000001 IDENTIFICATION DIVISION. 000002 PROGRAM-ID. SEVENPRO. 000003 DATA DIVISION. 000004 WORKING-STORAGE SECTION. 000005 01 HELLO PIC X(12) VALUE "HELLO WORLD!". 000006 PROCEDURE DIVISION. 000007 STOP RUN. 000008*どうしろってんだよ ■ このスレッドは過去ログ倉庫に格納されています
read.cgi ver 07.5.4 2024/05/19 Walang Kapalit ★ | Donguri System Team 5ちゃんねる