Игра представляет интерес для тех, кто хочет поскорее обучить-
ся устному счету. Рассчитана на двух игроков младшего школьного
возраста.
Вначале Вам выдается задание - цель: число в диапазоне от 50
до 150.
На первом этапе необходимо из заданных случайным образом цифр
выбрать две, с которыми и будут производиться действия. Угадайте
эти числа: когда вы попадете из лазерной пушки в квадрат с заданной
цифрой, он станет красным. Так же отгадайте вторую цифру.
На втором этапе Вам предстоит выбрать, какое действие произ-
вести с этими двумя числами: сложение, вычитание или умножение.
На третьем этапе Вам предстоит в уме сосчитать результат и
ввести его для проверки на правильность. Если Вы ответили правиль-
но, тогда результат прибавится к Вашему счету, приближая Вас к зна-
чению, заданному в начале игры, как "цель".
Выиграет тот, чей счет в точности сравняется со значением
"цель".
Стратегия игры должна быть примерно такой: На первых порах на-
до возможно быстрее набирать очки, поэтому почти во всех случаях
предпочтительней будет умножение, так как оно дает наиболее высокие
результаты (исключением является случай, когда одно иэ чисел равно
1. В этом случае сложение даст больший результат). Однако по мере
приближению к значению "цели", надо быть внимательным, а то можно и
проскочить "цель", превысив ее. Если все же это случится. Вам надо
ждать благоприятного момента и задавать вычитание если Вам повезет
и первое число окажется меньше второго, то результат будет отрица-
тельный и Ваш счет несколько уменьшится-
1 GO ТО 10
2 CLEAR 64599: LOAD "chr"CODE
64600
3 POKE 23675,88 POKE 23676,2
55: RESTORE 3: FOR A=0 TO 7: REA
D B: POKE USR "A"+A,B: NEXT A: D
ATA 24,24,60,60,126,126,255,255
4 RUN
5 SAVE "TARGET" LINE 2: STOP
8 POKE 23606,88- POKE 23607,2
51: RETURN
9 POKE 23606,0: POKE 23607,60
: RETURN
10 GO SUB 8: CLS . DIM N$(2,7)
BORDER 0: PAPER 0 INK 7: BRIG
HT 0: INVERSE 0: OVER 0: FLASH 0
: CLS : PRINT AT 9,4; FLASH 1; P
APER 4; INK 1; BRIGHT 1;" ПРЕДЛ
АГАЕМ ВАМ ИГРУ ";AT 11,7; PAPER
6; INK 2; FLASH 0," "" T A R G
E T ■•" "
12 FOR A=0 TO 500: NEXT A: FOR
A=0 TO 30: PRINT AT 9,A; INK 2;
" A": BEEP .01,A: BEEP .005,0: N
EXT A: PRINT AT 9,31;" ": FOR A=
30 TO 0 STEP -1: PRINT AT 11,A;
INK 2;"A ": BEEP .01.A: BEEP .01
,-10: NEXT A PRINT AT 11,0;" "
13 PLOT 15,111: DRAW 0,25: DRA
W 25,0: DRAW 0,-25: DRAW -25,0
14 PLOT 55,111: DRAW 0,25: DRA
W 25,0: DRAW 0,-25: DRAW -25,0
15 PLOT 95,111. DRAW 0,25: DRA
W 25,0: DRAW 0,-25: DRAW -25,0
16 PLOT 135,111: DRAW 0,25" DR
AW 25,0: DRAW 0,-25: DRAW -25,0
17 PLOT 175,111: DRAW 0,25: DR
AW 25.0: DRAW 0,-25: DRAW -25,0
18 PLOT 215,111: DRAW 0,25 DR
AW 25,0: DRAW 0,-25: DRAW -25,0
20 LET B=0: LET A$="TARGET": F
OR A=3 TO 31 STEP 5
21 LET B=B+1: PRINT AT 18,A; I
NK 2;"A": PLOT A*8+4,32: DRAW 0,
78
22 PRINT AT 5,A-1; PAPER 2; IN
К 7;" ";AT 6,A-1;" ";AT 7,A-
1;"
23 PRINT AT 6,A; INK 7; PAPER
2; AS (В)
24 BEEP 01,0
25 PRINT AT IB,A;" »: PLOT OV
ER 1;A*8+4,32: DRAW OVER 1;0,78
26 IF A<26 THEN FOR C=A TO A+
4 PRINT AT 18,С INK 2 ; "A" : BEE
P 01,A: PRINT AT 18,C;" ■: NEXT
С
29 NEXT A
30 OVER 0: PRINT AT 10,2; PAPE
R 6, INK 2;" DAVID MYLES + ""ИН
ФОРКОМ......; AT 15,4; PAPER 0. IN
К 7;"ИГРА ДЛЯ ДВУХ ПАРТНЕРОВ"
31 FOR А=0 ТО 400: NEXT А
35 PRINT AT 17,3,'"ВАМ НУЖНА ИН
СТРУКЦИЯ? (Y/N)"
38 РОКЕ 23658,8
40 IF INKEYS="Y" THEN GO TO 9
000
41 IF INKEY$="N" THEN GO TO 1
00
4 3 GO TO 38
100 CLS
105 PRINT AT 0,2; INK 3;"ПОЖАЛУ
ЙСТА, ВВЕДИТЕ ВАШЕ ИМЯ";AT 1,6;"
(НЕ БОЛЕЕ 7 СИМВОЛОВ)"
106 PRINT AT 4,2, INK 5."ИГРОК
1 :"
107 GO ТО 200
150 LET А=12
151 LET AS=""
160 PAUSE О: POKE 23658,0
163 IF CODE INKEY$=13 THEN GO
TO 170
164 IF CODE INKEYS=12 AND A>12
THEN LET A=A-1: PRINT AT P,A;"
" GO TO 160
165 IF A=12 AND CODE INKEY$=12
THEN GO TO 160
166 PRINT AT P,A;INKEYS
167 BEEP .1,1 LET A=A+1
168 IF As=19 THEN GO TO 170
169 GO TO 160
170 LET A$="": FOR A=12 TO 20:
LET BS-SCREENS (P,A)
173 LET A$=AS+B$: NEXT A
174 LET NS(N)=A$
175 BEEP .3,0: RETURN
201 LET N=1: LET P=4: GO SUB 15
0: GO TO 204
203 BORDER 0 FOR A=1 TO 500 В
ORDER 2- BORDER 6 BORDER 4 BOR
DER 5: BORDER 0: PAUSE 1: NEXT A
: GO TO 430
204 LET N=2: LET P=4: PRINT AT
4,8, INK 5;"2: " G
О SUB 150
205 LET AS»" ": PAUSE 10: CLS
206 FOR A=15 TO 254 STEP 40
208 PLOT A,111: DRAW 0,25: DRAW
25,0 DRAW 0,-25 DRAW -25,0
209 NEXT A
210 PRINT AT 2,0; INK 2:"32*g3"
212 PRINT AT 17,0; INK 1; PAPER
2;"32*a3,32*ia3"
213 PRINT AT 17,13; PAPER 2; IN
К 7;"ЦЕЛЬ:";AT 18,13;" "
214 LET T=(RND*150)+50: IF T>15
0 OR T<50 THEN GO TO 214
215 LET DE=T/60: FOR A=0 TO 7:
PRINT AT 18,14 PAPER 2; INK 7;A
BEEP .Ol.A/DE: NEXT A
218 PRINT AT 18,14; PAPER 2; IN
К 7;INT T
219 LET P»l: LET B=1: LET P1=0:
LET P2-0
222 PRINT AT 0,5; FLASH 1, INK
1, PAPER 6;"СЕЙЧАС ВАШ ХОД, ";NS
(P)
223 PRINT AT 20,9;"НАЖМИТЕ SPAC
E";AT 21,9;"ДЛЯ ВЫСТРЕЛА": FOR
a=3 to 31 step 5
224 print at 6,a; paper 0; ink
6;int (rnd*9)+1: next a
225 for a=0 to 29: pause 2
226 print at 16,a; ink 2;" a"
227 if inkeyso" " then next a
: print at 16,30;" ": go to 225
228 plot a*8+ll,48: draw 0,61
229 if attr ( 6 , a+l )<>6 then be
ep .001,60: go to 235
230 print at 5,a; paper 2; ink
7;" ";at 6,a, over 1;" ";at
7,a; over 0;" "
231 beep .2,0: let a$(b)=screen
s (6,a+l): let b=b+1
232 if b=3 and p=1 then let b=
0: let p=2: go to 300
233 if b=3 and p=2 then let b=
0: let p=1 : go to 300
235 plot over 1;a*8+11,48: dra
w over 1:0,61 go to 226
300 for g=0 to 10: next g: plot
over 1;a*8+ll,48: draw over 1
;0,61: print at 20,9,"
";at 21,9;" "
305 print at 19,24: paper 2, in
к 7;ns(2);at 20,24;" счет: ";at
21,24;" ";at 21,26;p2
306 print at 19,0; paper 2; ink
7;ns(1);at 20,0;" счет' ";at 21
,0;" ";at 21,2;p1
307 let c=val as(1) let d=val
as ( 2)
310 print at 0,0;"1=слш. 2=b
ычит. 3=умнож."
311 if inkeys="1" then let a=c
+d: let b$="+": go to 320
312 if inkey$="2" then let a=c
-d: let bs="-": go to 320
313 if inkey$="3" then let a=c
*d: let bs="x": go to 320
314 go to 311
320 print at 0,0;"
" : for b=4 to
16: print at в,0;"
": next в
321 print at 0,0;"введите пожал
уйста результат:"
322 plot 70,111: draw 0,25: dra
w «""/о: draw 0,-25: draw -47,0
print at 6,10;c;BS;d;at 6,1
r p «
324 if a<10 then let l=8: go t
о 326
325 let l=17
326 plot 135,111: draw 0,25: dr
aw 16+l,0: draw 0,-25: let l=l+1
6 draw -l,0
327 if c<d and b$="-" then pri
nt at 6,17;"-"
328 if a>9 then let v=18: let
x=19: go to 330
329 let v=17: let x=18
330 for g=v to x: pause 0: let
d$=inkey$
331 if inkey$<chr$ 48 or inkeys
>chrs 57 then print at 6,18;" "
: if a>9 then print at 6,19;" "
: go to 330
332 print at 6,g;d$
333 next g
334 if v=18 then print at 5,17
; over 1; paper 2; ink 7;" ";
at 6,17;" " ;at 7,-17;"
335 if v=17 then print at 5,17
; over 1; paper 2; ink 7;" ;a
t 6,17;" ";at 7,17;"
336 if v=18 then let as=" ":
let as(1)=screen$ (6,18): let as
(2)=screens (6,19)
337 IF V=17 THEN LET AS=" ": L
ET A$(1)=SCREEN$ (6,18)
338 IF V-17 AND B$=,,-,, THEN LE
T AS=" ": LET A$(1)-SCREENS (6,
17): LET AS(2)-SCREENS (6,18)
340 IF VAL AS=A THEN PLOT 87,4
7: DRAW 0,25: DRAW 73,0: DRAW 0,
-25: DRAW -73,0: PRINT AT 13,11;
PAPER 2; INK 7;" ";AT 1
4,11;"ПРАВИЛЬНО";AT 15,11;"
": FOR F=-30 TO 30: BEEP .01
,ABS F: NEXT F
350 IF VAL AS OA THEN PLOT 95,
47: DRAW 0,25: DRAW 57,0: DRAW 0
,-25: DRAW -57,0 PRINT AT 13,12
; PAPER 2; INK 7;" ";AT 14
,12;"НЕВЕРНО";AT 15,12;" "
: BEEP 1,-25: BEEP 1.-30: GO TO
355
351 IF VAL AS=A AND P=1 THEN F
OR Z=P2 TO P2+A: PRINT AT 21,26;
PAPER 2; INK 7.Z BEEP .01,40:
NEXT Z: LET P2-P2+A
352 IF VAL AS=A AND P=2 THEN F
OR Z-Pl TO Pl+A: PRINT AT 21,2;
PAPER 2: INK 7;Z: BEEP .01,40: N
EXT Z: LET P1=P1+A
353 PRINT AT 21,26; PAPER 2; IN
К 7;P2;AT 21,2;P1
354 IF Pl-INT T OR P2-INT T THE
N GO TO 400
355 PRINT AT 0,0;"
" : FOR B—4 TO
16: PRINT AT В,0;"
": NEXT В
356 FOR A-15 TO 254 STEP 40: PL
ОТ A,111: DRAW 0,25: DRAW 25,0:
DRAW 0,-25: DRAW -25,0 NEXT A
357 LET AS-" ": LET B=1: GO TO
222
400 cls : if p1=int t then let
k=1 go to 402
401 let k=2
410 print at 10,0; ink 6,"побед
ителем стал................"
412 for a=21 to 12 step -1 pri
nt at a,13;n$(k): beep .01,a: be
ep .01, a+10: beep .01.a+20 next
A
420 go to 203
500 cls : go to 13
9000 pause 10: cls
9010 print at 0,10;"инструкция";
at 1,10;" "
9020 print at 3,0; ink 4, "
1. угадайте два заданных числа,
стреляя по ним.": go sub 9900: р
rint #0;"
II
9030 print at 6,0; ink 5;
2. с этими числами вы можете
делать арифметические действия:
сложение, вычитание и деление.":
go sub 9900: print #0;at 0,10,"
9040 print at 10,0, ink 6,
3. если вы правильно сосчитаете
результат выбранного действия,
то он прибавится к вашему счету.
": go sub 9900: print #0;"
II
9050 print at 14.0; ink 5;
4. победит тот, кто первым дове-
дет свой счет до значения 'цель'
»: go sub 9900- print #0;at 0,0;
• I
9055 print at 17,0; ink 4;
5. если ваш счет превысил 'цель'
используйте вычитание для умень-
шения счета, например: 1-9=-8"
9060 for в=0 то 2: for а=0 то 6:
pause 5: print at 21,1;"использ
уйте "; ink a;"space"; ink 7;" д
ля стрельбы": веер .001,а*7: nex
т a: next в: pause 200: go то 90
70
9070 cls : print at в,9;"he хоти
те ли вы";ат 10,2;"посмотреть ин
струкцию снова?";at 12,13;"(y/n)
9071 poke 23658,8
9072 if inkey$-"y" then go to 9
000
907 3 if inkey$-="n" then go to 1
00
9074 go to 9071
9099 stop
9900 print #0,at 0,9;"нажмите sp
ACE"
9901 if inkey$«" " then for a-l
to 10: beep .009,a: next a: ret
urn
9902 go to 9901