Логикалық амалдар
құрамды шарттар – составное условие – compound condition
логикалық өрнек – логическое выражение – logical expression
1-кесте.
Логикалық амалдар
A
B
not A
A and B
A or B
true
true
false
true
true
true
false
false
false
true
false
false
true
false
false
false
true
true
false
true
Все
учебники
Казахстана
на
OKULYK.COM
*
Книга
предоставлена
исключительно
в
образовательных
целях
согласно
Приказа
Министра
образования
и
науки
Республики
Казахстан
от
17
мая
2019
года
№
217
126
True
– «ақиқат»,
false
– «жалған» деген мағыналарды білді-
реді. Берілген шарт орындалса, яғни ақиқат болса,
іf
-ке жазылған
шарттан кейін жазылған оператор орындалады. Жалған болса,
else
-тегі оператор орындалады. Төменде берілген
2-кестеде
логика-
лық амалдарды орындауға мысалдар берілген
(2-кесте).
2-кесте.
Логикалық амалдардың орындалуы
Логикалық
өрнек
Мәні
Логикалық
өрнек
Мәні
2>5 and 2>3
false (жалған)
1>2 or 1<0
false (жалған)
1<5 and 1>0
true (ақиқат)
not (5 > 6)
true (ақиқат)
3>2 or 3<1
true (ақиқат)
not (6 > 5)
false (жалған)
3>2 or 2>0
true (ақиқат)
2=0 and 2<>0
false (жалған)
2=0 or 2>0
true (ақиқат)
3>0 or 20<0
true (ақиқат)
Құрамды шарттарды бағдарламалауға мысалдар
1-мысал: a, b, c
бүтін сандар берілген. Бұл сандардың ішіндегі
өзара кері сандарды анықта. Егер өзара кері сандар бар болса – «ia»,
жоқ болса – «joq» жауабы экранға шығуы керек.
Мысалы
Нәтиже
4 10 -4
ia
Алгоритмдік шешу жолы:
Өзара кері сандарды анықтау шарты: a + b = 0; a + c = b; b + c = a. Мысалы:
а: = 5; b: = – 5 болса, онда a + b = 0 шарты орындалады. Демек, бұл жағдайда
a, b сандары – өзара кері сандар.
Логикалық теріске шығару (инверсия – ‘not’).
«Емес» сөзінің
көмегімен пікірді теріске шығару амалы
логикалық теріске
шығару
немесе
инверсия
деп аталады. «Инверсия» сөзі «дұрыс
емес», «теріске шығару» сөздеріне және «емес» сөзіне сәйкес
келеді.
Логикалық қосу (дизъюнкция – ‘or’).
Екі немесе одан да
көп пікірлерді «немесе» жалғаулығы көмегімен біріктіру
амалы
логикалық қосу
немесе
дизъюнкция
деп аталады.
«Дизъюнкция» сөзі «немесе» жалғаулығына сәйкес келеді.
Все
учебники
Казахстана
на
OKULYK.COM
*
Книга
предоставлена
исключительно
в
образовательных
целях
согласно
Приказа
Министра
образования
и
науки
Республики
Казахстан
от
17
мая
2019
года
№
217
127
File Edit Format Run Options Window Help
*4.6.2.py - C:\Users\User\AppData\Loca...
Ln:11 Col: 0
x,y=
map
(
int
,
input
().split())
if
x>0
and
y>0:
print
(
’I shirek’
)
if
x<0
and
y>0:
print
(
’II shirek’
)
if
x<0
and
y<0:
print
(
’III shirek’
)
if
x>0
and
y<0:
print
(
’IV shirek’
)
Бұл есептен туындайтын a + b = 0
немесе a + c = 0 немесе b + c = 0
үш шартының біреуі орындалса,
бұл сандардың арасында өзара
кері сандар болғаны. Берілген
мысалдың программа коды
1-суретте
берілген.
1-сурет.
Программа коды
2-сурет.
Жазықтықтағы
координата ширектері
+, +
–, +
–, +
–, –
x
y
A
(
x, y
)
Тапсырма.
Жазықтықтағы А нүк-
тесі х, у координаталарымен беріл-
ген
(2-сурет).
Осы нүктенің коорди-
ната жазықтығының қай ширегін-
де жатқанын анықта.
Алгоритмдік шешу жолы
А нүктесінің қай ширекте жатуы
х, у координаталарының таңбасына
байланысты. Мысалы: А нүктесі ІІ
ширекте жатса, онда х-тің таңбасы
(–), ал у-тің таңбасы (+) болуы керек
(2-сурет).
Практикалық жұмысты
компьютерде орындап, нәтижесін ал.
Программа кодын
(3-сурет)
х пен
у-тің әртүрлі жағдайларында тек-
серіп (тестілеп) көр. Тапсырманың
блок-схемасы
4-суретте
берілген.
Мысалы
Нәтиже
-4 5
ІІ shirek
3-сурет.
Программа коды
4-сурет.
Блок-схема
Иə
Иə
Иə
Иə
Жоқ
Жоқ
Жоқ
File Edit Format Run Options Window Help
4.6.1.py - C:\Users\User\AppData\Local/...
Ln:1 Col: 30
a,b,c=
map
(
int
,
input
().split())
if
(a+b==0)
or
(a+c==0)
or
(b+c==0):
print
(
’ia’
)
else
:
print
(
’jog’
)
Все
учебники
Казахстана
на
OKULYK.COM
*
Книга
предоставлена
исключительно
в
образовательных
целях
согласно
Приказа
Министра
образования
и
науки
Республики
Казахстан
от
17
мая
2019
года
№
217
128
Берілген программаның кодын талдап, төмендегі сұрақтарға жауап
беріңдер (
5-сурет
).
1. Программа коды қандай тапсырманың шешімін табу үшін құрылған?
2. Программаны құрастыруда қандай логикалық оператор қолданылған?
Программаның блок-схемасын құрыңдар.
3.
5-суреттегі
программа кодын үш қабырғасы берілген үшбұрыш-
тың теңбүйірлі екенін (
6-сурет
) анықтайтын программаға ауыстыру
үшін қандай өзгерістер жасау керек?
5-сурет.
Программа коды
6-сурет.
Теңбүйірлі
үшбұрыш
1. Құрамды шарттар мен кірістірілген шарттардың қандай ұқсастығы мен
айырмашылығы бар?
2. Программада құрамды шарттарды қандай жағдайларда қолданған дұрыс?
3. Мысалы,
a
,
b
сандарының екеуінің бірдей тақ сан екенін тексергенде
құрамды шарт қалай жазылуы керек?
4. Логикалық амалдарды программалауды қолданудың маңызы неде?
1-тапсырма.
Төменгі
кестедегі
логикалық өрнектердің мәнін тап
(
true, false
).
а
b
Логикалық өрнек
Логикалық өрнек
10
56
a>5 or b>a
a%5==0 and b>a
0
1
a>b or b==1
a>b and b==1
8
-7
a<50 or b>a
a //2!=1 and b+15==a
-8
-9
a>-8 or b==a
a**2>0 and b==a-1
7
5
a==5 or b!=a
a+b==17 and b!=a
a
b
c
File Edit Format Run Options Window Help
4.6.3.py - C:/Users/User/AppData/L...
Ln:2 Col: 16
a,b,c=
map
(
int
,
input
().split()
if
a==b
and
a==c
and
b==c:
print
(
’ia’
)
else
:
print
(
’jog’
)
Все
учебники
Казахстана
на
OKULYK.COM
*
Книга
предоставлена
исключительно
в
образовательных
целях
согласно
Приказа
Министра
образования
и
науки
Республики
Казахстан
от
17
мая
2019
года
№
217
129
2-тапсырма.
Программа жұмысын орындағаннан кейін b айнымалысының
мәні неге тең болады?
3-тапсырма.
Аралары бос орынмен ажыратылған
a
,
b
және
с
бүтін сан-
дары берілген. Осы сандардың үшеуі де оң сан болса –
1
, басқаша
болған жағдайда нәтиже ретінде экранға
0
саны шықсын.
Мысалы
Нәтиже
5 -6 8
0
4-тапсырма.
Кіру файлында төрттаңбалы
N
бүтін саны берілген.
Құрамды шартты пайдаланып, осы санның палиндром екенін анықта. Егер
сан палиндром болса –
1
, әйтпесе нәтиже ретінде экранға
0
саны шық-
сын. Палиндром сан оң жағынан да, теріс жағынан да оқығанда бірдей
сан болады. Мысалы,
2662
палиндром, ал
2686
палиндром емес.
Input.txt
Output.txt
4224
1
3423
0
5-тапсырма. K
– үштаңбалы сан. Осы санның цифрларының ішінде
өзара тең болатын екі цифр бар ма? Анықта. Егер бар болса –
1
, әйтпесе
0
санын экранға шығару керек.
Мысалы
Нәтиже
343
1
486
0
Берілген программа кодына талдау
жүргіз. Программа орындалғанда
экранға қандай нәтиже шығады?
Программаның блок-схемасын құр.
a = 20
b = 10
if
a < 1
or
a >
b
:
b %= 3
if
a //8 == 2
and
2 >= b:
b//=1
print
(b)
a = 15
b = 8
if
a > 1
or
a <
b
:
b += 7
if
a > 1
and
a == b:
b%=4
print
(b)
a = 10
b = 5
if
a > 5
and
a <
b
:
b -= 10
print
(b)
a = 15
b = 8
if
a > 1
or
a <
b
:
b += 7
if
a > 1
and
a == b:
b%=4
print
(b)
a = 10
b = 5
if
a > 5
and
a <
b
:
b -= 10
print
(b)
Все
учебники
Казахстана
на
OKULYK.COM
*
Книга
предоставлена
исключительно
в
образовательных
целях
согласно
Приказа
Министра
образования
и
науки
Республики
Казахстан
от
17
мая
2019
года
№
217
130
4.7
Python тіліндегі алгоритмдерді программалау
IV бөлім
Күнделікті өмірдегі іс-әрекеттеріңнің бірін құрамды шарт түрінде
қалай сипаттар едің?
Күнделікті өмірімізден көрініс тауып отырған кірістірілген
шарттарға қандай мысал келтіре аласың?
Практикалық жұмыс
Қарапайым, кірістірілген және құрамды шарт тексеру операторын
программа құруда қалай тиімді қолдану керек?
1-тапсырма. a
,
b
сандары берілген. Осы сандардың ең кішісін
табатын программа құрастыр.
Мысалы
Нәтиже
15 87
15
2-тапсырма. a
,
b
,
c
,
d
сандары берілген. Осы сандардың ең үл-
кенін табатын программа құр.
Мысалы
Нәтиже
14 26 98 52
98
k
м/с
m
м/с
v
м/с
3-тапсырма. Даладағы қуғын
Қасқыр мен түлкі екеуі бір уақытта
қоянды көріп қалып, оны қуа жөнелді
(1-сурет).
Қоянның жылдамдығы
v
м/c,
қасқырдың жылдамдығы
m
м/c, ал
түлкінің жылдамдығы
k
м/c-қа тең.
1) Қоян қасқырға да, түлкіге де
жеткізбеуі үшін орындалуы керек
шарттарды тауып жаз.
2)
1-суреттегі
оқиғаның програм-
масын құр. Тапсырмада қоян екеуі-
не де жеткізбей кетсе, экранға
0
, егер қоянды қасқыр бірінші қуып
жетсе, онда
1
, ал түлкі бірінші қуып жетсе,
2
деген жауап экранға
шықсын. Енгізу деректерінің реті:
v
– қоянның,
m
– қасқырдың,
k
– түлкінің жылдамдығы.
Мысалы
Нәтиже
15 12 14
0
1-сурет.
3 тапсырмаға
иллюстрация
Все
учебники
Казахстана
на
OKULYK.COM
*
Книга
предоставлена
исключительно
в
образовательных
целях
согласно
Приказа
Министра
образования
и
науки
Республики
Казахстан
от
17
мая
2019
года
№
217
50>0>0>0>1>5>0> Достарыңызбен бөлісу: |