9synp Program2013
9synp Program2013
KOMPÝUTERDE
PROGRAMMALAŞDYRMAK ARKALY
MESELELERI ÇÖZMEK
Mazmuny
1. Çyzykly gurluşly algoritmleri programmalaşdyrmak...............2
2. Şahalanýan gurluşly algoritmleri programmalaşdyrmak........10
3. Gaýtalanýan gurluşly algoritmleri programmalaşdyrmak…..19
4. Massiwler........................................................................................30
5. Rekursiýa........................................................................................37
6. Simwol we setir tipli üýtgeýän ululyklar bilen işlemek.............44
1.Çyzykly gurluşly algoritmleri programmalaşdyrmak. (§18)
Aşakdaky meseleleri çözmegiň programmalaryny düzmeli. Ýumuşlaryň
bu toparynda girizilýän hem-de çapa çykarylýan hemme maglumatlar bitin
sanlardyr. Eger-de sanlardaky sifrleriň mukdary görkezilen bolsa (ikibelgili san,
üçbelgili san we ş.m.) onda olar položitel sanlar hasaplanylýar.(sah 104-106)
10 CLS
20 INPUT l
30 s = INT(l / 100)
40 PRINT s
50 END
10 CLS
20 INPUT l
30 s = INT(l / 1000)
40 PRINT s
50 END
10 CLS
20 INPUT l
30 s = INT(l / 1024)
40 PRINT s
50 END
10 CLS
20 INPUT a, b
30 s = INT(a / b)
40 PRINT s
50 END
2
kesgitlemek operasiýasyny ulanmak arkaly a kesimiň ulanylmadyk bölegini
tapmaly.
10 CLS
20 INPUT a, b
30 s = INT(a / b)
40 g = a - s * b
70 PRINT g
60 END
6.Ikibelgili san berlipdir. Ilki ol sanyň çepki sifrini (onlugyny), soňra bolsa –
sagky sifriny (birligini) çapa çykarmaly. Onluklaryny tapmak üçin bitinleýin
bölmek amaly ulanmaly, birliklerini tapmak üçin bolsa bitinleýin bölmekden
galýan galyndydan peýdalanmaly.
10 CLS
20 INPUT a
30 s = INT(a / 10)
40 g = a - s * 10
70 PRINT s, g
60 END
10 CLS
20 INPUT n
30 FOR i = 1 TO 9
40 FOR j = 0 TO 9
50 IF n = 10 * i + j THEN s = i + j: s1 = i * j
60 NEXT j, i
70 PRINT s, s1
80 END
10 CLS
20 INPUT n
30 FOR i = 1 TO 9
40 FOR j = 0 TO 9
50 IF n = 10 * i + j THEN s = 10 * j + i
60 NEXT j, i
70 PRINT s
80 END
3
9.Üçbelgili san berlipdir. Bitinleýin bölmek amalyny bir gezek ulanmak arkaly
berlen sanyň ilkinji sifrini (ýüzlüklerini) çapa çykarmaly.
10 CLS
20 INPUT n
30 s = INT(n / 100)
40 PRINT s
10.Üçbelgili san berlipdir. Ilki onuň iň soňky sifrini (birliklerini), soňra bolsa,
ortaky sifrini (onluklaryny) çapa çykarmaly.
10 CLS
20 INPUT a$
30 b$ = MID$(a$, 3, 1)
40 c$ = MID$(a$, 2, 1)
50 PRINT b$, c$
60 END
12.Üçbelgili san berlipdir. Ony sagdan çepe tarap okanyňda alynýan sany çapa
çykarmaly.
10 CLS
20 INPUT n
30 FOR i = 1 TO 9
40 FOR j = 0 TO 9
50 FOR k = 0 TO 9
60 IF n = 100 * i + 10 * j + k THEN s = 100 * k + 10 * j + i
70 NEXT k, j, i
80 PRINT s
90 END
4
10 CLS
20 INPUT n
30 FOR i = 1 TO 9
40 FOR j = 0 TO 9
50 FOR k = 0 TO 9
60 IF n = 100 * i + 10 * j + k THEN s = 100 * j + 10 * k + i
70 NEXT k, j, i
80 PRINT s
90 END
10 CLS
20 INPUT n
30 FOR i = 1 TO 9
40 FOR j = 0 TO 9
50 FOR k = 0 TO 9
60 IF n = 100 * i + 10 * j + k THEN s = 100 * k + 10 * i + j
70 NEXT k, j, i
80 PRINT s
90 END
15.Üçbelgili san berlipdir. Bu sanyň ýüzlük sifri bilen onluk sifriniň orunlary
çalşyrylanda alnan sany çapa çykarmaly (mysal üçin, 123 san berlen bolsa, onda
213 san emele geler).
10 CLS
20 INPUT n
30 FOR i = 1 TO 9
40 FOR j = 0 TO 9
50 FOR k = 0 TO 9
60 IF n = 100 * i + 10 * j + k THEN s = 100 * j + 10 * i + k
70 NEXT k, j, i
80 PRINT s
90 END
16.Üçbelgili san berlipdir. Bu sanyň onluk sifri bilen birlik sifriniň orunlary
çalşyrylanda alnan sany çapa çykarmaly (mysal üçin, 123 san berlen bolsa onda
132 san emele geler).
10 CLS
20 INPUT n
30 FOR i = 1 TO 9
40 FOR j = 0 TO 9
5
50 FOR k = 0 TO 9
60 IF n = 100 * i + 10 * j + k THEN s = 100 * i + 10 * k + j
70 NEXT k, j, i
80 PRINT s
90 END
17.999-dan uly bitin san berlipdir. Bir gezek bitinleýin bölmek amaly we bir
gezek galyndyny kesgitlemek amaly ulanmak bilen bu sanyň ýüzlügini
görkezýän sifri tapmaly.
10 CLS
20 INPUT n
30 s = INT(n / 100)
40 k = s MOD 10
50 PRINT k
60 END
18. 999-dan uly bitin san berlipdir. Bir gezek bitinleýin bölmek amaly we bir
gezek galyndyny kesgitlemek amaly ulanmak bilen bu sanyň müňlügini
görkezýän sifri tapmaly.
10 CLS
20 INPUT n
30 s = INT(n / 1000)
40 k = s MOD 10
50 PRINT k
60 END
10 CLS
20 INPUT n
30 s = INT(n / 60)
40 PRINT s
50 END
10 CLS
20 INPUT n
30 s = INT(n / 3600)
6
40 PRINT s
50 END
10 CLS
20 INPUT n
30 s = INT(n / 3600)
40 g = n - s * 3600
50 PRINT g
60 END
23. Sutkanyň başyndan bäri N sekunt geçdi ( N - bitin san). Iň soňky sagadyň
başlananyndan bäri näçe doly minudyň geçenligini tapmaly.
10 CLS
20 INPUT n
30 s = INT(n / 3600)
40 g = n - s * 3600
50 w = INT(g / 60)
60 PRINT w
70 END
8
10 CLS
20 INPUT n, k
30 p = n + k - 1
40 IF p MOD 7 = 1 THEN PRINT "dusenbe"
50 IF p MOD 7 = 2 THEN PRINT "sisenbe"
60 IF p MOD 7 = 3 THEN PRINT "carsenbe"
70 IF p MOD 7 = 4 THEN PRINT "pensenbe"
80 IF p MOD 7 = 5 THEN PRINT "anna"
90 IF p MOD 7 = 6 THEN PRINT "senbe"
100 IF p MOD 7 = 0 THEN PRINT "yeksenbe"
110 END
29. a,b,с bitin položitel sanlar berlipdir. a.b ölçegli gönüburçlykda tarapy c bolan
kwadratyň biri-biriniň üstüne düşmeýän iň köp bolan mukdary ýerleşdirilen.
Gönüburçlukda ýerleşen kwadratlaryň sanyny we gönüburçlygyň ulanylman
galan böleginiň meýdanyny tapmaly.
10 CLS
20 INPUT a, b, c
30 IF a < c OR b < c THEN PRINT "bolanok": END
40 f = INT(b / c)
50 p = INT(a / c)
60 p1 = ((c ^ 2) * f) * p
70 r = a * b - p1
80 PRINT r, f * p
30.Käbir ýylyň nomeri berlipdir (bitin položitel san). Ol ýylyň haýsy asyra
degişlidigini kesgitlemeli. Mysal üçin, 20-nji asyryň ilkinji ýylynyň 1901-nji
ýyldan başlanýanlygyny hasaba almaly.
10 CLS
20 INPUT n
30 s = INT(n / 100)
40 g = n - s * 100
50 IF g = 0 THEN PRINT s ELSE PRINT s + 1
60 END
9
2. Şahalanýan gurluşly algoritmleri programmalaşdyrmak (§18)
Sah 112-115
1.Bitin K san berlipdir. K sana gabat gelýän bahany beýan edýän sözi
çykarmaly (1-“ýaramaz”, 2-“kanagatlanarsyz”, 3-“kanagatlanarly”, 4-“ýagy”, 5-
“örän ýagşy”). Eger-de K san 1-5 aralykda ýatmaýan bolsa onda “ýalňyş” –
diýen ýazgyny ekrana çykarmaly.
10 CLS
20 INPUT k
30 IF k = 1 THEN PRINT "yaramaz"
40 IF k = 2 THEN PRINT "kanagatlanarsyz"
50 IF k = 3 THEN PRINT "kanagatlanarly"
60 IF k = 4 THEN PRINT "yagsy"
70 IF k = 5 THEN PRINT "oran yagsy"
80 IF k > 5 THEN PRINT "yalnys"
90 END
10 CLS
20 INPUT n, a, b
30 IF n = 1 THEN PRINT a + b
40 IF n = 2 THEN PRINT a - b
50 IF n = 3 THEN PRINT a * b
60 IF n = 4 THEN PRINT a / b
10 CLS
20 INPUT n, a
30 IF n = 1 THEN PRINT a / 10
40 IF n = 2 THEN PRINT a * 1000
50 IF n = 3 THEN PRINT a
60 IF n = 4 THEN PRINT a / 1000
70 IF n = 5 THEN PRINT a / 100
11
6. Massanyň ölçegleri şeýle tertipde nomerlenipdir: 1-kilogram, 2-milligram, 3-
gram, 4-tonna, 5-sentner. Ölçeg nomeri (1-5 aralykdaky bitin san) we şol
ölçegdäki jisimiň massasy(hakyky san) berlipdir. Jisimiň kilogramdaky
massasyny kesgitlemeli.
10 CLS
20 INPUT n, a
30 IF n = 1 THEN PRINT a
40 IF n = 2 THEN PRINT a / 1000000
50 IF n = 3 THEN PRINT a / 100
60 IF n = 4 THEN PRINT a * 1000
70 IF n = 5 THEN PRINT a * 100
7.Adaty ýyldaky güni(G) we aýy(A) dogry görkezýän iki sany bitin san
berlipdir. Görkezilen senäniň öňünden gelýän senäni kesgitlemeli.
10 CLS
20 INPUT a, g
30 DIM a(12)
40 a(1) = 31: a(2) = 28: a(3) = 31: a(4) = 30: a(5) = 31: a(6) = 30: a(7) = 31:
a(8) = 31: a(9) = 30: a(10) = 31: a(11) = 30: a(12) = 31
50 FOR i = 1 TO 12
60 IF a = 1 AND g = 1 THEN PRINT "gecen yylyn 31": END
70 IF a = i AND g = 1 THEN PRINT a - 1, a(i - 1): END
80 IF a = i AND g <= a(i) THEN PRINT a, g - 1: END
90 NEXT i
8. Adaty ýyldaky güni(G) we aýy(A) dogry görkezýän iki sany bitin san
berlipdir. Görkezilen senäniň yzyndan gelýän senäni kesgitlemeli.
10 CLS
20 INPUT a, g
30 DIM a(12)
40 a(1) = 31: a(2) = 28: a(3) = 31: a(4) = 30: a(5) = 31: a(6) = 30: a(7) = 31:
a(8) = 31: a(9) = 30: a(10) = 31: a(11) = 30: a(12) = 31
50 FOR i = 1 TO 12
60 IF a = 12 AND g = 31 THEN PRINT "taze yylyn 1": END
70 IF a = i AND g < a(i) THEN PRINT a, g + 1
80 IF a = i AND g = a(i) THEN PRINT a + 1, 1
90 NEXT i
9. Bitin görnüşli A we B iki sany üýtgeýän ululyk berlipdir. Eger-de olaryň
bahalary deň däl bolsalar, onda olaryň her birine olaryň ulusynyň bahasyny
dakmaly, Eger-de olar özara deň bolsalar, onda olara nul bahany dakmaly. A we
B ululyklaryň täze bahalaryny çapa çykarmaly.
10 CLS
20 INPUT a, b
30 IF a > b THEN PRINT a, a
40 IF b > a THEN PRINT b, b
50 IF a = b THEN PRINT 0, 0
12
10. Bitin san berlipdir. Eger-de ol položitel bolsa, onda ol sana 1-i goşmaly;
galan ýagdaýda ol sandan 2-ni aýyrmaly. Emele gelen sany çapa çykarmaly.
10 CLS
20 INPUT a
30 IF a >= 0 THEN PRINT a + 1 ELSE PRINT a – 2
11.Bitin san berlipdir. Eger-de ol položitel bolsa onda ol sana 1-i goşmaly;
otrisatel bolsa onda ol sandan 2-ni aýyrmaly; Eger-de nula deň bolsa onda onuň
bahasyny 10 bilen çalşyrmaly. Emele gelen sany çapa çykarmaly.
10 CLS
20 INPUT a
30 IF a > 0 THEN PRINT a + 1
40 IF a < 0 THEN PRINT a - 2
50 IF a = 0 THEN PRINT 10
12.Üç sany bitin san berlipdir. Bu sanlaryň içinde näçe sany položitel sanyň
barlygyny kesgitlemeli.
10 CLS
20 n = 3
30 DIM a(n)
40 FOR i = 1 TO n
50 INPUT a(i)
60 NEXT i
70 FOR i = 1 TO n
80 IF a(i) >= 0 THEN s = s + 1
90 NEXT i
100 IF s = 0 THEN PRINT "yok" ELSE PRINT s
13.Üç sany bitin san berlipdir. Bu sanlaryň içinde näçe sany položitel, näçe sany
otrisatel sanyň barlygyny kesgitlemeli.
10 CLS
20 n = 3
30 DIM a(n)
40 FOR I = 1 TO n
50 INPUT a(I)
60 NEXT I
70 FOR I = 1 TO n
80 IF a(I) >= 0 THEN s = s + 1
90 IF a(I) < 0 THEN k = k + 1
100 NEXT I
110 PRINT s
120 PRINT k
13
14. Iki san berlipdir. Olaryň ulusyny çapa çykarmaly.
10 CLS
20 INPUT a, b
30 IF a > b THEN PRINT a ELSE PRINT b
40 END
15.Iki san berlipdir. Olaryň kiçisiniň tertip nomerini çapa çykarmaly.
10 CLS
20 INPUT a, b
30 IF a > b THEN PRINT 2 ELSE PRINT 1
40 END
16. Iki san berlipdir. Ilki olaryň ulusyny, soňra bolsa kiçisini çapa çykarmaly.
10 CLS
20 INPUT a, b
30 IF a > b THEN PRINT a, b ELSE PRINT b, a
40 END
18. A we B bitin görnüşli iki üýtgeýän ululyk berlipdir. Eger-de olaryň bahalary
meňzeş däl bolsa, onda olaryň her birine olaryň jemini, Eger-de olaryň bahalary
meňzeş bolsa, onda olara nul bahany dakmaly. A we B ululyklaryň täze
bahalaryny çapa çykarmaly.
10 CLS
20 INPUT a, b
30 IF a < b OR a > b THEN PRINT b + a, a + b ELSE PRINT 0, 0
40 END
19. A we B bitin görnüşli iki üýtgeýän ululyk berlipdir. Eger-de olaryň bahalary
meňzeş däl bolsa, onda olaryň her birine olaryň ulusynyň bahasyny, eger-de
olaryň bahalary meňzeş bolsa, onda olaryň her birine nul bahany dakmaly. A we
B ululyklaryň täze bahalaryny çapa çykarmaly.
10 CLS
20 INPUT a, b
30 IF a < b OR a > b THEN PRINT b * a, a * b ELSE PRINT 0, 0
40 END
14
20. Üç san berlipdir. Olaryň iň kiçisini tapmaly.
10 INPUT a, b, c
20 IF a > b AND b > c THEN PRINT c
30 IF c > b AND b > a THEN PRINT a
40 IF b > a AND a > c THEN PRINT c
50 IF c > a AND a > b THEN PRINT b
60 IF a > c AND c > b THEN PRINT b
70 IF b > c AND c > a THEN PRINT a
21. Üç san berlipdir. Olaryň ortakysyny (ýagny iň kiçi bilen iň ulynyň
aralygynda ýerleşenini) tapmaly.
10 INPUT a, b, c
20 IF a > b AND b > c THEN PRINT b
30 IF c > b AND b > a THEN PRINT b
40 IF b > a AND a > c THEN PRINT a
50 IF c > a AND a > b THEN PRINT a
60 IF a > c AND c > b THEN PRINT c
70 IF b > c AND c > a THEN PRINT c
22. Üç san berlipdir. Ilki olaryň iň kiçisini, soňra bolsa olaryň iň ulusyny çapa
çykarmaly.
10 INPUT a, b, c
20 IF a > b AND b > c THEN PRINT c, a
30 IF c > b AND b > a THEN PRINT a, c
40 IF b > a AND a > c THEN PRINT c, b
50 IF c > a AND a > b THEN PRINT b, c
60 IF a > c AND c > b THEN PRINT b, a
70 IF b > c AND c > a THEN PRINT a, b
23. Üç san berlipdir. Olaryň iň uly ikisiniň jemini tapmaly.
10 INPUT a, b, c
20 IF a > b AND b > c THEN PRINT b + a
30 IF c > b AND b > a THEN PRINT b + c
40 IF b > a AND a > c THEN PRINT a + b
50 IF c > a AND a > b THEN PRINT a + c
60 IF a > c AND c > b THEN PRINT c + a
70 IF b > c AND c > a THEN PRINT c + b
24. Hakyky tipe degişli A, B, C üýtgeýän ululyklar berlipdir. Eger-de olaryň
bahalary ösýän tertipde tertipleşen bolsalar, onda olaryň bahalaryny iki esse
artdyrmaly; galan ýagdaýlarda her bir üýtgeýän ululygyň bahasynyň alamatyny
üýtgetmeli. A, B, C ululyklaryň täze bahalaryny çapa çykarmaly.
10 CLS
20 INPUT a, b, c
30 IF a < b AND b < c THEN PRINT a * 2, b * 2, c * 2: ELSE
PRINT a * (-1), b * (-1), c * (-1)
15
25. Hakyky tipe degişli A, B, C üýtgeýän ululyklar berlipdir. Eger-de olaryň
bahalary ösýän tertipde ýa-da kemelýän tertipde tertipleşen bolsalar, onda olaryň
bahalaryny iki esse artdyrmaly; galan ýagdaýlarda her bir üýtgeýän ululygyň
bahasynyň alamatyny üýtgetmeli. A, B, C ululyklaryň täze bahalaryny çapa
çykarmaly.
10 CLS
20 INPUT a, b, c
30 IF a < b AND b < c OR a > b AND b > c THEN PRINT a * 2, b * 2, c * 2:
ELSE PRINT a * (-1), b * (-1), c * (-1)
26. Üç sany bitin san berlipdir. Olaryň ikisi özara meňzeş. Üçünji sanyň (özara
meňzeş sanlardan tapawutlanýan) tertip nomerini kesgitlemeli.
10 CLS
20 INPUT a, b, c
30 IF a = b THEN PRINT 3
40 IF a = c THEN PRINT 2
50 IF b = c THEN PRINT 1
27. Dört sany bitin san berlipdir. Ol sanlaryň üçüsi özara meňzeş. Meňzeş
sanlardan tapawutly sanyň tertip nomerini kesgitlemeli.
10 CLS
20 INPUT a, b, c, d
30 IF a = b AND b = c THEN PRINT 4
40 IF a = c AND c = d THEN PRINT 2
50 IF b = c AND c = d THEN PRINT 1
60 IF a = b AND b = d THEN PRINT 3
16
10 CLS
20 INPUT x, y
30 IF x = 0 AND y = 0 THEN PRINT "0"
40 IF x = 0 AND y > 0 OR y < 0 THEN PRINT "1"
50 IF y = 0 AND x > 0 OR x < 0 THEN PRINT "2"
60 IF x > 0 AND y > 0 OR x < 0 AND y < 0 THEN PRINT "3"
70 END
30. OX we OY koordinata oklarynyň üstünde ýatmaýan nokadyň koordinatasy
berlipdir. Bu nokadyň ýerleşýän koordinata çärýeginiň nomerini kesgitlemeli.
10 CLS
20 INPUT x, y
30 IF x > 0 AND y > 0 THEN PRINT "1"
40 IF x < 0 AND y > 0 THEN PRINT 2
50 IF x < 0 AND y < 0 THEN PRINT 3
60 IF x > 0 AND y < 0 THEN PRINT 4
70 END
31. Taraplary koordinata oklaryna parallel bolan dörtburçlygyň üç depesiniň
koordinatasy berlipdir. Onuň dördünji depesiniň koordinatasyny tapmaly.
10 CLS
20 INPUT x1, y1
30 INPUT x2, y2
40 INPUT x3, y3
50 x4 = x1 + x3 - x2
60 y4 = y1 + y3 - y2
70 PRINT x4, y4
80 END
32. Berlen hakyky x san üçin, aşakdaky f funksiýanyň aljak bahasyny tapmaly:
10 CLS
20 INPUT x
30 IF x > 0 THEN y = 2 * SIN(x)
40 IF x <= 0 THEN y = 6 - x
50 PRINT y
60 END
33. Ýylyň nomeri berlipdir (bitin položitel san). Adaty ýylda 365 günüň, uzak
ýylda bolsa 366 günüň bardygyny nazara almak bilen bu ýyldaky günleriň
sanyny kesgitlemeli. Ýylyň nomeriniň içinden 4-e bölünýänleriniň 100-e
bölünip 400-e bülünmeýänlerinden başgasy uzak ýyl hasaplanylýar (mysal üçin
300-nji, 1300-nji we 1900-nji ýyllar adaty ýyllar, 1200-nji we 2000-nji ýyllar
bolsa uzak ýyllar hasaplanylýar).
17
10 CLS
20 INPUT x
30 DIM a(12)
40 yhg = 365
50 IF x MOD 4 = 0 AND x MOD 100 <> 0 OR x MOD 400 = 0 THEN
yhg = 366
60 PRINT yhg
70 END
34. Bitin san berlipdir. Bu sany beýan edýän degişli “otrisatel jübüt san”,
“otrisatel täk san”, “nul san”, “položitel jübüt san” we ş. m. ýazgyny çapa
çykarmaly.
10 CLS
20 INPUT n
30 IF n MOD 2 = 1 AND n < 0 THEN PRINT "otrisatel tak san"
40 IF n MOD 2 = 0 AND n < 0 THEN PRINT "otrisatel jubut san"
50 IF n MOD 2 = 1 AND n > 0 THEN PRINT "palazitel tak san"
60 IF n MOD 2 = 0 AND n > 0 THEN PRINT "palazitel jubut san"
70 IF n = 0 THEN PRINT "NOL SAN"
80 END
35. 1-999 aralykda ýerleşen bitin san berlipdir. Bu sany beýan edýän degişli
“jübüt ikibelgili san”, “täk üçbelgili san” we ş. m. ýazgyny çapa çykarmaly.
10 CLS
20 INPUT a$
30 s = LEN(a$)
40 IF VAL(a$) MOD 2 = 0 AND s = 1 THEN PRINT "jubut bir belgili san"
50 IF VAL(a$) MOD 2 = 1 AND s = 1 THEN PRINT "tak bir belgili san"
60 IF VAL(a$) MOD 2 = 0 AND s = 2 THEN PRINT "jubut iki belgili san"
70 IF VAL(a$) MOD 2 = 0 AND s = 3 THEN PRINT "jubut uc belgili san"
80 IF VAL(a$) MOD 2 = 1 AND s = 3 THEN PRINT "tak uc belgili san"
90 IF VAL(a$) MOD 2 = 1 AND s = 2 THEN PRINT "tak iki belgili san"
100 IF VAL(a$) = 0 THEN PRINT "nol"
110 END
Kompýuterde alnan netije:
18
3. Gaýtalanýan gurluşly algoritmleri programmalaşdyrmak (§19)
Sah 122-126
10 CLS
20 INPUT a, n
30 FOR i = 1 TO n
40 s = s + a ^ i
50 NEXT i
60 PRINT s + 1
70 END
18. Hakyky A san we bitin N san berlipdir ( N 0 ). Bir gaýtalanmaklygy (for)
ulanmak arkaly aşakdaky jemi hasaplamaly we netijäni çapa çykarmaly:
1 A A2 A3 ... (1) N A N
Bu ýumuşda şertli operatory ulanmaly däl.
22
10 CLS
20 INPUT a, n
30 FOR i = 1 TO n STEP 2
40 s = s + a ^ i
50 NEXT i
60 FOR i = 2 TO n STEP 2
70 k = k + a ^ i
80 NEXT i
90 PRINT k - s + 1
19. Bitin ( N 0 ) san berlipdir. Aşakdaky köpeltmek hasylyny hasaplamaly:
N! 1 2 ... N
( N faktorial). Bitin sanlaryň çäginden çykmakdan gaça durmak maksady bilen,
bu ýumuşda hasaplamany hakyky üýtgeýän ululykda amala aşyrmak we netijäni
hakyky san görnüşinde çapa çykarmak maslahat berilýär.
10 CLS
20 INPUT n
30 s = 1
40 FOR i = 1 TO n
50 s = s * i
60 NEXT i
70 PRINT s
80 END
20. Bitin N ( 0 ) san berlipdir. Bir gaýtalanmaklygy (for) ulanmak arkaly
aşakdaky jemi hasaplamaly: 1!2!3!... N!
( N! aňlatma N faktorialy yagny 1-den N -e çenli bitin sanlaryň köpeltmek
hasylyny aňladýär: N! 1 2 ... N aňladýar). Bitin sanlaryň çäginden
çykmakdan gaça durmak maksady bilen, bu ýumuşda hasaplamany hakyky
üýtgeýän ululykda amala aşyrmak we netijäni hakyky san görnüşinde çapa
çykarmak maslahat berilýär.
10 CLS
20 INPUT n
30 s = 1
40 FOR i = 1 TO n
50 s = s * i
60 p = p + s
70 NEXT i
80 PRINT p
90 END
21. N we K bitin položitel sanlar berlipdir. Aşakdaky jemi hasaplamaly:
1K 2 K ... N K .
Bitin sanlaryň çäginden çykmakdan gaça durmak maksady bilen, bu ýumuşda
hasaplamany hakyky üýtgeýän ululykda
23
amala aşyrmak we netijäni hakyky san görnüşinde çapa çykarmak maslahat
berilýär.
10 CLS
20 INPUT n, k
30 FOR i = 1 TO n
40 s = s + i ^ k
50 NEXT i
60 PRINT s
70 END
22. N ( 0 ) bitin san berlipdir. Aşakdaky jemi hasaplamaly: 11 2 2 ... N N
Bitin sanlaryň çäginden çykmakdan gaça durmak maksady bilen, bu ýumuşda
hasaplamany hakyky üýtgeýän ululykda amala aşyrmak we netijäni hakyky san
görnüşinde çapa çykarmak maslahat berilýär.
10 CLS
20 INPUT n
30 FOR i = 1 TO n
40 s = s + i ^ i
50 NEXT i
60 PRINT s
70 END
23. A we B ( A B ) položitel bitin sanlar berlipdir. A -dan B +1-e çenli hemme
bitin sanlary çapa çykarmaly; özünem her san öz ululygy näçe bolsa şonça-da
gezek çapa çykarylmaly (mysal üçin, 3 san 3 gezek çapa çykarylmaly).
10 CLS
20 INPUT a, b
30 FOR i = a TO b + 1
40 FOR p = 1 TO i
50 PRINT i;
60 NEXT p
70 PRINT
80 NEXT i
90 END
24. A we B ( A B ) bitin sanlar berlipdir. A -dan B +1-e çenli hemme bitin
sanlary çapa çykarmaly; özünem A bir gezek, A 1 san iki gezek we ş.m. çapa
çykarylmaly.
10 CLS
20 INPUT a, b
30 FOR i = a TO b + 1
40 s = s + 1
50 FOR p = 1 TO s
60 PRINT i;
70 NEXT p
24
80 PRINT
90 NEXT i
100 END
25. A we B položitel san berlipdir ( A B ). A kesimde biri-biriniň üstüne
düşmezden B kesimiň iň köp mukdary ýerleşdirilen. Köpeltmek we bölmek
operasiýalaryny ulanmazdan A kesimiň boş galan böleginiň uzynlygyny
hasaplamaly.
10 CLS
20 INPUT a, b
30 DO WHILE a > 0
40 a = a - b
50 IF a < b THEN PRINT a: END
60 LOOP
26. A we B položitel san berlipdir ( A B ). A kesimde biri-biriniň üstüne
düşmezden B kesimiň iň köp mukdary ýerleşdirilen. Köpeltmek we bölmek
operasiýalaryny ulanmazdan A kesimde doly ýerleşen B kesimiň sanyny
hasaplamaly.
10 CLS
20 INPUT a, b
30 DO WHILE a > 0
40 a = a - b: s = s + 1
50 IF a < b THEN PRINT s: END
60 LOOP
27. N we K bitin položitel sanlar berlipdir. Diňe goşmek we aýyrmak
operasiýalaryny ulanmak arkaly N -i K -a bölenimizde ýetýän paýy, şeýle hem
galýan galyndyny tapmaly.
10 CLS
20 INPUT a, b
30 DO WHILE a > 0
40 a = a - b: s = s + 1
50 IF a < b THEN PRINT s, a: END
60 LOOP
28. Bitin N ( 0) san berlipdir. Eger-de ol san 3-iň islendik bir derejesi bolup
bilýän bolsa, onda TRUE, ýogsam FALSE sözlerini çapa çykarmaly.
10 CLS
20 INPUT n
30 FOR i = 0 TO n / 2
40 s = 3 ^ i
50 IF s = n THEN PRINT "trule", "3 ^"; i; "="; n; : END
60 IF s > n THEN PRINT "false": END
70 NEXT i
25
29. 2-niň haýsydyr bir derejesi bolýan bitin N (N>0) san berlipdir: N=2 k. Bu
derejäniň görkezijisi bolan sany tapmaly.
10 CLS
20 INPUT n
30 FOR i = 0 TO n
40 IF 2 ^ i = n THEN PRINT "2 ^"; i; "="; n: END
50 NEXT i
30. Bitin N ( 0) san berlipdir. Ikileýin N faktotialy hasaplamaly:
N!! N ( N 2) ( N 4) ... (Eger-de N jübüt bolsa onda iň soňky köpeldiji 2-ä,
täk bolsa onda 1-e deň). Bitin sanlaryň çäginden çykmakdan gaça durmak
maksady bilen bu köpeltmekligi hakyky san görnüşli üýtgeýän ululyk bilen
hasaplamaklyk hem-de netijäni hakyky san güşinde çapa çykarmaklyk maslahat
berilýär.
10 CLS
20 INPUT n
30 s = 1
40 FOR i = n TO 1 STEP -2
50 s = s * i
60 NEXT i
70 PRINT s
80 END
31. Bitin N ( 0) san berlipdir. Kwadraty N -den uly bolan iň kiçi K sany
tapmaly: K 2 N . Kwardat kökden çykarmak funksiýasyny ulanmaly däl.
10 CLS
20 INPUT n
30 FOR i = 1 TO n
40 s = i ^ 2
50 IF n < s THEN PRINT i: END
60 NEXT i
70 END
32. Bitin N ( 0) san berlipdir. Kwadraty N -den uly bolmadyk iň uly K sany
tapmaly: K 2 N . Kwadrat kökden çykarmak funksiýasyny ulanmaly däl.
10 CLS
20 INPUT n
30 FOR i = INT(n / 2) TO 1 STEP -1
40 s = i ^ 2
50 IF n > s THEN PRINT i: END
60 NEXT i
70 END
26
33. Bitin N ( 1) san berlipdir. 3 K N deňsizlik ýerine ýetýän iň kiçi bitin K
sany tapmaly.
10 CLS
20 INPUT n
30 FOR i = 1 TO INT(n / 2)+1
40 s = 3 ^ i
50 IF n < s THEN PRINT i: END
60 NEXT i
70 END
34. Bitin N ( 1) san berlipdir. 3 K N deňsizlik ýerine ýetýän iň uly bitin K
sany tapmaly.
10 CLS
20 INPUT n
30 FOR i = INT(n / 2) + 1 TO 1 STEP -1
40 s = 3 ^ i
50 IF n > s THEN PRINT i: END
60 NEXT i
70 END
35. Bitin N ( 1) san berlipdir. 1 2 ... K jem N -den uly ýa-da deň bolar ýaly
iň kiçi bitin K sany tapmaly. Tapylan sany we jemi çapa çykarmaly.
10 CLS
20 INPUT n
30 FOR i = 1 TO 200
40 s = s + i
50 IF n <= s THEN PRINT i, s: END
60 NEXT i
70 END
36. Bitin N ( 1) san berlipdir. 1 2 ... K jem N -den kiçi ýa-da deň bolar ýaly
iň uly bitin K sany tapmaly. Tapylan sany we jemi çapa çykarmaly.
10 CLS
20 INPUT n
30 FOR i = 1 TO 200
40 k = k + 1
50 s = s + i
60 IF n < s THEN PRINT k - 1, s - i: END
70 NEXT i
80 END
37. A( 1) san berlipdir. 1 1/ 2 ... 1/ K jem A -dan uly bolandaky iň kiçi bitin K
sany hem-de bu jemi çapa çykamaly.
10 INPUT a
20 FOR i = 1 TO 9999999
27
30 s = s + 1 / i
40 IF s > a THEN PRINT i: END
50 NEXT i
38. A( 1) san berlipdir. 1 1/ 2 ... 1/ K jem A -dan kiçi bolandaky iň uly bitin K
sany hem-de bu jemi çapa çykamaly.
10 INPUT a
20 FOR i = 1 TO 10000
30 s = s + 1 / i
40 IF s > a THEN PRINT i - 1: END
50 NEXT i
39. Bankda goýlan başlangyç goýum 1000 manat. Her bir aýda goýumyň
möçberi bar bolan goýumyň P göterimi artýar. (P hakyky san bolup, ol (0,25)
aralykda ýatýar).Berlen P boýunça ýene-de näçe aýdan goýumyň möçberiniň
1100 manatdan köp boljakdygyny we netijede goýumyň takyk näçä deň
boljaklygyny kesgitlemeli.
10 CLS
20 INPUT p
30 n = 1000
40 FOR i = 1 TO 100
50 t = (n / 100) * p
60 n = n + t
70 l = l + 1
80 IF n > 1100 THEN PRINT n, l: END
90 NEXT i
40. Bitin N ( 0) san berlipdir. Bitinleyin bölmek we bitinleýin bölmekden
galýan galyndy operasiýalaryny ulanmak arkaly birinji sifrinden başlap
(birliklerden başlap) bu sanyň hemme sifrlerini çapa çykarmaly.
10 CLS
20 INPUT a$
30 FOR x = 1 TO LEN(a$)
40 PRINT MID$(a$, x, 1)
50 NEXT x
60 END
41. Bitin N ( 0) san berlipdir. Bitinleyin bölmek we bitinleýin bölmekden
galýan galyndy operasiýalaryny ulanmak arkaly ol sanyň sifrleriniň sanyny we
jemini tapmaly.
10 CLS
20 INPUT a$
30 PRINT LEN(a$)
40 FOR x = 1 TO LEN(a$)
50 s = s + VAL(MID$(a$, x, 1))
60 NEXT x
70 PRINT s
80 END
28
42. Bitin N ( 0) san berlipdir. Bitinleyin bölmek we bitinleýin bölmekden
galýan galyndy operasiýalaryny ulanmak arkaly ol sany sagdan çepe
okanymyzda (tersine okanymyzda) alynjak sany tapmaly.
10 CLS
20 INPUT a$
30 FOR x = LEN(a$) TO 1 STEP -1
40 b$ = b$ + MID$(a$, x, 1)
50 NEXT x
60 PRINT b$
70 END
29
4. Massiwler (§20) sah 135-136
1. Bitin n (n>0) san berlen. Ilkinji n sany položitel täk sandan ybarat bolan
massiwi döretmeli we ony çapa çykarmaly: 1,3,5, ...
10 INPUT n
20 DIM a(n)
30 FOR i = 1 TO n * 2 STEP 2
40 PRINT i
50 NEXT i
2. Bitin n (n>0) san berlen. 2-niň birinji derejesinden başlap, n-nji derejesine
çenli bahalardan ybarat bolan massiwi döretmeli we ony çapa
çykarmaly:2,4,8,16,...
10 INPUT n
20 DIM a(n)
30 FOR i = 1 TO n
40 PRINT 2 ^ i
50 NEXT i
3. Bitin n (n>0) san, hem-de arifmetiki progressiýanyň birinji agzazy a we onuň
tapawudy d berlen. Berlen progressiýanyň ilkinji n agzasyndan ybarat bolan
massiwi döretmeli we ony çap etmeli.
10 INPUT a, d, n
20 DIM a(n)
30 a(1) = a
40 FOR i = 2 TO n
50 a(i) = a(i - 1) + d
60 NEXT i
70 FOR i = 1 TO n
80 PRINT a(i)
90 NEXT i
4. Bitin n (n>0) san, hem-de arifmetiki progressiýanyň birinji agzazy b we onuň
maýdalawjysy q berlen. Berlen progressiýanyň ilkinji n agzasyndan ybarat bolan
massiwi döretmeli we ony çap etmeli.
10 INPUT a, d, n
20 DIM a(n)
30 a(1) = a
40 FOR i = 2 TO n
50 a(i) = a(i - 1) * d
60 NEXT i
70 FOR i = 1 TO n
80 PRINT a(i)
90 NEXT
30
5. Bitin n (n>2) , a we b sanlar berlen. Birinji elementi a deň, ikinji elementi b
deň, her bir soňky elementi bolsa özünden öňdäki ähli elementleriň jemine deň
bolan n elementli massiw döretmeli we ony çapa çykarmaly.
10 INPUT a, d, n
20 DIM a(n)
30 a(1) = a
40 a(2) = d
50 PRINT a(1)
60 PRINT a(2)
70 FOR i = 3 TO n
80 a(i) = a(i - 1) + a(i - 2)
90 PRINT a(i)
100 NEXT i
6. n elementli massiw berlen. Onuň elementlerini ters tertipde çapa çykarmaly.
10 INPUT n
20 DIM a(n)
30 FOR i = 1 TO n
40 INPUT a(i)
50 NEXT i
60 FOR i = n TO 1 STEP -1
70 PRINT a(i)
80 NEXT i
7. n elementli bitin massiw berlen. Berlen massiwdäki bar bolan ähli täk sanlary
olaryň indeksleriniň artýan tertibinde çap etmeli we olaryň sanyny kesgitlemeli.
10 INPUT n
20 DIM a(n)
30 FOR i = 1 TO n
40 INPUT a(i)
50 NEXT i
60 FOR i = 1 TO n
70 IF a(i) MOD 2 = 1 THEN PRINT a(i): s = s + 1
80 NEXT i
90 PRINT : PRINT s
8. X(50)san massiwiň položitel elementlerini saýlap almaly.
10 n = 50
20 DIM a(n)
30 FOR i = 1 TO n
40 INPUT a(i)
50 NEXT i
60 FOR i = 1 TO n
70 IF a(i) >= 0 THEN PRINT a(i)
80 NEXT i
31
9. Y(50)san massiwiň otrisatel elementlerini saýlap almaly.
10 n = 50
20 DIM a(n)
30 FOR i = 1 TO n
40 INPUT a(i)
50 NEXT i
60 FOR i = 1 TO n
70 IF a(i) < 0 THEN PRINT a(i)
80 NEXT i
10. Elementleri natural san bolan massiwiň elementleriniň düzme sanlar
bolanlaryny saýlap almaly.
10 INPUT n
20 DIM a(n)
30 FOR I = 1 TO n
40 INPUT a(I)
50 NEXT I
60 FOR I = 1 TO n
70 FOR j = 1 TO a(I)
80 IF a(I) MOD j = 0 THEN s = s + 1
90 NEXT j
100 IF s > 2 THEN PRINT a(I)
110 s = 0
120 NEXT I
11. Berlen birölçegli massiwiň elementlerini artýan tertipde ýerleşdirmeli.
10 INPUT n
20 DIM a(n)
30 FOR i = 1 TO n
40 INPUT a(i)
50 NEXT i
60 FOR i = 1 TO n - 1
70 FOR j = i + 1 TO n
80 IF a(i) > a(j) THEN SWAP a(j), a(i)
90 NEXT j, i
100 FOR i = 1 TO n
110 PRINT a(i)
120 NEXT i
12. m we n bitin položitel sanlar berlen. i-nji setiriniň her bir elementi 10*i (i=1,
…,m) deň bolan m*n ölçegli matrisany döretmeli.
10 INPUT n, m
20 DIM a(n, m)
30 FOR i = 1 TO n
40 FOR j = 1 TO m
50 PRINT i * 10;
32
60 NEXT j
70 PRINT
80 NEXT i
13. m*n ölçegli matrissa we k (1km) bitin san berlen. Berlen matrissanyň k-
njy setiriniň elementleriniň jemini we köpeltmek hasylyny tapmaly.
10 INPUT n, m
20 INPUT k: s1 = 1
30 DIM a(n, m)
40 FOR i = 1 TO n
50 FOR j = 1 TO m
60 INPUT a(i, j)
70 NEXT j, i
80 FOR j = 1 TO m
90 s = s + a(k, j): s1 = s1 * a(k, j)
100 NEXT j
110 FOR i = 1 TO n
120 FOR j = 1 TO m
130 PRINT a(i, j);
140 NEXT j
150 PRINT
160 NEXT i
170 PRINT s; s1
14. m*n ölçegli matrissa berlen. Berlen matrissanyň her bir setiriniň
elementleriniň jemini tapmaly.
10 INPUT n, m
20 DIM a(n, m)
30 FOR i = 1 TO n
40 FOR j = 1 TO m
50 INPUT a(i, j)
60 NEXT j, i
70 FOR i = 1 TO n
80 FOR j = 1 TO m
90 PRINT a(i, j);
100 NEXT j
110 PRINT
120 NEXT i
130 FOR i = 1 TO n
140 s = 0
150 FOR j = 1 TO m
160 s = s + a(i, j)
170 NEXT j
180 PRINT s
190 NEXT i
33
15. m*n ölçegli matrissa berlen. Berlen matrissanyň her bir setirinde iň kiçi
elementiniň bahasyny tapmaly.
10 INPUT n, m
20 DIM a(n, m)
30 FOR i = 1 TO n
40 FOR j = 1 TO m
50 INPUT a(i, j)
60 NEXT j, i
70 FOR i = 1 TO n
80 FOR j = 1 TO m
90 PRINT a(i, j);
100 NEXT j
110 PRINT
120 NEXT i
130 FOR i = 1 TO n
140 kici = a(i, 1)
150 FOR j = 1 TO m
160 IF kici < a(i, j) THEN 180
170 kici = a(i, j)
180 NEXT j
190 PRINT kici
200 NEXT i
16. m*n ölçegli matrissa berlen. Berlen matrissanyň her bir sütüninde iň uly
elementiniň bahasyny tapmaly.
10 INPUT n, m
20 DIM a(n, m)
30 FOR i = 1 TO n
40 FOR j = 1 TO m
50 INPUT a(i, j)
60 NEXT j, i
70 FOR i = 1 TO n
80 FOR j = 1 TO m
90 PRINT a(i, j);
100 NEXT j
110 PRINT
120 NEXT i
130 FOR j = 1 TO m
140 uly = a(1, j)
150 FOR i = 1 TO n
160 IF uly > a(i, j) THEN 180
170 uly = a(i, j)
34
180 NEXT i
190 PRINT uly
200 NEXT j
17. m*n ölçegli matrissa berlen. Onuň elementleriniň jemi iň uly bolan setirini
tapmaly we şol setiriň nomerini, hem-de iň uly jemiň bahasyny çap etmeli.
10 INPUT n, m
20 DIM a(n, m), b(200)
30 FOR i = 1 TO n
40 FOR J = 1 TO m
50 INPUT a(i, J)
60 NEXT J, i
70 FOR i = 1 TO n
80 FOR J = 1 TO m
90 PRINT a(i, J);
100 NEXT J
110 PRINT
120 NEXT i
130 FOR i = 1 TO n
140 k = 0
150 FOR J = 1 TO m
160 k = k + a(i, J)
170 NEXT J
180 s = s + 1: b(s) = k
190 NEXT i
200 uly = b(1): p = 1
210 FOR l = 1 TO s
220 IF uly > b(l) THEN 240
230 uly = b(l): p = l
240 NEXT l
250 PRINT uly, p
18. m*n ölçegli matrissa berlen. Onuň elementleriniň köpeltmek hasyly iň kiçi
bolan sütünini tapmaly we şol sütiniň nomerini, hem-de iň kiçi köpeltmek
hasylyň bahasyny çap tapmaly.
10 INPUT n, m
20 DIM a(n, m), b(200)
30 FOR i = 1 TO n
40 FOR j = 1 TO m
50 INPUT a(i, j)
60 NEXT j, i
70 FOR i = 1 TO n
80 FOR j = 1 TO m
90 PRINT a(i, j);
100 NEXT j
110 PRINT
120 NEXT i
35
130 FOR j = 1 TO m
140 k = 1
150 FOR i = 1 TO n
160 k = k * a(i, j)
170 NEXT i
180 s = s + 1: b(s) = k
190 NEXT j
200 uly = b(1): p = 1
210 FOR l = 1 TO s
220 IF uly < b(l) THEN 240
230 uly = b(l): p = l
240 NEXT l
250 PRINT uly, p
19. m*m ölçegli kwadrat matrissa berlen. Onuň baş diagonalyndan ýokarda
ýerleşen elementleriniň arasynda iň kiçisini tapmaly.
10 INPUT n
20 DIM a(n, n), b(200)
30 FOR i = 1 TO n
40 FOR j = 1 TO n
50 INPUT a(i, j)
60 NEXT j, i
70 FOR i = 1 TO n
80 FOR j = 1 TO n
90 PRINT a(i, j);
100 NEXT j
110 PRINT
120 NEXT i
130 FOR i = 1 TO n
140 FOR j = i + 1 TO n
150 s = s + 1: b(s) = a(i, j)
160 NEXT j, i
170 kici = b(1)
180 FOR l = 1 TO s
190 IF kici < b(l) THEN 210
200 kici = b(l): p = l
210 NEXT l
220 PRINT kici
36
5. Rekursiýa (§21) sah142-145
39
10. X we Y üýtgeýän ululyklaryň bahalaryny çalşyrýan Swap( X , Y ) prosedurany
ýazmaly. Bu ýerde X we Y birwagtda giriş we çykyş parametri bolup durýan
hakyky san görnüşli ululyklar. Bu kömekçi programmanyň kömegi bilen
A, B, C, D üýtgeýän ululyklaryň bahalaryny şeýle yzygiderlikde: A bilen B , C
bilen D , B bilen C çalçyrmaly we A, B, C, D ululyklaryň täze bahalaryny çapa
çykarmaly.
10 INPUT a
20 INPUT b
30 INPUT c
40 INPUT d
50 PRINT "a="; b
60 PRINT "c="; d
70 PRINT "b="; c
80 PRINT "d="; a
11.Hakyky san görnüşli X we Y ululyklaryň kiçisiniň bahasyny X ululyga,
ulysynyň bahasyny bolsa Y ululyga dakýan Min max( X , Y ) kömekçi programma
ýazmaly. Bu ýerede X we Y ululyklar hakyky görnüşli, birwagtda hem giriş,
hem-de çykyş parametrler bolup hyzmat edýär. Bu kömekçi programma dört
gezek ýüz tutmak bilen A, B, C, D sanlaryň iň kiçisini we iň ulusyny tapmaly.
10 n = 4
20 DIM a(n)
30 FOR i = 1 TO n
40 INPUT a(i)
50 NEXT i
60 uly = a(1)
70 FOR i = 1 TO n
80 IF uly > a(i) THEN 100
90 uly = a(i)
100 NEXT i
110 kici = a(1)
120 FOR i = 1 TO n
130 IF kici < a(i) THEN 150
140 kici = a(i)
150 NEXT i
160 PRINT kici, uly
12. A, B, C ululyklaryň bahalaryny ösýän tertipde tertipleşdirýän SortInc3( A, B, C)
kömekçi programmany ýazmaly. Bu proseduradaky A, B, C hakyky san görnüşli
parametrler birwagtda giriş hem-de çykyş parametrler bolup durýarlar. Bu
kömekçi programmanyň kömegi bilen üç sandan ybarat sanlaryň iki toplumyny:
( A1 , B1 , C1 ) we ( A2 , B2 , C2 ) ösýän tertipde ýerleşdirmeli.
10 n = 6
20 DIM a(n)
30 FOR i = 1 TO n
40 INPUT a(i)
50 NEXT i
60 FOR i = 1 TO 2
40
70 FOR j = i + 1 TO 3
80 IF a(i) > a(j) THEN SWAP a(i), a(j)
90 NEXT j, i
100 FOR i = 1 TO 3
110 PRINT a(i)
120 NEXT i
130 FOR i = 4 TO 5
140 FOR j = i + 1 TO 6
150 IF a(i) > a(j) THEN SWAP a(i), a(j)
160 NEXT j, i
170 FOR i = 4 TO 6
180 PRINT a(i)
190 NEXT i
13. A, B, C ululyklaryň bahalaryny kemelýän tertipde tertipleşdirýän
SortDec3( A, B, C ) kömekçi programmany ýazmaly. Bu proseduradaky A, B, C
hakyky san görnüşli parametrler birwagtda giriş hem-de çykyş parametrler bolup
durýarlar. Bu kömekçi programmanyň kömegi bilen üç sandan ybarat sanlaryň iki
toplumyny: ( A1 , B1 , C1 ) we ( A2 , B2 , C2 ) kemelýän tertipde ýerleşdirmeli.
10 n = 6
20 DIM a(n)
30 FOR i = 1 TO n
40 INPUT a(i)
50 NEXT i
60 FOR i = 1 TO 2
70 FOR j = i + 1 TO 3
80 IF a(i) < a(j) THEN SWAP a(i), a(j)
90 NEXT j, i
100 FOR i = 1 TO 3
110 PRINT a(i)
120 NEXT i
130 FOR i = 4 TO 5
140 FOR j = i + 1 TO 6
150 IF a(i) < a(j) THEN SWAP a(i), a(j)
160 NEXT j, i
170 FOR i = 4 TO 6
180 PRINT a(i)
190 NEXT i
14.Öz parametrleriniň bahalaryny saga tarap yzygiderli süýşürýän
ShiftRight 3( A, B, C ) prosedura ýazmaly ( A, B, C parametrler birwagtda giriş hem-de
çykyş parametrler bolup durýan hakyky san görnüşli ululyklardyr): A ululygyň
bahasy B ululyga, B ululygyň bahasy C ululyga, C ululygyň bahasy bolsa A
ululyga ýazylýar. Bu kömekçi programmanyň kömegi bilen üç sandan ybarat
bolup durýan iki san toplumynyň ( A1 , B1 , C1 ) we ( A2 , B2 , C2 ) elementlerini saga
tarap yzygiderli süýşürmeli.
10 INPUT a, b, c
20 INPUT a1, b1, c1
41
30 PRINT b, c, a
40 PRINT b1, c1, a1
15.X hakyky san görnüşli parametri bolan SignX bitin görnüşli funksiýa
ýazmaly. Bu funksiýa X ululygyň bahasyna baglylykda aşakdaky ululyklary
gaýdyp bermeli: -1, eger X<1; bolsa, 0, eger X=0 bolsa, 1, 1 eger X>0
bolsa.
10 INPUT n
20 IF n < 0 THEN PRINT -1
30 IF n = 0 THEN PRINT 0
40 IF n > 0 THEN PRINT 1
16.A*x2+B*x+C=0 ( A,B,C hakyky parametrli, A0) kwadrat deňlemäniň
kökleriniň sanyny kesgitleýän bitin görnüşli RootCountA,B,C funksiýany
ýazmaly. Bu funksiýany ulanyp öz koeffisientleri bilen berlen üç sany kwadrat
deňlemäniň her biri üçin onuň kökleriniň sanyny kesgitlemeli. Kwadrat
deňlemäniň kökleriniň sany D=B2-4*A*C diskriminantyň bahasy boýunça
kesgitlenilýär.
10 INPUT a, b, c
20 d = b ^ 2 - 4 * a * c
30 IF d < 0 THEN PRINT "koki yok": END
40 IF d = 0 THEN x = -b / (2 * a): PRINT x: END
50 x1 = (-b + SQR(d)) / (2 * a)
60 x2 = (-b - SQR(d)) / (2 * a)
70 PRINT x1, x2
17.R (hakyky görnüşli) radiusly töweregiň meýdanyny hasaplaýan CircleR
hakyky görnüşli funksiýany ýazmaly. Bu funksiýany ulanmak arkaly berlen
radiuslary boýunça üç sany töweregiň meýdanyny hasaplamaly. R radiusly
töweregiň meýdany S=*R2 formula bilen hasaplanylýar. ululygyň bahasy
3.14-e deň diýip hasaplamaly.
10 n = 3
20 DIM a(n)
30 FOR I = 1 TO n
40 INPUT a(I)
50 NEXT I
60 FOR I = 2 TO n
70 s = 3.14 * r ^ 2
80 PRINT s
90 NEXT I
18.R1 we R2 radiusly (hakyky görnüşli, özünem R1 > R2), umumy merkezli iki
töweregiň arasynda emele gelýän halkanyň meýdanyny hasaplaýan RingS(R1 , R2)
hakyky görnüşli funksiýa ýazmaly. Bu funksiýanyň kömegi bilen içki we daşky
radiuslary berlen üç sany halkanyň meýdanyny hasaplamaly. R radiusly
töweregiň meýdanyny hasaplamak üçin: S=*R2 formuladan peýdalanmaly.
ululygyň bahasyny 3.14-e deň diýip hasaplamaly.
10 CLS
20 n = 3
30 DIM a(n), b(n)
42
40 FOR I = 1 TO n
50 INPUT a(I), b(I)
60 NEXT I
70 FOR I = 1 TO n
80 s = 3.14 * (a(I) ^ 2)
90 s1 = (3.14 * b(I) ^ 2)
100 PRINT s - s1
110 NEXT I
19. a esasy we a esasyna geçirilen h beýikligi (a we h hakyky san görnüşli
ululyklar) bolan deňýanly üçburçlygyň perimetrini hasaplaýan TrangleP(a,h)
funksiýany ýazmaly. Bu funksiýanyň kömegi bilen esasy hem-de beýikligi berlen
üç sany üçburçlygyň perimetrii hasaplamaly. b gapdal tarapynyň uzynlygyny
hasaplamak üçin Pifagoryň teoremasyndan peýdalanmaly: b2=(a/2)2+h2 .
10 CLS
20 n = 3
30 DIM a(n), b(n)
40 FOR I = 1 TO n
50 INPUT a(I), b(I)
60 NEXT I
70 FOR I = 1 TO n
80 b = SQR((a(I) / 2) * (a(I) / 2) + (b(I) * b(I)))
90 PRINT b
100 NEXT I
43
6. Simwol we setir tipli üýtgeýän ululyklar bilen işlemek (§22)
SAH 151-152
45
11. Boş bolmadyk S setir berlipdir.C setiriň simwollaryndan ybarat, ýöne
aralarynda bir boşluk goýulyp ýazylan setiri çapa çykarmaly.
10 CLS
20 INPUT a$
30 FOR i = 1 TO LEN(a$)
40 PRINT MID$(a$, i, 1); " ";
50 NEXT i
60 END
12. Boş bolmadyk S setir we položitel bitin N san berlipdir. S setiriň her bir
simwolynyň arasyna N sany ‘*’ (ýyldyzjyk) goýlan setiri çapa çykarmaly.
10 CLS
20 INPUT a$, n
30 FOR i = 1 TO LEN(a$)
40 PRINT MID$(a$, i, 1);
50 FOR p = 1 TO n
60 PRINT "*";
70 NEXT p, i
80 END
13. Setir berlipdir. Ondaky sifrleriň mukdaryny tapyň.
10 CLS
20 INPUT a$
30 FOR i = 1 TO LEN(a$)
40 IF ASC(MID$(a$, i, 1)) >= 48 AND ASC(MID$(a$, i, 1)) <= 57
THEN s = s + 1
50 NEXT i
60 PRINT s
70 END
14. Setir berlipdir. Ol setirdäki uly latyn harplarynyň mukdaryny tapmaly.
10 CLS
20 INPUT a$
30 FOR i = 1 TO LEN(a$)
40 IF ASC(MID$(a$, i, 1)) >= 65 AND ASC(MID$(a$, i, 1)) <= 90
THEN s = s + 1
50 NEXT i
60 PRINT s
70 END
15. Setir berlipdir. Ol setirdäki kiçi latyn harplarynyň mukdaryny tapmaly.
10 CLS
20 INPUT a$
30 FOR i = 1 TO LEN(a$)
40 IF ASC(MID$(a$, i, 1)) >= 97 AND ASC(MID$(a$, i, 1)) <= 122
THEN s = s + 1
50 NEXT i
60 PRINT s
70 END
46
16. C simwol we S setir berlipdir. C simwolyň S setire her bir girmesini iki
esse artdyrmaly. Mysal üçin: ABCD setir üçin ABCCD.
10 CLS
20 INPUT a$, b$
30 FOR i = 1 TO LEN(a$)
40 IF MID$(a$, i, 1) = b$ THEN PRINT b$; b$; : ELSE PRINT MID$(a$, i, 1);
50 NEXT i
60 END
17. Arasy bir ýa-da birnäçe boşluk bilen bölünen, latyn harplaryndan düzülen
sözlerden ybarat setir berlipdir. Setirdäki sözleriň sanyny kesgitlemeli.
10 CLS
20 INPUT a$: n = LEN(a$): DIM b$(n)
30 a$ = a$ + " "
40 FOR x = 1 TO n + 1
50 d$ = MID$(a$, x, 1)
60 IF d$ = " " THEN s = s + 1: b$(s) = t$: t$ = "": GOTO 80
70 t$ = t$ + d$
80 NEXT x
90 FOR x = 1 TO s
100 IF b$(x) = t$ THEN ELSE k = k + 1
110 NEXT x
120 PRINT k
18. Arasy bir ýa-da birnäçe boşluk bilen bölünen, uly latyn harplaryndan
düzülen sözlerden ybarat setir berlipdir. Şol bir harp bilen başlanýan we
tamamlanýan sözleriň sanyny kesgitlemeli.
10 CLS
20 INPUT a$: n = LEN(a$): DIM b$(n)
30 a$ = a$ + " "
40 FOR x = 1 TO n + 1
50 d$ = MID$(a$, x, 1)
60 IF d$ = " " THEN s = s + 1: b$(s) = t$: t$ = "": GOTO 80
70 t$ = t$ + d$
80 NEXT x
90 FOR x = 1 TO s
100 k$ = LEFT$(b$(x), 1)
110 c$ = RIGHT$(b$(x), 1)
120 IF k$ = c$ THEN PRINT b$(x); " ";
130 NEXT x
140 END
19. Arasy bir ýa-da birnäçe boşluk bilen bölünen, uly latyn harplaryndan
düzülen sözlerden ybarat setir berlipdir. Iň bolmanda bir “A” harpyny saklaýan
sözleriň sanyny kesgitlemeli.
47
10 CLS
20 INPUT a$: n = LEN(a$): DIM b$(n)
30 a$ = a$ + " "
40 FOR x = 1 TO n + 1
50 d$ = MID$(a$, x, 1)
60 IF d$ = " " THEN s = s + 1: b$(s) = t$: t$ = "": GOTO 80
70 t$ = t$ + d$
80 NEXT x
90 FOR x = 1 TO s
100 FOR y = 1 TO LEN(b$(x))
110 IF MID$(b$(x), y, 1) = "A" THEN PRINT b$(x): GOTO 130
120 NEXT y
130 NEXT x
20. Arasy bir ýa-da birnäçe boşluk bilen bölünen, uly latyn harplaryndan
düzülen sözlerden ybarat setir berlipdir. Takyk üç sany “A” harpyny saklaýan
sözleriň sanyny kesgitlemeli.
10 CLS
20 INPUT a$: n = LEN(a$): DIM B$(n)
30 a$ = a$ + " "
40 FOR X = 1 TO n + 1
50 d$ = MID$(a$, X, 1)
60 IF d$ = " " THEN s = s + 1: B$(s) = t$: t$ = "": GOTO 80
70 t$ = t$ + d$
80 NEXT X
90 FOR X = 1 TO s
100 FOR y = 1 TO LEN(B$(X))
110 IF MID$(B$(X), y, 1) = "A" THEN K = K + 1
120 NEXT y
130 IF K = 3 THEN PRINT B$(X); " ";
140 K = 0
150 NEXT X
48