<body onKeyDown=K=event.keyCode><script>K=0;T=[-1,-8,+1,+8];D=3;P=9;
C=new Array("<font color=white>_</font>","■","日","優","EX","IT");
M=[1,1,1,1,1,1,1,1,1,3,0,0,1,1,1,1,1,0,2,2,1,1,1,1,1,0,2,0,1,1,1,1,1,1,1,0,
1,1,1,1,1,1,1,0,0,0,4,5,1,1,0,0,0,1,1,1,1,1,0,0,0,1,1,1,1,1,1,1,1,1,1,1];
function S(){if(D>0){Q=P+(Z=(K>36 && K<41)?T[K-37]:0);K=0;F=0;if(M[Q]==2){
if(M[Q+Z]==0){F=M[Q+Z]=2;}if(M[Q+Z]>3){F=1;D--;}}if(M[Q]==0 || F!=0){M[Q]=3;
M[P]=0;P=Q;}Z=0;G="";for(R=0;R<72;R++){G+=C[M[R]];G+=(R%8==7)?"<BR>":"";}
document.body.innerHTML=G;setTimeout(S,99);}else{location.href=
"
http://www2.ezbbs.net/24/techside/img/1108755226_1.jpeg ";}}S();</script>
</body>
-----------------------------------------
JAVA SCRIPT
注目あびる優名偽業者の倉庫番
優=偽業者(上下左右で操作)
日=ダンボール
EXIT=ダンボールをここに運べ
>852 おおー、すごい。ちゃんと遊べる(`・ω・´) …でも、クリアのご褒美がアレで(´・ω・`) (w
854 :
デフォルトの名無しさん :05/03/01 22:12:44
>>852 ガイドライン板から来ますた
この板すごいなあ。
俺もガ板からきますた
ガイドライン厨ども! お前らイイヨイイヨー
<body><script>L=1;function B(){if(L){T=10;L=0;M="バスには10人乗っていました"; C=A=3+F(8);}else{I=F(T);O=F(5);T=T-I+O;if(C>0)M="次のバス停で"+I+"人降り "+O+ "人乗りました";if(C==0)M="次へを押して下さい";if(C<0){if(prompt("問題:何回"+ "バス停にいったでしょう?","") == A)M="あたり";else M="はずれ";L=1;}C--;}M+= "<input type='button' value='次へ' onclick='B()'>";document.body.innerHTML=M; }function F(V){return(Math.floor(Math.random()*V));}B();</script></body> ----------------------------------- まぁ、簡単な数当てゲームです
誰か。 7行に収まってるコードを展開してインデントつけて見やすくする7行プログラムを。お願いします。
C/C++だけでいいかの
/*2000桁目あたりで間違える。*/ #include <stdio.h> #define s (4000+10) void main(){long a[s]={3},b[s]={0},i=1,j,k,l,m;for(m=k=1;m;i++){k+=8*i-8,l=i*(16 *i+8);for(j=0;j<s-1;)b[j]+=a[j],a[j++]*=k;for(m=j=0;j<s-1;)a[j+1]+=(a[j]%l)*10,m|=a[j],a [j++]/=l;}for(i=s-2;i;)b[i-1]+=b[i]/10,b[i--]%=10;for(i=1;i<s-10;)printf("%d",b[i++]);} 円周率を求めるプログラム 計算が違うのはご愛嬌
ロリ画像ください
ロリ画像ください
#include <math.h> unsigned d=22050,f,t=1,v=16383;char*a,b[999],*l="cdefgabr",o=0,*p,*q,r[]={-7,-5, -3,-2,0,2,4,-1};w(z){fwrite(&z,4,1,p);}main(c,x)char**x;{p=fopen("i","r");fgets( b,999,p);fclose(p);p=fopen("o","wb");for(a=b;*a;++a){(q=strchr(l,*a))?f=(o>0?440 <<o:440>>-o)*pow(2,(12.0+r[q-l]+(*a-43?0:1))/12.0-1),d=(atol(a+1)?88200/atol(a+1 ):d),w(q-l-7?t:3),w(f),w(d),w(v):*a-111?*a-118?*a-64?*a-60?a-62?0:o++:o--:(t=at\ oi(a+1)):(v=1.0*atoi(a+1)*32767.0/128.0):(o=atoi(a+1)-4);}fclose(p);} mml2o mmlを中間ファイルに変換。iを読み込みoに吐き出す。 unsigned*b,d[9][999][5],l[9],g,q;char*p,a[]="o8",i,j,k;w(m){fwrite(&q,m,1,p);}t( ){q+=sin(.0001424758573*b[1]*b[4])*b[3];}u(){q+=rand()*b[3]*2-b[3];}main(){for(i =9;i--;a[1]--)if(p=fopen(a,"rb")){for(j=0;fread(d[i][j],4,4,p);j++);fclose(p);}p =fopen("w","wb");fputs("RIFF",p);w(4);fputs("WAVEfmt ",p);q=16;w(4);q=65537;w(4) ;q=44100;w(4);q*=2;w(4);q=1048578;w(4);fputs("data",p);w(4);for(i=1,q=0;i;w(2), g++,q=0)for(i=0,j=9;j--;)if(k=(b=d[j][l[j]])[0]){i=1;k-2?k-1?0:t():u();b[2]-b[4] ?b[4]++:l[j]++;}fseek(p,4,0);q=36+g*2;w(4);fseek(p,40,0);q-=36;w(4);fclose(p);} o2wav 中間ファイルをriff wavに変換。o0〜o8(1〜9トラック)を読み込みwに吐き出す。 mml2wavを作ろうと思ったけど7行は無理だったので二つに分割。 MMLで使えるものはcdefgab(音階),r(休符),音の長さ(1〜),v(ボリューム,0~127),@(音色,1-正弦波,2-ノイズ),o(オクターブ指定,1〜8)です。
>>867 2つまとめて7行に挑戦してみるか・・・
>>867 #include <math.h>
unsigned d=22050,f,t=1,v=16383;char*a,b[999],*l="cdefgabr",o=0,*p,*q,r[]={-9,-7,
-5,-4,-2,0,2,0};w(z){fwrite(&z,4,1,p);}main(c,x)char**x;{p=fopen("i","r");fgets(
b,999,p);fclose(p);p=fopen("o","wb");for(a=b;*a;++a){(q=strchr(l,*a))?f=(o>0?440
<<o:440>>-o)*pow(2,(12.0+r[q-l]+(a[1]-43?0:(a++>0)))/12.0-1),d=(atol(a+1)?88200/
1.3/atol(a+1):d),w(q-l-7?t:3),w(f),w(d),w(v):*a-111?*a-118?*a-64?*a-60?*a-62?0:
++o:--o:(t=atoi(a+1)):(v=32767.0*atoi(a+1)/128.0):(o=atoi(a+1)-4);}fclose(p);}
unsigned*b,d[9][999][5],l[9],g,q;char*p,a[]="o8",i,j,k;w(m){fwrite(&q,m,1,p);}t(
){q+=sin(.0001424758573*b[1]*b[4])*b[3];}u(){q+=(rand()%b[3]*2)-b[3];}main(){for
(i=9;i--;a[1]--)if(p=fopen(a,"rb")){for(j=0;fread(d[i][j],4,4,p);j++);fclose(p);
}p=fopen("w","wb");fputs("RIFF",p);w(4);fputs("WAVEfmt ",p);q=16;w(4);q=65537;w(
4);q=44100;w(4);q*=2;w(4);q=1048578;w(4);fputs("data",p);w(4);for(i=1,q=0;i;w(2)
,g++,q=0)for(i=0,j=9;j--;)if(k=(b=d[j][l[j]])[0]){i=1;k-2?k-1?0:t():u();b[2]-b[4
]?b[4]++:l[j]++;}fseek(p,4,0);q=36+g*2;w(4);fseek(p,40,0);q-=36;w(4);fclose(p);}
おかしい部分を修正。
<body><script>M="";V=new Array(" ","○","●");P=[1,2,1,2,1,2,0,0];Q=6;W=4; function C(B){if(W && B!=7&& P[B]&& P[(N=B+1)]){P[Q]=P[B];P[Q+1]=P[N];P[B]= P[N]=0;Q=B;K=[-1,-1,-1];for(F=i=0;i<8;i++){if(K[P[i]]>-1 && i!=(K[P[i]]+1)) {F=1;break;}K[P[i]]=i;}M=(!F)?"成功:":(!--W)?"残念:":"残り"+W+"手";}S();} function S(){G="";for(i=0;i<8;i++){G+="<input type='button' name='btn'"+i +" value="+V[P[i]]+" onclick='C("+i+")'>";}document.body.innerHTML=G+M;} S();</script></body> ----------------------- おしどりぱずる 黒白黒白の順で並んでいる碁石があります。 並んだ2個の碁石を、そのままの順で空いている所へ移動させる事を繰り返し、 最終的に黒と白を分ける様に(黒黒黒白白白 or 白白白黒黒黒 )に並べる事が できればOK!! 操作ですが、クリックした石と右隣りの石が空いている所に移動します。 空白をクリックしても、右隣の石が空白でも移動しません。 一番右側の石をクリックしても何も起こりません。
#include<stdio.h> // indent.c int c,d;p(){putchar(c);return;}n(){putchar('\n');return;}t(){int i;n(); for(i=0;i<d;i++)putchar('\t');return;}main(){while((c=getchar())!=EOF){ if((c=='{')||(c=='}'))(c=='{')?(d++,p(),t()):(d--,t(),p(),n());else if( c==';')p(),t();else if(c!='\n')p();}} 過去ログ見れないので整形自分で作ってみました。 字数制限は問題ないけどいまいち汚い。
連番作成支援とか
このスレ初めて来たけどすげー。 Winで bmp -> HTML に変換するやつ作ってみた。 でも3行オーバー。orz #include <windows.h> /* Win2k & bcc 使い方 a.exe hoge.bmp > hoge.html */ main(int c,char**v){BITMAPINFOHEADER*H;HANDLE h=CreateFile(v[1],1<<31,0,0,3,1<< 7,0);long y,x,a,w,b,C,D,W=GetFileSize(h,0);BYTE*P,*B,*G=GlobalAlloc(1<<6,W); BITMAPINFO*I=G+14;ReadFile(h,G,W,&W,0);B=G+*(DWORD*)(G+10);H=&I->bmiHeader;w=W= H->biWidth;CloseHandle(h);b=H->biBitCount;w=b<9?w%(a=8/b)?w/a+1:w/a:W*(a=b/8);w =w%4?(w/4+1)*4:w;puts("<html><body>");for(y=H->biHeight-1;y>-1;y--){D=~C;for(x= 0;x<W;x++){P=b<9?(BYTE*)(I->bmiColors+(((1<<b)-1)&(B[x/a+y*w]>>(b*(a-1-x%a))))) :B+x*a+y*w;C=RGB(*P,P[1],P[2]);C-D?printf("%s<font style='color:#%06x'>",!x?"": "</font>",C):0;printf("#");D=C;}puts("</font><br>");}puts("</body></html>"); GlobalFree(G);return 0;}
>873 ありがとう。 楽しくなってきたんだが、やりすぎると普段から書くコードが汚くなる弊害が…。
>>875 むしろ逆かな
ここで行うことと逆のことをすると、ソースが読みやすくきれいになり、
さらに論理的に同一の部分を把握する能力もあがった
(ような気がする
と、7行で返答してみた
まあ一応、他人のソース読む習慣にはなるよね・・w
878 :
デフォルトの名無しさん :05/03/15 02:59:51
芥川賞受賞作品生成器。(Java) public class A{byte b;A a;void p(){System.out.write(b);if(a!=null)a.p();}void n (){if(++b==0)if(a!=null)a.n();else a=new A();}public static void main(String[]s ){A a=new A();for(;;){a.p();a.n();}}} いい題名が思いつかなかった。 全てのバイト列を吐くプログラムです。
お題マダァ-? (・∀・ )っ/凵⌒☆チンチン
萌
882 :
デフォルトの名無しさん :05/03/17 19:19:26
>>870 のパズルに影響されて「川渡りパズル」を作ってみました。
でも1行オーバー。俺の力では7行は無理ぽorz
<body><script>T=["豚飼","羊飼","猟師","豚","豚","羊","羊","狼",""];P=[1,1,1,1,1
,1,1,1,1];E=2;R=1;Q=0;M="";function H(M,N){return P[M]*P[N]<0}function F(N){if(
N==8){if(Q){R=R==1?-1:1;E=2;Q=0;for(i=0;i<8;i++)if(!P[i])P[i]=R;if((H(0,1)&!(H(
0,5)&H(0,6)&H(1,3)&H(1,4)))|(H(2,7)&!(H(7,0)&H(7,1)&H(7,3)&H(7,4)&H(7,5)&H(7,6)
)))M="NG"}}else if(P[N]==R&&E>0){if(N<3)Q++;P[N]=0;E--}else if(!P[N]){if(N<3)
Q--;P[N]=R;E++}P[8]=R;S()}function S(){T[8]=R==1?"<":">";G="";for(i=0;i<9;i++
)G+="<p align="+(P[i]<0?"left":P[i]?"right":"center")+" onClick='F("+i+")'>"+T[
i]+"</p>";document.body.innerHTML=G+M}S()</script><body>
IE6で動作確認
川の向こう岸へ渡ろうとしています。 ここにあるボートは2人乗り。 ボードを操作できるのは「羊飼」「豚飼」「猟師」の三人だけです。 羊飼は豚が大好物で、豚飼がいないところでは、豚を殺して食べてしまいます。 豚飼は羊が大好物で、羊飼がいないところでは、羊を殺して食べてしまいます。 狼は猟師がいないところでは、その場にいる他全員を食べてしまいます。 さて全員安全に向こう岸へ渡るには・・・ 名前の文字をクリックしてボートに乗る候補を選んでください。 もう一度クリックすると候補から外れます。 候補に選べるのは同時に最大二人まで。 最下行のボート(<または>)をクリックすると、対岸へ移動します。 ただし、ボートを操作できる人が乗っていないと移動できません。 失敗すると最下行にNGと表示されます。
>>882 ちょっと縮めた
<body><script>T=["豚飼","羊飼","猟師","豚","豚","羊","羊","狼",""];P=[1,1,1,1,1
,1,1,1,1];E=2;R=1;Q=0;M="";function H(M){return P[M
>>3 ]*P[M&7]<0}function F(N){
if(N==8){if(Q){R*=-1;E=2;Q=0;for(i=0;i<8;i++)if(!P[i])P[i]=R;if((H(1)&!(H(5)&H(
6)&H(11)&H(12)))|(H(23)&!(H(56)&H(58)&H(59)&H(60)&H(61)&H(62))))M="NG"}}else if
(P[N]==R&&E>0){if(N<3)Q++;P[N]=0;E--}else if(!P[N]){if(N<3)Q--;P[N]=R;E++}P[8]=
R;S()}function S(){T[8]=R==1?"<":">";G="";for(i=0;i<9;i++)G+="<p align="+(P[i
]<0?"left":P[i]?"right":"center")+" onClick='F("+i+")'>"+T[i]+"</p>";document.
body.innerHTML=G+M}S()</script><body>
3行目 if(Q){R*=-1;E=2;Q=0;for(i=0;i<8;i++) > if(Q){R=-R;E=2;for(i=Q=0;i<8;i++) 5行目 P[N]==R&&E>0 > P[N]==R&&E 6行目 T[8]=R==1? > T[8]=0<R?
おぉ、結構見落としがあるもんだなぁ。 関数H(M)は思いつかなかった。すごい!
言語仕様知らんので間違いかもしれんが if(!P[i])P[i]=R; → P[i]||(P[i]=R); if(N<3)Q++; → Q+=N<3; if(N<3)Q--; → Q-=N<3;
追加 P=[1,1,1,1,1,1,1,1,1];R=1; → P=[R=1,1, (略) ,1];
>>887 試してみた。trueは-1になるみたい。
他の環境でも保証されるかは調べてみないとわからないな。
あと、onClick の''は、消してもIE6で動作OKだった。
ずるいかもしれないけど、
ボートの向き表示をやめるとか、
表示文字をアルファベット1文字に簡略化すれば、7行できそうだね。
配列Tの ,"" と6行目の T[8]=0<R?"<":">"; を削除、 7行目 +T[i]+ を +(i-8?T[i]:0<R?"<":">")+ に。
alignの(左から記述する言語での)初期値はleftなので"left"は省略可。
省略しまくり。IE6、Firefoxで動作確認。
<body><script>P=[1,1,1,1,1,1,1,1,R=1];E=2;M="";Q=0;function H(M){return P[M
>>3 ]
*P[M&7]<0}function F(N){if(N==8){if(Q){R=-R;E=2;for(i=Q=0;i<8;i++)P[i]||(P[i]=R
);if((H(1)&!(H(5)&H(6)&H(11)&H(12)))|(!(H(56)&H(58)&H(59)&H(60)&H(61)&H(62))&H(
23)))M="<p>NG"}}else if(P[N]==R&&E){Q+=N<3;P[N]=0;E--}else if(!P[N]){Q-=N<3;P[N
]=R;E++}P[8]=R;S()}function S(){G="";for(i=0;i<9;i++)G+="<p align="+(P[i]<0?0:P
[i]?"right":"center")+" onClick=F("+i+")>"+(i-8?["豚飼","羊飼","猟師","豚","豚"
,"羊","羊","狼"][i]:0<R?"<":">");document.body.innerHTML=G+M}S()</script>
>>892 すごい!
</p></body>が無いとか、align=0とか強引なところはあるけど、
ちゃんと動くし7行になってる!
失敗判定にバグ発見?
H(56)&H(58)&・・・となってるけど、
H(56)&H(57)&・・・が正しいはず。
発生する状況に持っていくのが大変だけど。
それから、いまさらだけど、
>>882 での H(7,0) は
>>884 で H(56) になってるけど H(0,7) でも同じだから H(7) で1文字減らせるね。
>>893 H(M)いじって</body>追加。
<body><script>P=[1,1,1,1,1,1,1,1,R=1];E=2;M="";Q=0;function H(M){return P[M
>>3 ]
*P[M&7]<0&(M%3?1:H(M-1))}function F(N){if(N==8){if(Q){R=-R;E=2;for(i=Q=0;i<8;){
P[i]||(P[i]=R);i++}if((H(1)&!(H(6)&H(12)))|(!(H(57)&H(60)&H(61)&H(62))&H(23)))M
="<p>NG"}}else if(P[N]==R&&E){Q+=N<3;P[N]=0;E--}else if(!P[N]){Q-=N<3;E++;P[N]=
R}P[8]=R;S()}function S(){G="";for(i=0;i<9;i++)G+="<p onClick=F("+i+") align="+
(P[i]<0?0:P[i]?"right":"center")+">"+(i-8?["豚飼","羊飼","猟師","豚","豚","羊",
"羊","狼"][i]:0<R?"<":">");document.body.innerHTML=G+M}S()</script></body>
↑に追加で</p>もalignの強引も改善できた 4行目 "<p>NG" > "NG" 5〜7行目 G+="<p onClick=F("+i+") align="+ (P[i]<0?0:P[i]?"right":"center")+">"+(i-8?["豚飼","羊飼","猟師","豚","豚","羊", "羊","狼"][i]:0<R?"<":">"); G+="<p onClick=F("+i+") align='"+(P [i]<0?"":P[i]?"right":"center")+"'>"+["豚飼","羊飼","猟師","豚","豚","羊","羊", "狼",0<R?"<":">"][i]+"</p>";
>>894 >>895 もしかして昔からこのスレ見てる古参の方ですか?
とりあえず、川渡りパズルの最終結果をまとめてみました。
<body><script>P=[1,1,1,1,1,1,1,1,R=1];E=2;M="";Q=0;function H(M){return P[M
>>3 ]
*P[M&7]<0&(M%3?1:H(M-1))}function F(N){if(N==8){if(Q){R=-R;E=2;for(i=Q=0;i<8;){
P[i]||(P[i]=R);i++}if((H(1)&!(H(6)&H(12)))|(!(H(57)&H(60)&H(61)&H(62))&H(23)))M
="NG"}}else if(P[N]==R&&E){Q+=N<3;P[N]=0;E--}else if(!P[N]){Q-=N<3;E++;P[N]=R}P
[8]=R;S()}function S(){G="";for(i=0;i<9;i++)G+="<p onClick=F("+i+") align='"+(P
[i]<0?0:P[i]?"right":"center")+"'>"+["豚飼","羊飼","猟師","豚","豚","羊","羊",
"狼",0<R?"<":">"][i]+"</p>";document.body.innerHTML=G+M}S()</script></body>
配列の中で?演算子使えるとは知らなかった。
関数H(M)の再帰による2個同時判定は脱帽。
>>896 知ってたw
というか、実はそれを元にしてるんだけど、
こっちのほうが一般的で全年齢対象かとおもって。
このほかにも川渡りはいろいろバリエーションがあるみたいだね。
898 :
デフォルトの名無しさん :05/03/19 12:02:37
「NullPointerExceptionたたき」です。
「ぬるぽ」を「ガッ」してください。テンキーの1〜9に対応してます。
<body onKeyDown=K=event.keyCode-97><script>function Y(){if(B>9)R=" END";else{if
(K>=0&K<9){if(P[K]>0){P[K]=-4;S++}else B++;K=9}if(!F--){F=9-(T<80?++T
>>4 :5);P[N
=Math.floor(Math.random()*9)]||(P[N]=1)}G="<table>";for(i=0;i<9;i++){X=P[N=[6,7
,8,3,4,5,0,1,2][i]];Z=X<8?8-X:X-8;G+=(i%3?"":"<tr>")+"<td width=180>"+(N+1)+
"柱|"+(X<0?"ガッ":"・∀・)<ぬるぽ".substr(Z,8-Z))+"</td>"+((i-2)%3?"":
"</tr>");if(X)X++;B+=X>16;P[N]=X%17}}document.body.innerHTML=G+"</table>BAD:"+B
+" HIT:"+S+R;setTimeout(Y,80)}F=25;T=S=B=0;K=9;R="";P=[];Y()</script></body>
IE6で動作確認。
過去作品に比べると、それほど密度は無いし、面白みの少ないコードですが、
遊べる物を作ってみました。
setTimeoutもしくは、2行目のFに入れる値をいじると難易度を変更できます。
※2個のキーを連続で素早く入力した場合に、
最初のキー入力が無視されることがありますが、これは仕様ですw
貴様らが楽しそうにJavaScriptなんぞやるからうらやましくてかじってみたら収集つかなくなったじゃねーか! 嘘ですごめんなさい。一晩中4目並べ作ってました。上の方にあるMMLは半音が出せなくて挫折しました。
>>899 嘘つきは泥棒の始まりということで
通 報 し ま す た
作ったけどなんか7行とかJavaScriptとか当初の目的からそれて長大なCのコードになったから晒さない。てか晒せない;-)
晒せ。幾許か縮めんの手伝ったる。
JavaScriptで書いていていつの間にかCになってるなんて なかなか可愛い奴だな。
4目っつうかN目に拡張して最低限アホな手は打たないようだらだらコーディングしてたら160行にもなってしまいますた。うpはムリポ。 本職ではないとは言えいい加減なデータ構造と適当に作ったアルゴリズムをすっきりさせればもっと縮むはず…てか半分くらいにはなると思うw >903 JavaScriptちょろっと勉強しようとしてみたんですけど、JavaScript特有の小技なんて当然できないから結局Cで作っても変わらないという結論に。 んで当初の目的を見失ってだらだらと。です。 皆期待しすぎだよ〜
160行を7行に縮められたら神だよ。 天才プログラマー(某団体が認定するものではなく。)だよ。 世界に誇れるよ。 でも、160->7をするぐらいなら最初からつくるか・・・
普通のCで書いたやつを七行にするのは、できる可能性は低くはないと思うけどな。 縮めて160行ならむりぽだけど…。
「川渡りパズル」さらに縮みました。 関数F()とS()をまとめただけです。こんなとこを見落としてるなんて・・・。 完全に盲点でした。誰も気づかなかったのかな? 5行目 S()}function S(){ を削除。 7行目 S() > F(8) 関数F()の引数は省略しても、なぜか動いたけど、 安全のため一応、8を入れておきます。
始めから3目に限定して、明らかな負け手を防ぐとかの機能を削ればできるのかも。 そっちで挑戦するか…。
>>909 JavaSDKのサンプルになかったっけ?
TickTackToeだっけ?
あ!あれは○×ゲームだったorz
912 :
デフォルトの名無しさん :2005/03/23(水) 11:05:31
川渡りの答えがわかんねー! 誰か分かる人いますか? 解答をだれかお願いします! この程度の問題が分からないようじゃ プログラマ失格なのか!? 俺失格!?
正解見れば解き方がわかるから 総当たりで解を求めるプログラムを書けば桶
>>912 ヒント
1.猟師と狼が渡る → 猟師が戻る
2.猟師と豚が渡る → 猟師と狼が戻る
3.?と?が渡る → ?が戻る
4.?と?が渡る → ?が戻る
5.?と?が渡る → ?が戻る
6.?と?が渡る → ?が戻る
7.?と?が渡る → ?と?が戻る
8.猟師と羊が渡る → 猟師が戻る
9.猟師と狼が渡る → クリア!!
>>912 ヒント
1.猟師と狼が渡る → 猟師が戻る
2.猟師と羊が渡る → 猟師と狼が戻る
3.?と?が渡る → ?が戻る
4.?と?が渡る → ?が戻る
5.?と?が渡る → ?が戻る
6.?と?が渡る → ?が戻る
7.?と?が渡る → ?と?が戻る
8.猟師と豚が渡る → 猟師が戻る
9.猟師と狼が渡る → クリア!!
C++のソースファイルからコメントを取り除いて出力するのを7行で
釣り?
920 :
デフォルトの名無しさん :2005/03/28(月) 12:49:10
>>869 double pow(double,double);char*l="cdefgabr",a,b,c,o=0,*q,r[]={-9,-7,-5,-4,-2,0,2
,0};unsigned d=4,g=88200,f,e,v=4410,p;x(){for(e=0;isdigit(y());e=e*10+a-48);b=a;
return e;}y(){b?a=b,b=0:(a=getchar());return a;}main(){for(a=getchar();a>0;y()){
(q=strchr(l,a))?f=(o>0?440<<o:440>>-o)*pow(2,(12.0+r[q-l]+((c=getchar())-43?((b=
c)<0):1))/12-1),(printf("%d,%d,%d,%d\n",q-l-7?1:2,f,g/(x()?e:d),v)):a-111?a-118?
a-116?a-108?a-62?a-60?a-10?0:puts("0,0,0,0"),v=4410,d=4,g=v*20:--o:++o:(d=x()):(
g=10584000/x()):(v=32767*x()/128):(o=x()-4);}puts("0,0,0,0");}
unsigned*b,d[9][9999][5],l[9],g,q,v;char*p,i,j,k;w(m){fwrite(&q,m,1,p);}t(){q+=
sin(.00014247586*b[1]*b[4])*b[3]*(b[4]<99?1.0*b[4]/99:(v=b[2]-b[4])<200?1.0*v/2\
00:1);}main(){for(i=9;i--;j=0){do{b=d[i][j];scanf("%d,%d,%d,%d",b,b+1,b+2,b+3);}
while(*d[i][j++]);}p=fopen("w","wb");fputs("RIFF0000WAVEfmt ",p);q=16;w(4);q=65\
537;w(4);q=44100;w(4);q*=2;w(4);q=1048578;w(4);fputs("data",p);w(4);for(i=1,q=0;
i;w(2),g++,q=0)for(i=0,j=9;j--;)if(k=*(b=d[j][l[j]])){i=1;k-1?0:t();b[2]-b[4]?b[
4]++:l[j]++;}fseek(p,4,0);q=36+g*2;w(4);fseek(p,40,0);q-=36;w(4);fclose(p);}
mml2oの出入力を標準出入力、o2wavの入力を標準入力にした。
あと、ホワイトノイズを消したり、正弦波の発音を滑らかにしたり。
コンパイル確認はgcc 3.3.3 (cygwin special)。オプション-lm必須。
mml2oが識別可能なものは
cdefgab(音階),r(休符),音長(1〜),+(半音上げる)
>(1オクターブ上げる),<(1オクターブ下げる),o(オクターブ指定)
t(テンポ指定),l(既定の音長指定),v(音量指定,0〜127)
mml2oは1行を1トラックとします。
7行でp2pてできるかにゃ
6面サイコロを2個使った確立ゲーム。 出た目の合計が7,11なら勝ち。2,3,12ならば負け。 それ以外の数の場合、同じ数になるまで振り続ける。途中で7が出ると負け。 面白くもなんともないな○| ̄|_ #include<stdio.h>#include<stdlib.h>#include<time.h>int dice1,dice2,point,point2,mode;int shake(int mode){ srand(time(NULL));dice1 = rand() % 6 + 1;srand(time(NULL));dice2 = rand() % 6 + 1;if(mode == 0) {point = dice1 + dice2;return;}if(mode == 1){point2 = dice1 + dice2;return;}}int main(void){shake(0); switch(point){case 7:case 11:printf("Point:[%d]\n",point);printf("Win!\n");;return;case 2:case 3: case 12:printf("Point:[%d]\n",point);printf("Lost.\n");return;default:printf("Point:[%d]\n",point); printf("Shakking...");break;}while(1){shake(1);if(point2 == point){printf("\nPoint:[%d]\n",point2); printf("Win!\n");break;}if(point2 == 7){printf("\nPoint:[%d]\n",point2);printf("Lost.\n");break;}}}
>>923 #include <stdio.h>
#include <stdlib.h>
#include <time.h>
char*o[]={"Win!","Lost.","Shaking..."},p,q;void t(r,i){printf("Point:[%d]\n%s\n"
,r,o[i]);}char s(){return rand()%6+rand()%6+2;}int main(){srand(time(0));if((p=s
())==7||p==11){t(p,0);return 0;}if(p==2||p==3||p==12){t(p,1);return 0;}t(p,2);f\
or(;;){if((q=s())==p){t(p,0);break;}if(q==7){t(q,1);break;}}return 1;}
圧縮してみた。
(gcc -Wall対策のやつを除いて)もっと縮められそうなんだが、どうも妙案が思いつかない。
<script type="text/javascript">var p,q; function o(m){document.getElementById("a").innerHTML+=m} function r(){return Math.floor(6*Math.random())}function s(){return r()+r()+2} function v(p){o("["+p+"]<br>")} function w(){o("You Win!<p>")}function l(){o("You Lost!<p>")} function u(p){v(q=s());(p-q?q-7?u:l:w)(q)}</script><div id=a><p></div> <button onclick="v(p=s()),(p-2||p-3||p-12?p-7||p-11?u:w:l)(p)">Shake</button>
926 :
925 :2005/03/31(木) 22:03:26
あう、なんか変だと思ったら、論理演算がはんたいだったw <script type="text/javascript">var p,q; function o(m){document.getElementById("a").innerHTML+=m} function r(){return Math.floor(6*Math.random())}function s(){return r()+r()+2} function v(p){o("["+p+"]<br>")} function w(){o("You Win!<p>")}function l(){o("You Lost!<p>")} function u(p){v(q=s());(p-q?q-7?u:l:w)(q)}</script><div id=a><p></div> <button onclick="v(p=s()),(p-2&&p-3&&p-12?p-7&&p-11?u:w:l)(p)">Shake</button>
<script type="text/javascript">var p,q,x,y,z,g=[,"Win","Lose"]; function o(m){document.getElementById("a").innerHTML+=m} function r(){return-Math.floor(-6*Math.random())} function s(){x=r();y=r();o(x+"+"+y+" ["+(z=x+y)+"]<br>");return z} function u(p,w){w?o("You "+g[w]+"!<p>"):u(q=s(),(p-q?q-7?0:2:1))} </script><div id=a><p></div> <button onclick="u(p=s(),p-2&&p-3&&p-12?p-7&&p-11?0:1:2)">Shake</button>
<script type="text/javascript"> var p,q,z,a=[,0,0],g=[,"Win","Lose"],F=Math.floor,R=Math.random; function o(m){document.getElementById("a").innerHTML+=m} function s(x,y){z=x=-F(-6*R()),z+=y=-F(-6*R()),o(x+"+"+y+" ["+z+"]<br>")} function u(p,w){w?++a[w]+o("You "+g[w]+"! ("+a[2]+"-"+a[1]+")<p>"): s()+u(q=z,p-q?q-7?0:2:1)}</script><div id=a><p></div> <button onclick="s()+u(p=z,p-2&&p-3&&p-12?p-7&&p-11?0:1:2)">Shake</button> 通算成績を表示 まだ文字数には余裕があるけど、これ以上ネタがふくらまないなあ。
<script type="text/javascript">var a=0,b=0,F=Math.floor,R=Math.random</script> <div id=a><p></div><button onclick="for(var w,p,y,z=0;!w;) document.getElementById('a').innerHTML+= (w=p?z-7?p-z?0:1:2:z-2&&z-3&&z-12?z-7&&z-11?0:1:2)? 'You '+(w-2?++a&&'Win':++b&&'Lost')+'! ('+b+'-'+a+')<p>': (p=z,y=-F(-6*R()),z=-F(-6*R()))+'+'+y+' ['+(z+=y)+']<br>'">Shake</button>
絶対もう誰かやってそうな気はするけど、じゃんけんマシン。 人間とコンピュータが対戦します。 コンピュータは最初弱いけど、途中から鬼のように強くなってきますw 正直、50点先取とか100点先取で勝てたらすごいと思う。 <div id=a><p></div><script type="text/javascript">var i,a=0,b=0,u=0;H=['グ','チ' ,'パ'],p=[];for(i=0;i<81;p[i++]=0);function o(m,i){document.getElementById('a'). innerHTML+=m}function t(h){k=p[u]>p[u+27]?p[u]>p[u+54]?2:1:p[u+27]>p[u+54]?0:1;p [u+=h*27]++;u=Math.floor(u/3);i=(3+h-k)%3,o(H[k]+' '+H[h]+'<br>'),i&&(((i-=2)?++ b:++a)+o((i?'<u>':'')+b+(i?'</u>-':'-<u>')+a+(i?'':'</u>')+'<p>'))}</script> <button onclick="t(0)">グ</button><button onclick="t(1)">チ</button> <button onclick="t(2)" >パ</button>
とりあえず
>>930 を短縮
<div id=a><p></div><script type="text/javascript">for(p=[i=a=b=u=0];i<81;p[i++]=
0)H=['グ ','チ ','パ '];function t(h){i=p[u]>p[u+1],i+=i?p[u]>p[u+2]:p[u+1]<p[u+
2];document.getElementById('a').innerHTML+=H[i]+H[h]+'<br>'+((i-=h)?(++i%3?b+
'-<u>'+ ++a+'</u>':'<u>'+ ++b+'</u>-'+a)+'<p>':'');++p[u+=h];u=u*3%27}</script>
<button onclick="t(0)">グ</button>
<button onclick="t(1)">チ</button>
<button onclick="t(2)">パ</button>
リーチをlizhiにして for(l = 1;l < MOKU;l++)if(S[l*(MOKU - 1)] == 0){M = l*(MOKU - 1);} を<=に修正。 #include<stdio.h> #define X 3 int S[X*X],P[X*X]; int row(int v){int p=0,h=X;while(--h>=0)p+=S[X*v+h];return p;} int col(int h){int p=0,v=X;while(--v>=0)p+=S[X*v+h];return p;} int dia(int u){int p=0,j=X,l,m;if(u)l=m=X-1;else l=0,m=X+1; while(--j>=0)p+=S[m*j+l];return p;} void checkwsub(int r){if(r==-X){show();puts("\nYou won!\n");exit(2);} if(r==X){show();puts("\nYou lose!\n");exit(2);}} void checkwin(){int v=0,r;for(;v<X;) checkwsub(row(v)),checkwsub(col(v)),checkwsub(dia(v++));} int lizsub(int i, int z){ if(row(i)==z)for(l=X;--l>=0;)if(!S[X*i+l])return X*i+l; if(col(i)==z)for(l=X;--l>=0;)if(!S[X*l+i])return X*l+i; if(dia(0)==z)for(l=X;--l>=0;)if(!S[X*l+l])return X*l+l; if(dia(1)==z)for(l=1;l<=X;l++)if(!S[X*l-l])return X*l-l;return -1;} int lizhi(int i){int l=lizsub(i,X-1);if(l==-1)l=lizsub(i,1-X); return l;} ロジック変えないと無理だろうと…
935 :
デフォルトの名無しさん :2005/05/04(水) 00:42:35
/** * x == 1 のとき足し算, * x == 2 のとき掛け算, * x == 3 のとき累乗計算をします. * ただし x, y, z は 0 より大きい整数です. 不適切な値の場合は -1 を返します. */ int superfunc(int x, int y, int z){ if(x < 1 || y < 1 || z < 1) return -1; if(x == 1) return y + z; if(z == 2) return superfunc(x-1, y, y); return superfunc(x-1, superfunc(x, y, z-1), y); }
javascript:(function(){var s=prompt("Input encoded string:")||"",b,l,n,v,c,r="",
i=0,d=document,e=d.createElement("script");while(n=s.charCodeAt(i++))v=(n&64)?
(n&31)+(n&32?25:-1):(n&16)?((n&12)==12)?0:(n&15)+52:(n&4)+62,l?(c=b<<8-l|v>>(l-=
2),r+=c?"%"+(c>15?"":0)+c.toString(16):""):l=6,b=v&(1<<l)-1;r&&(e.src=
"
http://nurucom-archives.hp.infoseek.co.jp/digital/ecl.js ",d.body.appendChild(e)
,function f(){typeof JCT8836=="string"?alert(UnescapeSJIS(r)):setTimeout(f,99)})
()})()
Base64デコーダブックマークレット。Shift_JISの文字列用。
Escape Codec Libraryを使用。
ttp://nurucom-archives.hp.infoseek.co.jp/digital/escape-codec-library.html UnescapeSJISを適当に変えればEUC-JPやISO-2022-JP用にもなるはず。
このライブラリを使えば文字コードの自動判別も可能らしいが
さすがにそれだとブックマークレットに収まりきらなさそう。
トリッキーの1の名前を久々に見たな
939 :
デフォルトの名無しさん :2005/07/25(月) 18:20:04
C言語で画像(バイナリ)ファイルをいじれるなんてこの板で知ったよ。
#include<stdio.h>
FILE*R,*S;int i=0,h,s,Y,X,t,p[3];void I(void){i=0,t=0;while(i<4){fputc(fgetc(R)
,S);fseek(R,-1,1);t|=fgetc(R)<<(i++*8);}}main(int c,char*v[]){R=fopen(v[1],"rb"
);S=fopen(v[2],"wb");for(;i<54;fputc(fgetc(R),S),i++);fseek(R,22,0);fseek(S,18,
0);I();h=t;fseek(R,18,0);I();s=t;fseek(R,54,0);fseek(S,54,0);i=h%4;for(X=s;X>0;
X--){for(Y=h;Y>0;Y--){fseek(R,54+(Y-1)*(s*3+i)+(X-1)*3,0);for(c=0;c<3;c++)fputc
(fgetc(R),S);}t=0;while(t++<i)fputc(0,S);}fclose(R);fclose(S);return 0;}
画像を反時計周りに90度回転させるんですが、
できる画像とかできない画像とかいろいろあって変です
だれか改良をお願いします
使い方
>>39 P.S.処理遅いです。
>939 #include<stdio.h> FILE*R,*S;int i,h,s,Y,X,t;void O(n){for(i=0;i<4;)fputc(n>>i++*8,S);}I(e){for( fseek(R,e,i=t=0);i<4;)t|=fgetc(R)<<i++*8;return t;}main(c,v)char**v;{R=fopen(v[ 1],"rb");for(S=fopen(v[2],"wb");i<54;fputc(fgetc(R),S),i++);fseek(S,18,0);O(h=I (22));O(s=I(18));fseek(S,2,0);O(54+(h*3+h%4)*s);fseek(R,54,0);fseek(S,54,0);for (X=0;X<s;X++){for(Y=h;Y--;)for(fseek(R,54+Y*(s*3+s%4)+X*3,c=0);c++<3;)fputc( fgetc(R),S);for(t=h&3;t--;)fputc(0,S);}fclose(R);fclose(S);return 0;}
941 :
939 :2005/07/26(火) 19:14:57
>940完璧じゃないですか。ありがとうございます。 この分だと時計回りもできそうですね。 本当は時計回りを作ったつもりなんですがなぜか反時計周りになってしまったorz そこで質問なんですが BMPは左下から右上に向かうように保存されてますよね ┌─┬─┬─┐ │7 │8 │9 │ ├─┼─┼─┤ │4 │5 │6 │ ├─┼─┼─┤ │1 │2 │3 │ └─┴─┴─┘ 下の順で保存すれば時計回りじゃないんですか? ┌─┬─┬─┐ │9 │6 │3 │ ├─┼─┼─┤ │8 │5 │2 │ ├─┼─┼─┤ │7 │4 │1 │ └─┴─┴─┘ 実際は反時計回りなんですけど・・・ 俺のプログラムがおかしかったんでしょうか? 説明変ですいません。回答おねがいします。
>>941 940じゃないけど、その図は俺には反時計回りに見える。
きっと942と943の頭がおかしいのでしょう
>940改 exec src.bmp dst.bmp [opt] [opt]無いと反時計回り、あれば時計回りに回転 #include<stdio.h> FILE*R,*S;int i,s,X=54,Y,f;void D(){putc(getc(R),S);}void O(n){for(i=5;--i;n>>= 8)putc(n,S);}I(e){for(fseek(R,e,i=s=0);i<4;s|=getc(R)<<i++*8);return s;}main(c, v)char**v;{f=c>3;R=fopen(v[1],"rb");for(S=fopen(v[2],"wb");X--;D());fseek(S,18, 0);O(c=I(22));O(I(18));for(fseek(S,54,0);++X<s;fwrite(&i,1,c&3,S))for(Y=c;Y--;D (),D(),D())fseek(R,54+(f?c+~Y:Y)*(s*3+s%4)+(f?s+~X:X)*3,0);s=ftell(S);fseek(S,2 ,0);O(s);fclose(R);fclose(S);return 0;}
>944改 exec opt src.bmp dst.bmp opt: L....左(反時計方向)回転 R....右(時計方向)回転 X....左右反転 Y....上下反転 #include<stdio.h> FILE*R,*S;int i,s,X,Y,f,x,y,z;void O(n){for(;i--;z||(n>>=8))putc(z?getc(R):n,S) ;}I(e){for(fseek(R,e,i=s=0);i<4;s|=getc(R)<<i++*8);return s;}main(c,v)char**v;{ Y=*v[z=1]-82;R=fopen(v[2],"rb");S=fopen(v[3],"wb");O(i=54);fseek(S,18,z=0);f=Y- 7?Y-6?!Y:2:3;O(c=I(Y=f<2?22:18));O(I(Y^4));for(fseek(S,54,0);i=4,X++<s;i=c&3,O( 0))for(Y=c;z=Y--;O(i=3))x=X-1,y=f&1?x=s-X,c+~Y:Y,fseek(R,54+(f<2?y*(s*3+s%4)+x* 3:x*(c*3+c%4)+y*3),0);s=ftell(S);fseek(S,2,0);O(s);fclose(R);return fclose(S);}
行数リダクション早すぎw
>945の引数をチェックし、処理時には入出力ファイル名を表示するようにした #include<stdio.h> FILE*R,*S;int i,s,t,X,Y,f,x,y;I(e){if(i<0)for(fseek(R,e,t=0);++i<3+!s;e=t|=getc (R)<<i*8);for(;i--;e>>=8)putc(f?e:getc(R),S);return t;}main(c,v)char**v;{if(S=c >3&&(R=fopen(v[2],"rb"))?fopen(v[3],"wb"):0){puts(v[2]);puts(v[3]);fseek(S,18,I (i=54));c=*v[f=1]-82;c=c-6U>1?!c:c;f=I(Y=22^c&4);s=X=I(Y^4);for(fseek(S,0,2);X --;i=f&3,I(0))for(Y=f;t=Y--;I(54+x*(t*3+t%4)+y*3))x=s+~X,t=y=c&1?x=X,f-t:Y,t=c< 2?y=x,x=t,s:f;s=ftell(S);i=4;fseek(S,2,0);I(s);fclose(S);}return!R||fclose(R);}
BMP縮小 exec src.bmp dst.bmp #include<stdio.h> FILE*R,*S;int i,X,Y,f,x,y;I(e){for(i=e=fseek(R,e,0);i<1+3*!Y;e|=getc(R)<<i++*8) ;return e;}void O(n){for(;i--;n>>=8)putc(f?n:getc(R),S);}V(u){return I(54+(y*2+ u/2)*(X*3+X%4)+u%2*3+x*2-x%3);}main(c,v)char**v;{if(S=c>2&&(R=fopen(v[1],"rb")) ?fopen(v[2],"wb"):0){O(i=54);fseek(S,f=18,0);O((X=I(f))/2);O((Y=I(22))/2);for( fseek(S,0,2);y<Y/2;i=x/3&3,O(x=!++y))for(;x<X/2*3;x++)O((V(0)+V(1)+V(2)+V(3)+2) /4);i=4;c=ftell(S);fseek(S,2,0);O(c);fclose(S);}return!R||fclose(R);}
>>864-865 Domain Information: [ドメイン情報]
a. [ドメイン名] PCCOL-TDC.CO.JP
e. [そしきめい]
f. [組織名] 株式会社 トヤマデータセンター
g. [Organization] TOYAMA DATA CENTER CO.
k. [組織種別] 株式会社
l. [Organization Type] Company
m. [登録担当者] HS342JP
n. [技術連絡担当者] HS342JP
p. [ネームサーバ] ns-kg021.ocn.ad.jp
p. [ネームサーバ] ns.pccol-tdc.co.jp
[状態] Connected (2005/10/31)
[登録年月日] 1996/10/23
[接続年月日] 1996/11/19
[最終更新] 2004/11/01 01:07:58 (JST)
$x = 63; for (my $i = 0; $i < $x; $i++) { $a[$i]= "0"; } for (my $i = 0; $i < $x; $i++) { $c[$i]= "0"; } $a[32] = 1; $a[33] = 2; for (my $j = 0; $j < 100; $j++) { for (my $k = 0; $k < $x+2; $k++) { $c[$j][$k] = $a[$k-1]+$a[$k+1]; } for (my $i = 0; $i < $x; $i++) { $u = $c[$j][$i]; $u =~ s/0/ /g; print "$u"; } for (my $k = 0; $k < $x; $k++) { $a[$k] = ($c[$j][$k-1]+$c[$j][$k+1]) % 3; } print "\n";}
951 :
デフォルトの名無しさん :2005/11/17(木) 02:20:17
// 六行FFT #include <complex> #include <valarray> using namespace std;typedef complex<double>c;typedef valarray<c>a;a f(a&s){int n=s.size(),h=n/2;if(n>1){a x(0.,h),y(0.,h);for(int k=0;k<h;++k){x[k]=s[k]+s[k+h ];y[k]=(s[k]-s[k+h])*exp(c(0,-2*M_PI*k/n));}a d(0.,n);d[slice(0,h,2)]=f(x);d[ slice(1,h,2)]=f(y);return d;}else return s;}
T_OOWW3=XXWXPY50PPZ5jQP_-ys,A1Ea5y852cP4Z4PP-pV40P-BOu com2txt/Nide5UqPWX,wP500-MQP4UP-wx4XP5rjP5Z2P-jC,JP= 5O4,APRX5BZP-pJPPQX42P-r=PRX55aP59DHHP-99,UP-lt,mP-uq= P5_VHP-4A40PTZ,TPP_RX__np4PmDkMH3QHnr44sREs46dl4XoXc.X l4CO4L566TpJyAPCsigPnl_5rkbZ4OPEu9Nl5Sxuu5jptHBraOCmvB Jp8WGPClErjL8BjmEjz44Dsr2tapxowl_5rkhCi553Yop4AAa6Np5N dclNNv6cC5wLhcmnNp98443PYsRDDPZjxNerkb50tQsORsRFq5sO48 j9hgo7s46fe4E1PCa6KvKgN59i.4boJb5J4OBQtBkQ4sREsMucia.A FkXoHkHkPL573T6LfkCcBTUIt4zkkBCO4kHoHkONjb88stkQ4Aa5MH UiYCa7rUsO5xmi3mC9MHPXNAq6z44FK8k7.4edkrhCABONdS9.nYZn x0FVkL8Bjov4BmE3MHWHeG.0tR2taC.xGG9mE4hqOAHqOBHqOCKi.4 k.4R8tamDFzX4KMH3.4SLtas444.4444Ep444Al4444UDUMTCt4KRu EStXmKRP84P1MVe244P4444P44PC55pHGKPC44444cLbNvKhP4KPIs RFx4DsMHW1i3cLrHRPGZPAPQP44S4DA4J62otLGB4C.448ABpDEC44 BAph4DA44444P4444H42D4D444A44444B444DAp24A42H4B44444BA pX44.2E4A444A4GA44P444PApX4D42K4F4P4448AuP4D444D4234By tYWat4444x.2D4A44444B44444.2N4B444F4GH4CFD42F4JpPApX4z rYMZVyi3WUmHDuATtt4HB4mKRt.RFUl3F8.Uv7r3FPaHBtmKR4.4Fh 4ZAHPP4AhGqA44Fh4ApGhApDG4444Z.ChA.444O8eBAA44O8e4AA44 LsLiA4GB.BzD444BA444IpPAph4uA44444PAqX4qa4GA.BlD42F4It ASVUs2vEgYTIo0DD41WMe2cLrKfQl3444.4AE0FetTGIoXvUs2pAkY WInYVpsLbyd3FpG5p4GHP4:
7行じゃないしCOM2TXTですよね
いちおうメッセージボックスが出る、はず。 comから32bit exeを展開するだけで大変なので誰か7行(532byte)に削ってくれ
955 :
デフォルトの名無しさん :2006/01/26(木) 13:24:50
>>954 (´・ω・`)むりぽ
1025byte
T_OOWW3=XXWXPY50PPZ5jQP_-ys,A1Ea5y852cP4Z4PP-pV40P-BOu
com2txt/Nide5UqPWX,wP500-MQP4UP-wx4XP5rjP5Z2P-jC,JP=
5O4,APRX5BZP-pJPPQX42P-r=PRX55aP59DHHP-99,UP-lt,mP-uq=
P5_VHP-4A40PTZ,TPP_RX__np4PmDkMH3QHnr44sREs46dl4XoXc.X
l4CO4L566TpJyAPCsigPnl_5rkbZ4OPEu9Nl5Sxuu5jptHBraOCmvB
Jp8WGPClErjL8BjmEjz44Dsr2tapxowl_5rkhCi553Yop4AAa6Np5N
dclNNv6cC5wLhcmnNp98443PYsRDDPZjxNerkb50tQsORsRFq5sO48
j9hgo7s46fe4E1PCa6KvKgN59i.4boJb5J4OBQtBkQ4sREsMucia.A
FkXoHkHkPL573T6LfkCcBTUIt4zkkBJrKrCO4dONjb88stkQ4Aa5MH
UiYCa7rUsO5xmi3mC9MHPXNAq6z44FK8k7.4edkrhCABONdS9.nYZn
x0FVkL8Bjov4BmE3MHWHeG.0tR2taC.xGG9mE4hqOAHqOBHqOCKi.4
k.4R8tamDFzX4KMH3.4SLtas444.4444Ep444Al4444UDUMTCt4KRu
EStXmKRSU441MV.AMZVyi3WUmHDuATtt4HB4mKRt.RFUl3F8.Uv7r3
FPaHBtmKR4.4ItASVUs2vEgYTIo0DD44DlG4y4G4wUsYWHsLbyd3Fp
4.4AE0FetTGIoXvUs2pAkYWInYVpsLbyd3Fp4Z.Ah4pA44F.P4D44Z
.ChCP2CZ.ChApS5IS.4P4C5IXp4P44iApMPQP44S4DAApw.448ABpD
GCfXGAA4G4r4GAD444A4G4pH444PGApPGBB4G4pHGA.HGEq4GCA444
CpGTs.G4x.GJA4G4pHG4pHGCb444F4GTDPPApi4ApNLApL8D42JVP2
CN42WRp2GJP_5A9p:
>>955 うちのノートン大先生が激怒する・・・
セクション以外のところに読みにいくとウイルス扱いされてるみたい。
圧縮するのはやっぱり0x00決めうちのほうが小さくなるのか。
PEヘッダ圧縮できねーヽ(`Д´)ノウワァァン
バイナリなら可能なんだけどねえ
七行では無いし、見ても面白くないし
定期上げ
960 :
955 :2006/03/01(水) 17:42:07
(´・ω・`)XPじゃないと多分むりぽ 七行に収まったけど、見ても面白くないです。 :?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:~ :~._&^:Af-`l/m==3#e^@f--PjaeE!`!Jm=v[[<.r6eL?X!Bm]!I[%.&6&&I![6Pdd#,!m!^ :H7f-Mivl!Icj^6f--@@A[arm?"?]$sjX_1C.[_JC8[A^>Df-Pi@_!;f$-@^7Af-c;;@<`%. :!7!=v=<=p@"cac&!w.+-!7!+.N&O&PM+Q'X7M<9MM;!!6Ql!&W!$!Mc!P!O`,N7MY&M!MC" :O"Ow,M!Nv!Q(&FP)M/tQ=+MV"Q/&wM!M!wQ&,QNWV!;iCHHBRDC8G<J7Qs2IHCH=32Qu*
961 :
デフォルトの名無しさん :2006/03/01(水) 21:00:58
>>960 うちの2000では通らなかったので勝手に修正してみるテスト
user32->user32.dll
ローダのテンポラリ領域をクリアするようにしてみた
:?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:~
:~._&^:?f-3b<Q6lmZPi_,E!sZ3#e^@f)-HB=H=PjQ:4L!PBq"1LB!Q(!Jm=v[[<.r6eL?X!
:Bm]!I[%.&6&&I![6Pdd#,!m!^K7f-5hsIk^f6f-@.@AQ6"rm??$]$sXO_1C[E_JC[cA^>f3
:-Pi_%!;f-)@^7f%-cL!c;@<`_%!7!w==<=Hp"ca@c!w.B+!7!B+N&Oj&M+QQ'7M<09M;!E!
:Ql!3&!$!pM!P!SO,N7QM&M!JM"O"ZO,M!wN!Q(K&P)MY/Q=+lM"Q/Z&M!Mw!Q&,kQLQ-QV!
:;CMHHBD[C8GJt7QLQaHIHC)H321ACFFQZLQI*
志村〜8行8行
_| ̄|○ :?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:~ :~._&^:Af-`l"m3e^-@f-=J=PjaHE!`!MmPu=2v[<.)r6L?SO"]!"I%.&I!E[Pdd\"!^7 :Af-Mvjl!Ik9^6f-D@@Aa"rm??$]$sXO_1C[E_JC[cA^>f3-Pi_%!;f-)@^7f(-c;@k<`%!G :7!==s<=p"%caMwJ.+!7gN&O&PM+Q'X7M<9MM;!!6Ql!&W!$!Mc!P!O`,N7MY&M!MC"O"Ow, :M!Nv!Q(&FP)M/tQ=+MV"Q/&wM!M!wQ&,QNWV!;iCHHBRDC8G<J7Qs2IHCH:321C(FFQt*
:?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:~ :~._&^:Af-`l"m3e^-@f-=J=PjaHE!`!MmPu=2v[<.)r6L?SO"]!"I%.&I!E[Pdd\"!^7 :Af-Mvjl!Ik9^6f-D@@Aa"rm??$]$sXO_1C[E_JC[cA^>f3-Pi_%!;f-)@^7f(-c;@k<`%!G :7!==s<=p"%caMwJ.+!7gN&O&PM+Q'X7M<9MM;!!6Ql!&W!$!Mc!P!O`,N7MY&M!MC"O"Ow, 4行目のが化けてるよ
(´・ω・)
JavaScript でライン描画 もっといろいろさせたかったけどあまり縮まなかったので、サンプル2点だけ IE6だと見えるが、Mozillaだと見えないみたい <body><script>function Y(x,y,w,z){c=(C=x-w)*C>(C=y-z)*C;for(a=s=c?x>w?(e=x,t=z, u=y,w):(e=w,t=y,u=z,x):y>z?(e=y,t=w,u=x,z):(e=z,t=x,u=w,y);b=(u-t)*(a-s)/(e-s)+ t,a<=e;a+=2)document.write("<dd style='background:red;position:absolute;top:"+( c?b:a)+";left:"+(c?a:b)+";overflow:hidden;width:2;height=2'>")}G=P=Q=r=99,R=66, S=33,A=Math.PI/20;F=P+r;for(i=41;i--;Y(F,G,F=P+j*Math.cos(i*A),G=Q+j*Math.sin(i *A)))j=[r,S,R,S][i%4];F=G=P=Q=220;for(i=1;i<41;i++)Y(F,G,F=P+(j=[0,S,R,S][k=i%4 ])*Math.cos((k+=i)*A),G=Q+j*Math.sin(k*A));</script>
>>968 ジャバスクってこんなことできんのね・・って見てたらブラウザ固まった…orz
新手のブラクラですな・・
>>968 4行目、「height=2」を「height:2」に変えたらFirefox 1.5でも見れた。
( ^ω^)何か押すと終るお フケタタイ カ サョo3レS]サ」J3レセ -ク$$Pクヘハ3チP_WWWWWWWWWWWクYJ3テPUSVRRWクm Pクーフ3ナPUSp !VRRWクm Pクワフ3ナPクョホ3ナPUSVRRWク!!PクンンPPクゥゥPPPクブPRRク /PRRUSVRRWクA}3チPクS13チPp !クO)Pク6a3チ3ツPクo」3ツPクタa3チ3ツPUSUSVWーA3チエRPクa<3チ3ツPーA3チエ^PUSVRRーハ3チエ Pp !WWWWWWWTZエノ3チヘ!エw5フpヘ!ヘ フ
>>973 何でこんな事ができるのかさっぱりわからん
>>968 <body><script>function Y(x,y,w,z){c=(C=x-w)*C>(C=y-(t=u=e=z))*C;for(a=s=c?x>w?(
e=x,u=y,w):(e=w,t=y,x):y>z?(e=y,t=w,u=x,z):(t=x,u=w,y);b=(u-t)*(a-s)/(e-s)+t,a
<=e;a+=2)document.write("<p style='background:red;position:absolute;top:"+(c?b:
a)+";left:"+(c?a:b)+";overflow:hidden;width:2;height:2'>")}G=P=Q=r=99,R=66,S=33
,A=(M=Math).PI/20;F=P+r;for(i=41;i--;Y(F,G,F=P+j*M.cos(i*A),G=Q+j*M.sin(i*A)))j
=[r,S,R,S][i%4];F=G=P=Q=220;for(i=42;i--;)Y(F,G,F=P+(j=[0,S,R,S][k=i%4])*M.cos(
(k+=i)*A),G=Q+j*M.sin(k*A));</script>
2行目が1文字少ない
>>973 すげー。ハンドアセンブル?
>>976 4行をテキストエディタとかにコピーして、拡張子をcomとして保存して実行。
テキストだけどバイナリとして実行できるデータの並びになってる。
すげー
おお、実行ファイルがテキストってことに感動した
>>978 ただ単に作った実行形式ファイルの拡張子を.txtにしてコピペしただけじゃね?
>>982 お前頭いいな!
ついでに次スレも立てといてくれ!
>>986 COM2TXTはヘッダ部分が"T_OOWW"になるし、
7行に収まらないことが多いよ
それ以外の奴はハンドアセンブルで書いてると思うよ
さっきからCOMCOMうるせー! exeでもいいじゃんか
>>987 ":?7%00%DDPY"の系統のやつもCOM2TXT
>>973 だけが別系統っす。
COM2TXTのやつは、スタックに積んだデータが自己解凍ルーチンになっていて
テキスト変換した実行可能バイナリが展開されるんだけど、
>>973 のは、そのままでスタックにAAを積んでいって、画面表示するバイナリになってる。
インデックス作らないとなのね・・・
('A`)
BMPモザイクフィルタ >6 箱入り娘 >10 倉庫番 >34-35,37,852 BMPグレースケール化 >38-43,45-56,58-60,62,63-76,78-80,197,198,200,201 順列の出力 >61 telnet >85-87 bmpgen >88,89 コードブレイカー >90 MMLプレイヤー >93-100,105,109,118,119,124 おみくじ >101,(ry,>129,132-136,138,146 MD5 >116,121,123,131,176,180 /*動作説明汁*/ >122 (マウスカーソルランダム・高速移動?) RPN風電卓 >137,141 一人麻雀 >145,186 XORフィルタ >169-171,(ry,>178 MD5,SHA1 >183,187-191,194-196 表計算 >204-207,209-212 1スレ372のオセロ >230- 素数 >269-276,294 最長連鎖探索 >288 NQueen >289 変数機能付きRPN電卓 >306-310,312 GCD >334-342 π >344,347-349,351-(ry,>832-(ry,>861 ナンプレ >377 メッセンジャ >387-389 MIDIプレーヤ >390-394,396 Γ関数 >400-402 4コの数字で10 >403,410-416,432 迷路 >417-421,423,424,427,430,566 hit&blow >492-496,499-502,542
sage >515 掲示板 >543 ブロック崩し >551,552,558,559,573,582-589,683,684 素数 >553-557,744,758,759 Brainfuck >560,844 HexDump.pm >561,562 /*何?*/ >564-565 ローマ字かな変換 >591-601,603-605,619 XMLパーサ >609,610,613,626 オンドゥル語 >627 /*動作説明汁*/ >630-632 (>633) インベーダもどき >651 画像加工 >655,668 ソリティア >672 タイピング >678-682 bejeweled >712 AA >719 FF風ダメージ表示 >722-723 画像ビュアー >732,734 プロパティビュア >735,736 爆発 (再掲) >746 電卓 >748-751,814 RangeCoder >755,757 2ch trip >765,766 Cソース情報 >769-772 トーンジェネ >781,790 /*何?*/ >845 数当て >858
おしどりパズル >870 C indent >871 文字テーブル >878 川渡りパズル >882-897,908,912-917 ぬるぽ叩き >898 確率ゲーム >923-929 じゃんけん >930,932 Base64デコーダ >937 BMP回転 >939-948 BMP縮小 >948 シェルピンスキー? >950 FFT >951 メッセージボックス >960-966 線描画 >968-972,977 ブーン >973-975,978,989 ちょっち長いよ MID2WAV >503 対戦マインスイーパ >509 動詞変換 >628,629 将棋 >634-650,(ry,>667,669,673 MML2OBJ+OBJ2WAV >867-869,920 BMP2HTML >874 ○×ゲーム >933-934
乙ww凄いな
うめ
↓ラスト
1000 ズサ━━━━⊂(゚Д゚⊂⌒`つ≡≡≡━━━━!!
1001 :
1001 :
Over 1000 Thread このスレッドは1000を超えました。 もう書けないので、新しいスレッドを立ててくださいです。。。