3.4. Арифметикалық өрнектердің жазылу ережелері — Информатика 6 сынып, Қадырқұлов: талдау және жауаптар
Ookul.kz · сабақ талдау
Орысша

Кез келген есепті бірге талдайық!

3.4. Арифметикалық өрнектердің жазылу ережелері

Информатика, 6 сынып. Оқулық: Қадырқұлов Р. А., Нұрмұханбетова Г. К. (Алматыкітап баспасы, 2023). 3 бөлім: Python тілінде программалау. 86–89-беттер.

Нені үйренесің

  • Python-да амалдардың орындалу ретін білуді.
  • Математикалық өрнектер мен бөлшектерді бір қатарға жазуды.
  • +=, -=, *= және басқа қысқартылған жазуды қолдануды.
  • abs(), int() және round() функцияларын қолдануды.
  • Формулаларды математика тілінен Python тіліне аударуды.

Ой қозғау

  • Scratch-та арифметикалық өрнектерді қолдану мен жазуда қандай ережелер болды? Онда өрнектер блоктардан құралды, ретті блоктардың бір-біріне кірістірілуі белгіледі. Python-да бәрі мәтінмен жазылады, ал ретті ережелер мен жақшалар белгілейді.
  • Математикада арифметикалық өрнектерге амалдарды қолданудың қандай ережелерін білесің? Алдымен жақша, содан кейін көбейту мен бөлу, одан кейін қосу мен азайту.
  • Қай теңдік дұрыс: 4 + 5 · 7 = 63 әлде 4 + 5 · 7 = 39? Екіншісі дұрыс: алдымен 5 · 7 = 35, содан кейін 4 + 35 = 39. Программалауда да солай.

Тақырыпты талдаймыз

Python амалдарды қандай ретпен есептейді

