7行テトリス

・スマホ向けフリック入力タイピングはこちら
※アプリのインストールが必要です。
・PC向けタイピングはこちら
タブレット+BlueToothキーボードのプレイもこちらがオススメです!
Webアプリでプレイ
投稿者投稿者もちもちいいね4お気に入り登録1
プレイ回数2967難易度(4.3) 532打 長文
ブラウザで動くテトリスのコーディングです。
「7行プログラミング」と呼ばれる可読性をガン無視して、いかに簡潔にコーディングするかで遊ぶ文化があります(コードゴルフ?)。その中でも最も有名なテトリスのプログラムになります。(プログラムの作者は私ではありません。多くの有志の方々によって改良を重ねてきたそうです)

ソース全文をテキストエディタにコピペして、拡張子を.htmlにすれば、実際にテトリスで遊ぶことも可能です。

以下「たった7行でテトリスを実装「七行プログラミング」とは(https://qiita.com/ryuichi1208/items/f9e6ac2b99bbe4fc82d3)」から引用

<body id=D onKeyDown=K=event.keyCode-38><script>Z=X=[B=A=12];function Y(){for(C
=[q=c=i=4];f=i--*K;c-=!Z[h+(K+6?p+K:C[i]=p*A-(p/9|0)*145)])p=B[i];for(c?0:K+6?h
+=K:t?B=C:0;i=K=q--;f+=Z[A+p])k=X[p=h+B[q]]=1;if(e=!e)if(h+=A,f|B)for(Z=X,X=[l=
228],B=[[-7,-20,6,h=17,-9,3,3][t=++t%7]-4,0,1,t-6?-A:2];l--;)for(l%A?l-=l%A*!Z[
l]:(P+=k++,c=l+=A);--c>A;)Z[c]=Z[c-A];for(S="";i<240;S+=X[i]|(X[i]=Z[i]|=++i%A<
2|i>228)?i%A?"■":"■<br>":"_");D.innerHTML=S+P;Z[5]||setTimeout(Y,99-P)}Y(h=e
=K=t=P=0)</script>


※自動でふりがなを振ったため、現在、大文字で表示されている文字も小文字で入力してミスとみなされない状態になっていますが、いずれそのあたりも整えたいと考えております。
順位 名前 スコア 称号 打鍵/秒 正誤率 時間(秒) 打鍵数 ミス 問題 日付
1 もちもち 598 G 0.7 84.7% 728.2 532 96 25 2025/12/23

関連タイピング

問題文

ふりがな非表示 ふりがな表示
(<body id=d onkeydown=) <body id=D onKeyDown= (k=event.keycode-38>) K=event.keyCode-38> (<script>) <script> (z=x=[b=a=12];) Z=X=[B=A=12]; (function y(){for(c=[q=c=i=4];) function Y(){for(C=[q=c=i=4]; (f=i--*k;c-=!z) f=i--*K;c-=!Z ([h+(k+6?p+k:c[i]=p*a-(p/9|0)*145)])) [h+(K+6?p+K:C[i]=p*A-(p/9|0)*145)]) (p=b[i];for(c?0:k+6?h+=k:t?b=c:0;) p=B[i];for(c?0:K+6?h+=K:t?B=C:0; (k=i=k=q--;) k=i=K=q--; (f+=z[a+p])x[p=h+b[q]]=t+1;) f+=Z[A+p])X[p=h+B[q]]=t+1;
(if(e=!e)if(h+=a,f|b)) if(e=!e)if(h+=A,f|B) (for(z=x,x=[l=228],) for(Z=X,X=[l=228], (b=[[-7,-20,6,h=17,-9,3,3]) B=[[-7,-20,6,h=17,-9,3,3] ([t=++t%7]-4,0,1,t-6?-a:2];l--;)) [t=++t%7]-4,0,1,t-6?-A:2];l--;) (for(l%a?l-=l%a*!z[l]) for(l%A?l-=l%A*!Z[l] (:(p+=++k,c=l+=a);--c>a;)) :(P+=++k,c=l+=A);--c>A;) (z[c]=z[c-a];) Z[c]=Z[c-A]; (for(s=”<b>”;) for(S="<b>"; (i<240;s+=) i<240;S+= ((c=x[i]|(x[i]=z[i]|=++i%a<2|i>228))) (c=X[i]|(X[i]=Z[i]|=++i%A<2|i>228))
など
(?”<b style=color:#”+142*c+”>しかく”:”_”)) ?"<b style=color:#"+142*c+">四角":"_") (i%a?0:s+=”<br>”;) i%A?0:S+="<br>"; (d.innerhtml=s+p;) D.innerHTML=S+P; (z[5]||settimeout(y,99-p)}) Z[5]||setTimeout(Y,99-P)} (y(h=e=k=t=p=0)</script>) Y(h=e=K=t=P=0)</script>
問題文を全て表示 一部のみ表示 誤字・脱字等の報告

oguraのお気に入り

もちもちのタイピング

オススメの新着タイピング

タイピング練習講座 ローマ字入力表 アプリケーションの使い方 よくある質問

人気ランキング

注目キーワード