2012年7月30日投稿 / 投稿者 : いったん / タグ : 投稿プログラム ツール シミュレーション QRコード 初代対応
こんにちは今回で発表9作目になるいったんです。
これは二次関数をグラフにしてくれるプログラムです。
二次関数なので中学校で習う「関数y=ax^2」にも使えます。
二次関数について詳しく知りたい方はこちらから
二次関数:WIKIBOOKS
y=ax^2:WIKIBOOKS
まず編集画面の波線で囲っているところの設定をしてください。 その後runさせてください。
変数説明
変数名 | 説明 |
---|---|
A,B,C | AX^2+BX+Cに当てはまる数。bcを0にすれば関数y=ax^2になります。 |
S | X座標の書き始め。値が小さいほどたくさん書きます |
ZU | 上画面の一マスあたりの倍率。大きいほど倍率は小さくなります。 |
ZD | 下画面の一マスあたりの倍率。 |
W | 描画時のウェイト |
ST | 描画時のxのステップ。大きいほど荒くなります。0.1推奨 |
画面は左に90度回転させて使います。
左下にデータが表示されています。
描画が終わるとタッチで座標を表示させることができます。
オレンジ色の線は上下画面の関係を表しています。
プチコンmkII 向けの QR コードです。
※注意:初代の方はACLSをCLS:GPAGE1:GCLS 0:GPAGE0:GCLSに変えてください。
- ’2シ゛カンスウ ヒ゛ュワ− by Ittan v1.0
- ACLS:PNLTYPE ”OFF”
- CLEAR
- GPAGE 1
- ’―――――ユ−サ゛− セッテイ―――――
- A=1 ’X^2 ノケイスウ
- B=0 ’X ノケイスウ
- C=0 ’アトノカス゛
- S=−20 ’ハシ゛メ
- ZU=100 ’ウエカ゛メンハ゛イリツ(1/X)
- ZD=1 ’シタカ゛メンハ゛イリツ(1/X)
- W=0 ’ウェイト
- ST=0.1 ’ステッフ゜/オオキイホト゛アラクナル
- ’――――――――――――――――――――
- PX=5:PY=16
- P$=”フォントヲタテニスル?А/Б”
- GOSUB @PRINT
- FOR I=0 TO 15
- I=BTRIG() AND 63
- NEXT
- I=FLOOR(I/16)−1
- PX=5:PY=16
- P$=”システム シ゛ュンヒ゛チュウ”
- GOSUB @PRINT
- IF !I THEN GOSUB @PRINTSET
- ’−−−
- CLS
- ’カ゛メンセイセイ
- ZMU=10/SQR(ZU)
- ZMD=10/SQR(ZD)
- FOR I=−5 TO 270 STEP 10
- GPAGE 0
- GLINE 0,I,255,I,1
- GLINE I,0,I,192,1
- GPAGE 1
- GLINE 0,I,255,I,1
- GLINE I,0,I,192,1
- NEXT
- GPAGE 1
- GLINE 55,0,55,192,6
- GLINE 0,95,255,95,6
- X=55−55/(ZMU/ZMD)
- X1=55+200/(ZMU/ZMD)
- Y=96−96/(ZMU/ZMD)
- Y1=96+96/(ZMU/ZMD)
- GBOX X,Y,X1,Y1,8
- GPAGE 0
- GLINE 55,0,55,192,6
- GLINE 0,95,255,95,6
- X=55−55/(ZMD/ZMU)
- X1=55+200/(ZMD/ZMU)
- Y=96−96/(ZMD/ZMU)
- Y1=96+96/(ZMD/ZMU)
- GBOX X,Y,X1,Y1,8
- ’−−−
- ’メイン
- FOR X=S TO ABS(S) STEP ST
- Y=A*X*X+B*X+C
- IF X==S THEN OX=X:OY=Y
- GX0=55+(OY)*ZMD
- GY0=95+(OX)*ZMD
- GX1=55+(Y)*ZMD
- GY1=95+(X)*ZMD
- GX2=55+OY*ZMU
- GY2=95+OX*ZMU
- GX3=55+Y*ZMU
- GY3=95+X*ZMU
- GPAGE 1
- GLINE GX0,GY0,GX1,GY1,15
- GPAGE 0
- GLINE GX2,GY2,GX3,GY3,15
- OX=X:OY=Y
- PX=0:PY=26
- P$=STR$(A)+”X^2+”+STR$(B)
- P$=P$+”X+”+STR$(C)+”,”
- P$=P$+”X:”+STR$(X)
- P$=P$+”,Y:”+STR$(Y)+”,ウエ:”
- P$=P$+STR$(10/ZMU)+”/1メモリ”
- P$=P$+”,シタ:”+STR$(10/ZMD)
- P$=P$+”/1メモリ”
- GOSUB @PRINT
- WAIT W
- NEXT
- ’−−−
- FOR I=0 TO 1
- I=BTRIG() AND 1023
- LOCATE 0,1
- Y=TCHX:X=TCHY
- Y=Y−55
- X=X−96
- P$=”X:”+STR$(X/ZMD)+CHR$(0)*5
- PX=0:PY=27:GOSUB @PRINT
- P$=”Y:”+STR$(Y/ZMD)+CHR$(0)*5
- PX=0:PY=28:GOSUB @PRINT
- NEXT
- END
- @PRINTSET
- CHRINIT ”BGF0U”
- FOR J=0 TO 255
- CHRREAD(”BGF0”,J),C$
- C0$=””
- FOR I=0 TO 63
- C1=56−(I%8)*8+FLOOR(I/8)
- C0$=C0$+MID$(C$,C1,1)
- NEXT
- CHRSET ”BGF”,J,C0$
- NEXT
- RETURN
- @PRINT
- FOR PRI=0 TO LEN(P$)−1
- LOCATE 31−PY,PX
- PR$=MID$(P$,PRI,1)
- IF PR$==”;” THEN PR$=””:PX=PX−1
- IF PR$==”,” THEN PR$=””:PX=−1
- ?PR$;
- PX=PX+1 AND 31
- PY=PY+(PX==0)
- NEXT PRI
- PY=PY+1*(PR$!=””)
- PX=(PR$==””)*PX
- RETURN
この作品に対するコメントがあれば一言どうぞ。(作品に直接関係ない質問や雑談は掲示板へ)
質問やバグなど書いていただくと嬉しいです。
表示モード : [ スマホ・3DS対応表示 | クラシック表示 ]
PukiWiki 1.4.7 Copyright © 2001-2006 PukiWiki Developers Team. License is GPL. Based on "PukiWiki" 1.3 by yu-ji
ページの処理時間 : 0.108 秒 | このページの最終更新 : 2022/09/20 (火) 12:44:16 (565d) | ログイン
Copyright(C) 2011-2014 プチコンまとめWiki ◆1sxkymI8ji30