Python-дағы рет негізінен математикадағыдай.

  1. Алдымен жақша ішіндегі амалдар. Жақша бірнешеу және бір-біріне кірістірілген болса, ең ішкісінен бастаймыз.
  2. Содан кейін дәрежеге шығару **.
  3. Содан кейін көбейту, бөлу, бүтін бөлік және қалдық (*, /, //, %).
  4. Содан кейін қосу және азайту (+, -).
  5. Содан кейін салыстыру (<, >, == және басқалары).
  6. Ең соңында меншіктеу (=, += және басқалары).

📕 Оқулықтың кестесінде (86-бет) әр таңбаның өз реттік нөмірі бар: алдымен *, содан кейін /, содан кейін //, содан кейін %, ал + — --ден бұрын. Шын мәнінде Python-да *, /, // және % бірдей басымдыққа ие, олар солдан оңға қарай есептеледі. + және - үшін де солай. Мысалы, 8 / 2 * 3 12.0 болады (алдымен 8 / 2 = 4, содан кейін 4 * 3), ал * /-ден бұрын орындалса шығатын 1.33 емес.

Өрнек — бір қатарға

Математикада бөлшекті «қабат-қабат» жазады: алымы сызықтың үстінде, бөлімі астында. Python-да олай емес. Бөлшекті бір қатарға жазады, ал алымы мен бөлімін жақшаға алады.

Математикада Python-да
$x = \dfrac{b + 10c - 2(a+b)}{ac - 2a}$ x = (b + 10*c - 2*(a + b)) / (a*c - 2*a)

⚠️ Жиі кететін қате. Көбейту белгісін тастап кетуге болмайды. Математикада 2a деп жазады, ал Python-да 2*a керек. Бөлімнің айналасындағы жақшаны да ұмытпа: x / a * c пен x / (a * c) — мүлде бөлек нәрсе.

Қысқаша: +=, -=, *=

Айнымалыны бір санға арттыру — программаларда ең жиі кездесетін амал. Ол үшін қысқа жазу бар. Оны инкремент (арттыру) және декремент (кеміту) деп атайды.

Толық жазылуы Қысқартылып жазылуы
a = a + b a += b
a = a - b a -= b
a = a * b a *= b
a = a / b a /= b
a = a % b a %= b
a = a // b a //= b
a = a ** b a **= b

Мысалдар: k = k + 1 деп жазудың орнына k += 1, sum = sum + 5 орнына sum += 5, ал len = len - 2 орнына len -= 2 деп жазуға болады.

💡 Бұл — үнемдеу қорапшасы сияқты: «500 теңге қосу» — money += 500. money = money + 500 деп жазудың қажеті жоқ.

Стандартты функциялар: abs(), int(), round()

x = -9; y = 9
print(abs(x), abs(y))            # 9 9, санның модулі (минус таңбасыз)
x = 3.169; y = 3.98
print(int(x), int(y))            # 3 3, бөлшек бөлігі алынып тасталды
x = 5.16; y = 5.89
print(round(x), round(y))        # 5 6, ең жақын бүтін санға дейін дөңгелектеу
  • abs() санның модулін береді: нөлге дейінгі қашықтық, ол әрқашан теріс емес.
  • int() бөлшек бөлігін жай алып тастайды: int(3.98) 3-ке тең.
  • round() санды ең жақын бүтін санға дейін жуықтайды: round(5.89) 6-ға тең.

🌟 Python-да басқа да математикалық функциялар бар, бірақ оларды қолдану үшін арнайы модульді қосу керек. Онымен жоғары сыныптарда танысасың.

👨‍👩‍👧 Ата-анаға. Балаға күнделікті өмірден формула беріңіз, мысалы, таксимен жүрудің құны: отырғызу 300 теңге және әр километрге 90 теңге. Оны Python-да жазсын: price = 300 + 90 * km. Осылай формулалар дерексіз болудан қалады.

Өзіңді тексер

  • Программалау тілінде арифметикалық амалдарды жазу ережелерін айт. Өрнек бір қатарға жазылады, көбейту белгісі міндетті, бөлшек / арқылы жақшамен жазылады, ретті жақшалар мен басымдықтар белгілейді.
  • Амалдардың қандай басымдықтары бар? Жақша, содан кейін **, содан кейін көбейту мен бөлу (*, /, //, %), содан кейін + және -, содан кейін салыстыру, соңында меншіктеу.
  • Ережелерді сақтау неге маңызды? Әйтпесе компьютер басқаша есептеп, қате жауап береді немесе қате туралы хабарлайды.
  • int() мен round() немен ерекшеленеді? int() бөлшек бөлігін алып тастайды, round() ең жақын бүтін санға дейін дөңгелектейді.

Жаттығуларды шығарамыз

№ 1

(Практикада қолдану, 1-практикалық тапсырма.) $a = 4$, $b = 3.5$, $c = 2$ болғанда $y = \dfrac{a + 2b - 3c}{5a + b}$ мәнін табатын программа құрастыр.

Қалай ойлаймыз. Алымы мен бөлімін жақшаға аламыз, көбейтуді * белгісімен жазамыз.

Шешуі.

a = 4; b = 3.5; c = 2
print((a + 2*b - 3*c) / (5*a + b))

Жауабы: 0.2127659574468085 (шамамен 0,213).

№ 2

(Практикада қолдану, 2-практикалық тапсырма.) $y = \dfrac{|a + 2c|}{b^2 + 3ac} \cdot a,(3 + (4 - a^2))$ өрнегінің мәнін табатын программа құрастыр. Мысалы: $a = 4$, $b = 5$, $c = 1$ болғанда −5.8378378 шығады.

Қалай ойлаймыз. Модуль — abs(). Квадратты b*b деп жазуға болады. Бөлшек бір қатарда, жақша ішінде.

Шешуі.

a = float(input())
b = float(input())
c = float(input())
print(abs(a + 2*c) / (b*b + 3*a*c) * a * (3 + (4 - a*a)))

4, 5, 1 үшін: |4 + 2| = 6, бөлімі 25 + 12 = 37, бөлшек 6/37. Әрі қарай · 4 · (3 + (4 − 16)) = 4 · (−9) = −36. Нәтиже −36 · 6/37 ≈ −5.8378.

Жауабы: шамамен −5.8378378 (Python −5.837837837837839 шығарады, ұзынырақ, бірақ сол сан).

№ 3

(Ойлануға берілген сұрақтар, 1.) Программалау тілінде арифметикалық амалдарды жазудың қандай ережелері бар?

Қалай ойлаймыз. Сабақтағы үш басты ережені еске түсір.

Жауап үлгісі. Өрнек бір қатарға жазылады. Көбейту әрқашан * белгісімен жазылады. Бөлшектерді / арқылы, алымы мен бөлімін жақшаға алып жазады. Орындалу ретін жақшалар мен амалдардың басымдықтары белгілейді.

Жауабы: бір қатарға, * белгісімен, бөлшектер / арқылы жақшамен, ретті жақшалар мен басымдықтар белгілейді.

№ 4

(Ойлануға берілген сұрақтар, 2.) Арифметикалық амалдарды орындауда олардың бір-бірінен қандай артықшылығы бар?

Қалай ойлаймыз. Ең күштісінен ең әлсізіне қарай жүр.

Шешуі. Жақша, содан кейін дәреже **, содан кейін *, /, //, %, содан кейін + және -, содан кейін салыстыру, содан кейін меншіктеу. Бірдей басымдықты амалдар солдан оңға қарай орындалады.

Жауабы: жақша, **, көбейту мен бөлу (*, /, //, %), қосу мен азайту, салыстыру, меншіктеу.

№ 5

(Ойлануға берілген сұрақтар, 3.) Амалдарды жазу ережелерін не үшін сақтауымыз қажет?

Қалай ойлаймыз. 4 + 5 * 7 деп жазып, 63 күтсең, не болады?

Жауап үлгісі. Ережелерді сақтамасақ, компьютер амалдарды басқа ретпен орындап, қате нәтиже береді, ал қате туралы көрсетпейді. Ал көбейту белгісін немесе жақшаны ұмытсақ, программа мүлде іске қосылмайды.

Жауабы: әйтпесе нәтиже қате болады немесе программа жұмыс істемейді.

№ 6

(Ойлануға берілген сұрақтар, 4.) int() және round() функцияларының қандай айырмашылығы бар?

Қалай ойлаймыз. 5.89 санын ал да, әр функция не істейтінін қара.

Шешуі. int(5.89) 5-ке тең, өйткені бөлшек бөлігі алынып тасталады. round(5.89) 6-ға тең, өйткені сан ең жақын бүтін санға дейін дөңгелектенеді.

Жауабы: int() бөлшек бөлігін алып тастайды, round() ең жақын бүтін санға дейін дөңгелектейді.

№ 7

(Тапсырма, 1**.) Төмендегі математикалық өрнекті программалау тілінде жаз: 1) $a^2 + b^2 + c^2 - 2ab$; 2) $xy + \dfrac{a+4}{b-4}$; 3) $\dfrac{|x^2 - 5|}{3y(5x + (4a + bt) - z)}$; 4) $x + 5 + \dfrac{y}{t(5x - c)}$.

