[問題]請問會的大大

版主: 總版面管理員

頭像
ahk12345
會員
會員
文章: 115
註冊時間: 2004-09-28 3:00 PM

[問題]請問會的大大

文章 ahk12345 »

119 FOR TI=1 TO 1000:NEXT TI :CLS:PRINT "時盡",POINT:END
120 I$=INKEY$:IF I$=CHR$(23) THEN LOCATE 3,9 :PRINT "?": GOTO 140
121 IF I$=CHR$(22) AND TT=2 THEN POINT=POINT+1 : GOTO 150
122 IF I$=CHR$(22) AND TT<>2 THEN GOTO 180
123 IF I$=CHR$(22) AND TT=3 THEN POINT=POINT+1 : GOTO 150
124 IF I$=CHR$(22) AND TT<>3 THEN GOTO 180
130 IF I$=CHR$(27) THEN CLS:PRINT "881":END
140 IF TT=1 THEN POINT=POINT+1 ELSE GOTO 180
150 OPEN "POINT" FOR OUTPUT AS #2
160 WRITE #2,POINT :CLOSE #2
170 GOTO 71
180 PRINT "...",POINT
190 POINT=0
200 OPEN "POINT" FOR OUTPUT AS #1
210 WRITE #1,POINT
220 END
這個裡面
一開頭的for的功能跟inkey$要怎麼同時使用
誰能告訴我阿
附加檔案
Treeb.bas
做到一半
誰能幫我想想阿
(1.03 KiB) 已下載 774 次
Mowd
系統管理員
系統管理員
文章: 1828
註冊時間: 2003-07-16 6:31 PM
來自: 台灣台北
聯繫:

文章 Mowd »

for和inkey$同時使用?就加在for迴圈就好啦,不過...你這個程式跑了第一行就結束了耶~
Mowd 與你的交流天地
歡迎您的到來
頭像
ahk12345
會員
會員
文章: 115
註冊時間: 2004-09-28 3:00 PM

文章 ahk12345 »

要怎麼用阿
可以寫一下ㄇ(程式碼)
那是程式的一小部份
全部的話要下載喔(防盜嘛~)
Mowd
系統管理員
系統管理員
文章: 1828
註冊時間: 2003-07-16 6:31 PM
來自: 台灣台北
聯繫:

文章 Mowd »

你跟我說你想要做到什麼功能吧!這樣我比較好寫。
Mowd 與你的交流天地
歡迎您的到來
頭像
ahk12345
會員
會員
文章: 115
註冊時間: 2004-09-28 3:00 PM

文章 ahk12345 »

先請問你有下載我的檔ㄇ
我想做的功能是
讓他在讀秒的時候可以按按鈕
Mowd
系統管理員
系統管理員
文章: 1828
註冊時間: 2003-07-16 6:31 PM
來自: 台灣台北
聯繫:

文章 Mowd »

只能用PEEK來讀了,你找找相關文章,應該有。PEEK(200)-PEEK(20X)吧
Mowd 與你的交流天地
歡迎您的到來
頭像
大地旅法師
三級會員
三級會員
文章: 579
註冊時間: 2003-07-17 4:10 PM
來自: 大地 卯族

文章 大地旅法師 »

GVBASIC的判讀INKEY$值會使程式停下
不然一般的BASIC當你沒按鍵時只會視INKEY$值為""

用PEEK吧
頭像
ahk12345
會員
會員
文章: 115
註冊時間: 2004-09-28 3:00 PM

文章 ahk12345 »

不太懂
可以寫個示範ㄇ(程式碼)
頭像
helldeathscyt
二級會員
二級會員
文章: 383
註冊時間: 2003-07-17 8:35 PM
來自: 深淵地獄
聯繫:

文章 helldeathscyt »

當BASIC讀到INKEY$時
它就會停下來等待使用者回應
也就是說,這會使得你原本想執行的動作停下來等待回應
而PEEK是哈電族用來查詢記憶體位置的語法
也就是說你不需要按下任何鍵PEEK已經有數字存在了
而你可以找到對應的PEEK當作讀鍵値使用
這樣你就可以一邊判斷一邊執行你想要的動作了

舉例來說,在NC3000裡
打:
IF PEEK (198)=223 THEN PRINT "A":10 ELSE PRINT "B":10
或著打:
IF INKEY$="a" THEN PRINT "A":10 ELSE PRINT "B":10
這兩個的效果都差不多
但是第一種當你不按著"A"時他會顯示"B"
而第二種當你不按"A"程式也不會有任何動作
這樣你了解了嗎?
吾乃地獄之王,是為散播毀滅的種子,掃除所有塵世汙穢,平息痛苦之哀號
~地獄死神

