プチコンまとめWiki (初代/mkII)

Toukou/計算トライアタック 圧縮版 の変更点


#title(投稿プログラム : 計算トライアタック 圧縮版)
#contents
/////////////////////////////////
// 適当にタグをつけることができます。半角のコンマ区切りで複数つけられます。
// タグをつけると、同じタグが付いたページを検索することができます。

2012年06月15日投稿
/ 投稿者 : わぁぃ@
/ &tag(投稿プログラム,ゲーム,1画面プログラム,計算,QRコード,mkII専用);

* 概要 [#x5f7ef17]
ひたすら計算を解くゲームです。~
普通に組んでも一画面に収まりますが、あえて圧縮しました。~

* スクリーンショット・動画 [#pe742dd8]
動作しているところを撮影した写真や動画があれば貼り付けてください。~
|&ref(PRG_KAISANスクリーンショット.png);|
[[Toukou/簡易スクリーンショットカメラ]]で撮影して、[[SDカードGRPビューワ:http://www20.atpages.jp/daimeimitei/ptc2sdgrpv/]]で変換しました。
* QR コード [#QR]
プチコンmkII 向けのQRコードです。~
|~PRG:KEISAN|
|&ref(PRG_KEISAN_L1_qr0.png,,200%);|

* プログラムリスト [#c9b9f402]
#basic{{
CLS:VISIBLE 1,1,0,0,0,0
PNLTYPE”KYA”:BGMPLAY 3
E=0:PRINT”ケイサントライアタック
@A
E=E+1
?E;”モンメ”:A=RND(100)+1
B=RND(120)−59
?A;”+”*(B>=0);B;”=”;:INPUT C
W=C==A+B:BEEP 4+W*3
IF W THEN @A
}}

* CHECKER FLAG (ひとことコメント) [#wc030545]
- この作品に対するコメントがあれば一言どうぞ。(マナーを守ろう。作品にほとんど関係のない質問や雑談は[[掲示板>Board]]などでお願いします。)
#region(6月までの書き込み)
- ''名無しさん'' : 解答に時間制限があったほうが良さそう (&new{2012/06/15 (金) 19:59:41};)
- ''わぁぃ@'' : &basic{INPUT};の特性上、代用&basic{INPUT};を組まないとだめですね。(実は代用&basic{INPUT};はもうできてる) (&new{2012/06/15 (金) 20:03:49};)
- ''名無しさん'' : さらに圧縮してみた (&new{2012/06/15 (金) 22:21:27};)
#basic{{
E=0?”ケイサントライアタック
@A
E=E+1
?E”モンメ”:A=RND(100)+1
B=RND(120)−59
?A”+”*(B>=0);B”=”;:INPUT C
W=C==A+B:BEEP 4+W*3
IF W THEN @A
}}
#basic{{
E=0?”ケイサントライアタック”:FOR I=0TO W:E=E+1?E”モンメ”:A=RND(100)+1B=RND(120)−59?A”+”*(B>=0)B”=”;:INPUT C
W=C==A+B:BEEP 4+W*3I=0NEXT
}}
- ''Lv100'' : ↑CLEARとかしないとダメなのでは? (&new{2012/06/15 (金) 22:43:48};)
- ''わぁぃ@'' : ↑&basic{DIM};がなければ0代入でOKです。 (&new{2012/06/15 (金) 22:56:33};)
- ''わぁぃ@'' :↑*3 ああそうだ &basic{FOR};があったと 思い出す(何気に川柳になってるw) (&new{2012/06/15 (金) 23:00:14};)
- ''名無しさん'' : このプログラムをどれだけ圧縮できるかを競うゲームですか?w (&new{2012/06/15 (金) 23:58:54};)
- '''''イタボールド''''' : ↑おいおい (&new{2012/06/16 (土) 10:31:06};)
- ''わぁぃ@'' : ↑↑それいいね!「圧縮トライアタック」みたいな?ww (&new{2012/06/16 (土) 12:22:41};)
- ''名無しさん'' : 「ケイサントライアタック」を表示しなければ1行に収まりそう (&new{2012/06/16 (土) 12:30:22};)
- ''ウイング'' : なんかすごいことになっとる・・・。 (&new{2012/06/16 (土) 12:45:26};)
- ''名無しさん'' : 1行に収まった (&new{2012/06/16 (土) 16:38:54};)
#basic{{
E=0FOR I=0TO W:E=E+1A=RND(100)+1B=RND(120)−59?E”モンメ”A”+”*(B>=0)B”=”;:INPUT C:W=C==A+B:BEEP 4I=0NEXT
}}
#basic{{
FOR I=0TO C==A+B:E=E+1A=RND(100)+1B=RND(120)−59?E”モンメ”A”+”*(B>=0)B”=”:INPUT C:I=0NEXT
}}
- ''名無しさん'' : ↑最初にコンソールで&basic{E=0}; (&new{2012/06/16 (土) 17:15:40};)
- ''名無しさん'' : をしないといけない (&new{2012/06/16 (土) 17:15:52};)
- ''名無しさん'' : 。 (&new{2012/06/16 (土) 17:16:00};)
- ''名無しさん'' : さらに圧縮 (&new{2012/06/16 (土) 19:29:50};)
#basic{{
FOR E=1TO E+(C==A+B)A=RND(100)+1B=RND(120)−59?E”モンメ”A”+”*(B>=0)B”=”:INPUT C:NEXT
}}
- ''Petit'' : 一体このプログラムの圧縮大会はいつまで続くんだ... (&new{2012/06/16 (土) 22:23:08};)
- ''名無しさん'' : 参加したければすればいいんだぜ? (&new{2012/06/16 (土) 23:04:53};)
- ''燻製'' : これ以上圧縮は不可能だろww (&new{2012/06/16 (土) 23:30:42};)
- ''麿'' : ↑予めコンソールで変数に代入すればもう少しいけそう (&new{2012/06/17 (日) 00:18:55};)
#basic{{
FOR E=1TO E+(C==A+B)A=RND(F)+1B=RND(G)−H?E”モンメ”A”+”*(B>=0)B”=”:INPUT C:NEXT
}}
- ''麿'' : ↑コンソールで、&basic{E=0:F=100:G=120:H=59};してから&basic{RUN}; (&new{2012/06/17 (日) 00:22:51};)
- ''麿'' : 表示を変えるのも手かも。&basic{=};の省略、&basic{Nモンメ};を&basic{N)};や&basic{N:};に差し替えなど。連投すみません (&new{2012/06/17 (日) 00:37:30};)
- ''名無しさん'' : >コンソールで変数代入 それはちょっと行きすぎだw (&new{2012/06/17 (日) 05:34:13};)
- ''バイカウントメルビル'' : 6文字少なくした(コンソール代入ではない) (&new{2012/06/17 (日) 08:24:27};)
#basic{{
FOR E=1TO E+(C==A+B)A=RND(99)B=RND(99)−50?E”)”A”+”*(B>=0)B”=”:INPUT C:NEXT
}}
- ''バイカウントメルビル'' : たぶん足し算だけにしちゃえばかなり・・・(え (&new{2012/06/17 (日) 08:27:47};)
- ''麿'' : &basic{A=RND(9)};とかにしちゃえば3文字短・・・(行き過ぎ (&new{2012/06/17 (日) 10:40:38};)
- ''燻製'' : もはや見ていてどんなプログラムかわかんなくなっていく・・・ (&new{2012/06/17 (日) 10:51:33};)
- ''燻製'' : もはや見ていてどんなプログラムかわかんなくなっていく・・・ (&new{2012/06/17 (日) 10:56:05};)
- ''名無しさん'' : 問題の表示を無くして答えを予想して入力すればさらに短くなるけどそれだともはやただの数当てゲームだなw (&new{2012/06/17 (日) 11:12:14};)
- ''マリオ師匠'' : 超圧縮版(?) (&new{2012/06/17 (日) 11:48:43};)
#basic{{
INPUT C:IF C==2 THEN ?"せいかい" ELSE ?"ふせいかい"
}}
- ''燻製'' : ↑最初の変数代入の意味なくね? (&new{2012/06/17 (日) 12:02:38};)
- ''燻製'' : そしてもはや計算ですらない (&new{2012/06/17 (日) 12:05:22};)
- ''名無しさん'' : これならどうだ INPUT C:BEEP 6+(C==RND(3)) (&new{2012/06/17 (日) 12:23:44};)
- ''名無しさん'' : ↑↑↑↑なんだこれ (&new{2012/06/17 (日) 15:50:27};)
- ''名無しさん'' : ↑↑↑↑↑その場合はこれがよいかもINPUT C:IF C!=2 THEN ?”フ”?”セイカイ” (&new{2012/06/17 (日) 21:01:22};)
- ''名無しさん'' : INPUT C:?MID$("フセイカイ",C-1,5) でいいだろ (&new{2012/06/18 (月) 15:56:34};)
- ''名無しさん'' : ↑その発想はなかった (&new{2012/06/18 (月) 19:04:55};)
- ''麿'' : &basic{○м};とか、&basic{OX};でよくね?w (&new{2012/06/19 (火) 17:51:41};)
- ''名無しさん'' : ○と×を使った場合は↑x3よりも長くなってしまう (&new{2012/06/19 (火) 18:19:15};)
- ''わぁぃ@'' : 私の最高記録95字、引き算もできます。 (&new{2012/06/19 (火) 18:31:02};)
- ''名無しさん'' : ↑1画面ギリギリに詰め込んだゲームとかは作らないの? (&new{2012/06/19 (火) 18:35:22};)
- ''わぁぃ@'' : ↑私はあまり1画面作らないです。:↑↑記録更新81字(足し算のみ) (&new{2012/06/19 (火) 18:37:55};)
- ''わぁぃ@'' : 作者公認で「圧縮トライアタック」を開催します!以下の条件をみたした最短のプログラムを作ってください。-4則演算のいずれかが出題される。-問題番号と計算式が表示される。-コンソール代入でない。-正解か判定する。-数字が毎回変わる。 (&new{2012/06/19 (火) 18:44:16};)
- ''名無しさん'' : 足し算、引き算混合ではなくどちらか一方でいいの?計算の桁数はないけど1桁+1桁の問題もあり? (&new{2012/06/19 (火) 18:49:07};)
- ''名無しさん'' : それとループ無しで1回ごとRUNするものでもOK? (&new{2012/06/19 (火) 18:51:01};)
- ''名無しさん'' : ↑問題番号ってあるからループは必須になってるね (&new{2012/06/19 (火) 18:51:54};)
- ''名無しさん'' : 足し算だけなら75文字になった (&new{2012/06/19 (火) 19:11:47};)
- ''わぁぃ@'' : 計算は一方でOKです。ただし、「トライアタック」なので正解数のカウントは必須です。また、正解の場合には中断しない仕様にしてください。桁数は自由ですが、評価に影響します。 (&new{2012/06/19 (火) 19:16:59};)
- ''名無しさん'' : 6人か5人が参加しているのか (&new{2012/06/19 (火) 20:18:30};)
-名無しさん1
-麿
-バイカウントメルビル
-マリオ師匠
-名無しさん2
-名無しさん3
※名無しさん2と3は同一人物の可能性あり
- ''名無しさん'' : ↑名無しさん1、2、3はどうやって区別を付けてるの?w 全部俺一人の自演かもしれないよ。 (&new{2012/06/19 (火) 20:28:04};)
- ''名無しさん'' : ↑名無しさん1は自分なので (&new{2012/06/19 (火) 20:53:38};)
- ''名無しさん'' : さらに圧縮 (2012/06/16 (土) 19:29:50)までが自分の圧縮 (&new{2012/06/19 (火) 20:54:53};)
- ''マリオ師匠'' : よーしできたぞ (&new{2012/06/20 (水) 17:09:55};)
- ''名無しさん'' : どこにプログラムリストを書きゃいいんだァ? (&new{2012/06/20 (水) 20:34:29};)
- ''名無しさん'' : ↑編集でコメント欄に追加する (&new{2012/06/20 (水) 22:04:32};)
- ''バイカウントメルビル'' : 文字数少なくって言うんだったら数行に分かれれば「:」の分稼げちゃうから一行ってのを条件に入れるべき (&new{2012/06/20 (水) 22:06:02};)
- ''名無しさん'' : 改行コードを含めた文字数にすればいいだけでは? (&new{2012/06/20 (水) 23:13:39};)
- ''名無しさん'' : 今のところ↑×11さんの75文字が最短か (&new{2012/06/20 (水) 23:20:56};)
- ''麿'' : 一日経ったらいつの間にかすごい展開になっていたw (&new{2012/06/20 (水) 23:27:34};)
- ''バイカウントメルビル'' : たぶんこれ以上シンプルにするのはキツイと思う(57文字) (&new{2012/06/21 (木) 01:12:17};)
-- 見た目を重視したバージョン(たしひきかけわり全Ver)
#basic{{
FOR E=1TO E+(C==A+B)A=RND(9)B=RND(9)?E”)”A”+”B:INPUT C:NEXT
}}
#basic{{
FOR E=1TO E+(C==A−B)A=RND(9)B=RND(9)?E”)”A”−”B:INPUT C:NEXT
}}
#basic{{
FOR E=1TO E+(C==A*B)A=RND(9)B=RND(9)?E”)”A”x”B:INPUT C:NEXT
}}
#basic{{
FOR E=1TO E+(C==A/B)A=RND(9)B=RND(9)?E”)”A”/”B:INPUT C:NEXT
}}
-- 出来るだけ短くすることを重視したバージョン(ひきかけわりはここでは省略)(左…問題番号、中…たされる数、右…たす数)(55文字)
#basic{{
FOR E=1TO E+(C==A+B)A=RND(9)B=RND(9)?E,A,B:INPUT C:NEXT
}}
- ''バイカウントメルビル'' : もし一行縛りでなければコロンのところを改行させれば2文字稼げる(57文字、53文字にできる) (&new{2012/06/21 (木) 01:40:12};)
- ''名無しさん'' : 正解と不正解の表示は行わなくてもいいの? (&new{2012/06/21 (木) 02:01:02};)
- ''名無しさん'' : ↑↑割り算は割り切れる問題でないと即ゲームオーバーになるぞ (&new{2012/06/21 (木) 02:49:57};)
- ''名無しさん'' : あとBの値が0の場合はエラーになる (&new{2012/06/21 (木) 02:54:09};)
- ''麿'' : &basic{RND(E)};なんてのも面白いかも。最初のうちはかなり簡単になるけど (&new{2012/06/21 (木) 06:17:30};)
- ''麿'' : ↑*5 それなら&basic{TO(C==A+B)+E};でさらに1文字減らせますね (&new{2012/06/21 (木) 06:42:55};)
- ''わぁぃ@'' : 正解か不正解は分かれば音でも何でもOKです。 (&new{2012/06/21 (木) 11:41:49};)
- ''名無しさん'' : IF C=A+B THEN TALK "セイカイ" (&new{2012/06/21 (木) 13:45:19};)
- ''バイカウントメルビル'' : ↑↑↑↑↑↑あ、それは気が付かんかった んじゃなかったことに(笑) (&new{2012/06/21 (木) 18:50:21};)
- ''バイカウントメルビル'' : ↑↑↑↑んでもその後のEとAの間開けないとだから結局一文字減らせない (&new{2012/06/21 (木) 18:57:10};)
- ''麿'' : ↑改行コードをカウントしなければ、EとAの間を改行すればよいかと (&new{2012/06/21 (木) 20:27:39};)
- ''麿'' : ↑*4 C==A+B (&new{2012/06/21 (木) 20:32:25};)
- ''麿'' : 既出かもしんないけど、不正解だったら中断しないとダメですか? (&new{2012/06/21 (木) 20:35:35};)
- ''名無しさん'' : 正解数のカウントをするのが条件だから問題数と正解数を別途カウントすれば中断しなくても良さそう (&new{2012/06/21 (木) 20:52:02};)
- ''バイカウントメルビル'' : ↑↑↑↑あ、なるほ そういうことか^^ (&new{2012/06/21 (木) 21:48:35};)
- ''わぁぃ@'' : 不正解のときに必須なのは正解数のリセットだけですので続行してOKです。 (&new{2012/06/21 (木) 23:02:22};)
#endregion
- ''マリオ'' : 6月からノーコメントwww (&new{2012/08/13 (月) 16:14:41};)
- ''道産子の初心者'' : ちなみに普通に作ったら(圧縮しないバージョン)どうなるんですか? (&new{2012/10/12 (金) 15:13:37};)
- ''名無しさん'' : え? 普通に計算トライアタックになるんじゃないの?  (&new{2013/01/07 (月) 18:34:15};)
- ''ななし'' : ↑圧縮してない、プログラムリストが見たいんですよ。 道産子の初心者さんもきっとそうだと思います。 (&new{2013/02/09 (土) 15:36:24};)
- ''名無しさん'' : 圧縮されてないものならば最初に書いているプログラムにおいて論理式の部分をIF文にすればいいだけでは? (&new{2013/02/09 (土) 15:53:10};)
- ''天郷思音'' : こんな感じですね。 (&new{2013/02/09 (土) 15:53:39};)