Қалай ойлаймыз. Көбейткіштердің арасына * қоямыз, дәрежені **, модульді abs() деп жазамыз, бөлшекті жақшаға аламыз.

Шешуі.

  1. a**2 + b**2 + c**2 - 2*a*b
  2. x*y + (a + 4) / (b - 4)
  3. abs(x**2 - 5) / (3*y*(5*x + (4*a + b*t) - z))
  4. x + 5 + y / (t*(5*x - c))

Жауабы: жоғарыдағы жазбаларды қара.

№ 8

(Тапсырма, 2*.) Математикалық өрнектердің Python тілінде жазылуы берілген. Осы өрнектердің қайсысы программалау тілінде қате жазылған? Қателерін түзет.

Қалай ойлаймыз. Әр жазбаны формуламен салыстыр: барлық дәрежелер, таңбалар, жақшалар мен көбейткіштер өз орнында ма.

Шешуі.

  1. $y = \frac45 + \frac12 - 2 + 5\cdot\frac{7}{10}$. y = 4/5 + 1/2 - 2 + 5 * 7/10 жазбасы дұрыс. Солдан оңға: 5 * 7 / 10 = 3.5, бұл 5 · 7/10-мен бірдей.
  2. $x = a^3 + 4b - |4ab^2 - 7|$. x = a * 3 + 4*b - abs(4*a*b * 2 - 7) жазбасы қате. Қателері: a * 3 — $a$-ны үшке көбейту, ал текше a**3 керек; b * 2 — $b$-ны екіге көбейту, ал квадрат b**2 керек. Дұрысы: x = a**3 + 4*b - abs(4*a*b**2 - 7).
  3. $k = \frac{2xyz}{3x+z} - \frac{5x^3y - z}{z - 4y}$. k = (2x * y * z)/(3 * x - z)-(5 * x * y - z)/(z - 4y) жазбасы қате. Қателері: 2x көбейту белгісінсіз; бөлімде 3 * x - z, ал плюс болуы керек; $5x^3y$ ішінде $x$-тің дәрежесі жоқ; соңында 4y көбейту белгісінсіз. Дұрысы: k = (2*x*y*z) / (3*x + z) - (5*x**3*y - z) / (z - 4*y).
  4. $t = \dfrac{|3c - d - a|}{|a - d|} \cdot 5ab$. t = abs(3*c - d - a) / abs(a - d) * 5ab жазбасы тек бір нәрседен қате: 5ab көбейту белгілерінсіз. Дұрысы: t = abs(3*c - d - a) / abs(a - d) * 5*a*b.