白目橫行的時代...orz
網路真奇妙,
處處白目擾,
趕也趕不走,
白目死不了.
頭像
ahk12345
會員
會員
文章: 115
註冊時間: 2004-09-28 3:00 PM

文章 ahk12345 »

有〝一點〞懂
但你的
helldeathscythe地獄死神 寫: IF PEEK (198)=223 THEN PRINT "A":10 ELSE PRINT "B":10
IF INKEY$="a" THEN PRINT "A":10 ELSE PRINT "B":10
IF PEEK (198)=223 THEN PRINT "A":10 ELSE PRINT "B":10裡面的
:10是啥意思阿
頭像
ahk12345
會員
會員
文章: 115
註冊時間: 2004-09-28 3:00 PM

文章 ahk12345 »

忘了問
左鍵的peek還有右鍵的peek是什麼阿?
頭像
ahk12345
會員
會員
文章: 115
註冊時間: 2004-09-28 3:00 PM

文章 ahk12345 »

全部的程式碼是這樣
10 LOCATE 3,9
15 A$="伐木"
20 FOR I=1 TO LEN(A$):PRINT MID$(A$,I,1);:NEXT I :INKEY$
30 CLS:GRAPH:PRINT "選單","1.開始","2.高分榜","3.結束(不要啊~)","4.求助";:K$=INKEY$
40 IF K$=CHR$(98) THEN GOTO 70
50 IF K$=CHR$(110) THEN GOTO 80
51 IF K$=CHR$(103) THEN GOTO
60 IF K$=CHR$(109) THEN CLS:PRINT "881":END ELSE GOTO 30
70 CLS:PRINT "STAR":INKEY$
71 CLEAR:A=INT(RND(1)*10):
72 IF A<8 THEN TT$="?":TT=1
73 IF A=8 THEN TT$=" ":TT=2
74 IF A>8 THEN TT$="?":TT=3
75 OPEN "POINT" FOR INPUT AS #1
76 INPUT #1,POINT :CLOSE #1
80 CLS:ELLIPSE 38,28,4,4,0,1 :LINE 38,33,38,47,1 :LINE 39,39,50,30,1 :LINE 50,30,52,34,1:
90 LINE 52,34,53,32,1 :LINE 53,31,51,29,1 :BOX 50,30,57,16,1,1 :LINE 38,48,35,57,1:
100 LINE 38,49,41,58,1:LOCATE 3,9 :PRINT TT$ :ELLIPSE 83,28,4,4,0,1 :LINE 83,47,83,33,1 :
110 LINE 83,48,81,58,1 :LINE 86,58,84,49,1 :LINE 82,38,74,38,1 :LINE 74,37,84,37,1 :
119 FOR TI=1 TO 1000:NEXT TI :CLS:PRINT "時盡",POINT:END
120 I$=INKEY$:IF I$=CHR$(23) THEN LOCATE 3,9 :PRINT "?": GOTO 140
121 IF I$=CHR$(22) AND TT=2 THEN POINT=POINT+1 : GOTO 150
122 IF I$=CHR$(22) AND TT<>2 THEN GOTO 180
123 IF I$=CHR$(22) AND TT=3 THEN POINT=POINT+1 : GOTO 150
124 IF I$=CHR$(22) AND TT<>3 THEN GOTO 180
130 IF I$=CHR$(27) THEN CLS:PRINT "881":END
140 IF TT=1 THEN POINT=POINT+1 ELSE GOTO 180
150 OPEN "POINT" FOR OUTPUT AS #2
160 WRITE #2,POINT :CLOSE #2
170 GOTO 71
180 PRINT "...",POINT
190 POINT=0
200 OPEN "POINT" FOR OUTPUT AS #1
210 WRITE #1,POINT
220 END
有一些會變成表情符號
抱歉嚕
and有些語句寫一半
頭像
ahk12345
會員
會員
文章: 115
註冊時間: 2004-09-28 3:00 PM

文章 ahk12345 »

要配合這可個東西才能用喔
附加檔案
Tt.bas
製作檔案的檔
(202 Bytes) 已下載 706 次
頭像
helldeathscyt
二級會員
二級會員
文章: 383
註冊時間: 2003-07-17 8:35 PM
來自: 深淵地獄
聯繫:

文章 helldeathscyt »