&ref(PRG_KEISAN2_QR0.PNG);
#basic{{
CLS:BGMPLAY 3
IF D>DM THEN DM=D-1
D=0
PRINT "ケイサントライアタック タシザン・ヒキザン"
PRINT "ハイスコア:";DM;"モン"
@A
D=D+1
PRINT D;"モンメ"
A=RND(99)+1:B=RND(99)-49
PRINT A;"+"*(B>=0);B;"=";
INPUT C
IF C==A+B THEN BEEP 7:GOTO @A ELSE BEEP 4:END
}}

- ''天郷思音'' : 1箇所だけ論理式がありますので説明します。まず&basic{B>=0};というのはB>=0の時1になります。そうでない時はには0になります。なので、&basic{"+"*(B>=0)};というのは&basic{B>=0};の時だけ&basic{+};を入れる。ということです。 (&new{2013/02/09 (土) 15:55:13};)
- ''ななし'' : これが1行まで圧縮出来るんだからすごいな(僕には無理無理) (&new{2013/02/12 (火) 20:44:24};)
- ''名無しさん'' : 基本さえ理解しておけば難しくはない (&new{2013/02/12 (火) 20:56:54};)

#comment

表示モード : [ スマホ・3DS対応表示 | クラシック表示 ]
PukiWiki 1.4.7 Copyright © 2001-2006 PukiWiki Developers Team. License is GPL. Based on "PukiWiki" 1.3 by yu-ji
ページの処理時間 : 0.005 秒 | ログイン
Copyright(C) 2011-2014 プチコンまとめWiki ◆1sxkymI8ji30