Жауабы: тек 1-жазба дұрыс, 2, 3, 4-жазбалардағы қателер жоғарыда түзетілген.

№ 9

(Тапсырма, 3**.) Кірпіштің $a$, $b$, $c$ өлшемдері берілген. Осы кірпіштің көлемінің $\frac12$ бөлігінің көлемін $\frac13$ бөлігіне қосатын программа құрастыр.

Қалай ойлаймыз. Кірпіштің көлемі $V = a \cdot b \cdot c$. $V/2 + V/3$ табу керек.

Шешуі.

a = float(input())      # ені
b = float(input())      # ұзындығы
c = float(input())      # биіктігі
V = a * b * c           # көлемі
print(V / 2 + V / 3)    # жартысы плюс үштен бірі

Тексеру: $a = 2$, $b = 3$, $c = 4$. $V = 24$, 24/2 + 24/3 = 12 + 8 = 20.

Жауабы: V / 2 + V / 3, мұндағы $V = a \cdot b \cdot c$ (2, 3, 4 үшін 20.0 шығады).

№ 10

(Тапсырма, 4***.) Кірпіштің $a$, $b$, $c$ өлшемдері берілген. Кірпіштің көлемін толық бетінің ауданына қатынасын тап. Толық беттің ауданы — кірпіштің барлық бетінің аудандарының қосындысы.

Қалай ойлаймыз. Көлемі: $a \cdot b \cdot c$. Кірпіштің алты беті бар, олар жұппен тең: толық бетінің ауданы $S = 2(ab + bc + ac)$. $V / S$ табу керек.

Шешуі.

a = float(input())
b = float(input())
c = float(input())
V = a * b * c                          # көлемі
S = 2 * (a*b + b*c + a*c)              # толық бетінің ауданы
print(V / S)

Тексеру: $a = 2$, $b = 3$, $c = 4$: $V = 24$, $S = 2 \cdot (6 + 12 + 8) = 52$, қатынасы 24/52 ≈ 0.4615.

Жауабы: қатынасы a*b*c / (2*(a*b + b*c + a*c)) өрнегіне тең.

№ 11

(Үй тапсырмасы.) Мектеп көркем еңбек сабағына 12 м мата сатып алды. Шыт пен жібек матаға 2340 теңге төледі. 1 метрінің бағасы 420 теңге тұратын жібек матадан 3 метр сатып алынды. Шыт матаның 1 метрі қанша теңгеге тұрады? 1) Есептің математикалық шешуін тауып, оның программа кодын құрастыр. 2) Есептегі шамаларды айнымалылар арқылы өрнектеп, әмбебап программа кодын құрастыр: а) сатып алынған маталардың жалпы ұзындығы — $t$; ә) барлық жұмсалған ақша — $s$; б) 1 м жібектің бағасы — $m$, сатып алынған жібектің ұзындығы — $n$.

Қалай ойлаймыз. Жібек: 420 теңгеден 3 м, бұл 1260 теңге. Қалғаны шытқа жұмсалды. Шыт 12 − 3 = 9 м алынды.

Шешуі.

  1. Математикалық түрде:
    1. Жібектің құны: 420 · 3 = 1260 теңге.
    2. Шыттың құны: 2340 − 1260 = 1080 теңге.
    3. Шыттың ұзындығы: 12 − 3 = 9 м.
    4. Шыттың метрінің бағасы: 1080 / 9 = 120 теңге.
print((2340 - 420 * 3) / (12 - 3))
  1. Айнымалылармен: t — матаның жалпы ұзындығы, s — барлық сома, m — жібектің метрінің бағасы, n — жібектің ұзындығы.
t = int(input())     # барлық мата, м
s = int(input())     # барлық сома, теңге
m = int(input())     # жібектің метрінің бағасы
n = int(input())     # неше метр жібек
print((s - m * n) / (t - n))

Жауабы: шыттың метрі 120 теңге.

Жадынама

Терминдер: арифметикалық өрнек, амалдардың басымдығы, инкремент, декремент, стандартты функция, модуль, дөңгелектеу.

Шағын тест

← 3.3. Деректердің типтері · 3.5–3.6. Практикалық тапсырмалар →