ahk12345 寫:有〝一點〞懂
但你的
helldeathscythe地獄死神 寫: IF PEEK (198)=223 THEN PRINT "A":10 ELSE PRINT "B":10
IF INKEY$="a" THEN PRINT "A":10 ELSE PRINT "B":10
IF PEEK (198)=223 THEN PRINT "A":10 ELSE PRINT "B":10裡面的
:10是啥意思阿
在if...then...裡的then之後直接打上數字
使指goto的意思,這樣可以節省多餘的行號
所以:10就是goto 10
無線循環的意思

peek左邊數字是橫排為單位
右邊是直排為單位
也就是說Q,A,Z,[求助]的左邊都是198
但是右邊都不一樣
而A那一排的右邊數字都是223
在你沒有動作時,他們全部都是255(2的8次方減1)
只有最右邊那8個按鍵不一樣
全部都是8個一組
你可以去爬文有詳細說明
用尋找文章尋找比較快
吾乃地獄之王,是為散播毀滅的種子,掃除所有塵世汙穢,平息痛苦之哀號
~地獄死神

白目橫行的時代...orz
網路真奇妙,
處處白目擾,
趕也趕不走,
白目死不了.
頭像
ahk12345
會員
會員
文章: 115
註冊時間: 2004-09-28 3:00 PM

文章 ahk12345 »

我用peek寫了一下
但只有第一次給我反應
真是有夠給我ooxx的
程式碼:
10 LOCATE 3,9
15 A$="伐木"
20 FOR I=1 TO LEN(A$):PRINT MID$(A$,I,1);:NEXT I :INKEY$
30 CLS:GRAPH:PRINT "選單","1.開始","2.高分榜","3.結束(不要啊~)","4.求助";:K$=INKEY$
40 IF K$=CHR$(98) THEN GOTO 70
50 IF K$=CHR$(110) THEN GOTO 80
51 IF K$=CHR$(103) THEN GOTO
60 IF K$=CHR$(109) THEN CLS:PRINT "881":END ELSE GOTO 30
70 CLS:PRINT "STAR":INKEY$
71 CLEAR:A=INT(RND(1)*10):
72 IF A<8 THEN TT$="?":TT=1
73 IF A=8 THEN TT$=" ":TT=2
74 IF A>8 THEN TT$="?":TT=3
75 OPEN "POINT" FOR INPUT AS #1
76 INPUT #1,POINT :CLOSE #1
80 CLS:ELLIPSE 38,28,4,4,0,1 :LINE 38,33,38,47,1 :LINE 39,39,50,30,1 :LINE 50,30,52,34,1:
90 LINE 52,34,53,32,1 :LINE 53,31,51,29,1 :BOX 50,30,57,16,1,1 :LINE 38,48,35,57,1:
100 LINE 38,49,41,58,1:LOCATE 3,9 :PRINT TT$ :ELLIPSE 83,28,4,4,0,1 :LINE 83,47,83,33,1 :
110 LINE 83,48,81,58,1 :LINE 86,58,84,49,1 :LINE 82,38,74,38,1 :LINE 74,37,84,37,1 :
111 IF POINT=0 THEN LV=1
112 IF POINT=5 THEN LV=2
113 IF POINT=10 THEN LV=3
114 IF POINT=15 THEN LV=4
115 IF POINT=20 THEN LV=5
116 IF POINT=25 THEN LV=6
117 IF POINT=30 THEN LV=7
118 IF POINT>30 THEN CLS:PRINT "破關嚕": GOTO
119 IF TI=100 THEN CLS:PRINT "TIME'S UP!",POINT :END ELSE GOTO 120
120 IF PEEK (191)=127 THEN LOCATE 3,9 :PRINT "?": GOTO 123
121 IF PEEK (191)=247 AND TT=2 THEN POINT=POINT+1 : GOTO 150
122 IF PEEK (191)=247 AND TT=3 THEN POINT=POINT+1 : GOTO 71 ELSE TI=TI+LV : GOTO 119
123 IF TT=1 THEN POINT=POINT+1 : GOTO 150
124 IF TT=2 THEN GOTO 180
125 IF TT=3 THEN GOTO 180
150 OPEN "POINT" FOR OUTPUT AS #2
160 WRITE #2,POINT :CLOSE #2
170 GOTO 71
180 PRINT "...",POINT
190 POINT=0
200 OPEN "POINT" FOR OUTPUT AS #1
210 WRITE #1,POINT
220 END
附加檔案
Treebb.bas
用peek寫的
(1.18 KiB) 已下載 745 次
回覆文章