The words you are searching are inside this book. To get more targeted content, please make full-text search by clicking here.

Физикалық процестерді компьютерлік модельдеу

Discover the best professional documents and content resources in AnyFlip Document Base.
Search
Published by seisenuldana, 2021-05-04 13:01:33

Физикалық процестерді компьютерлік модельдеу

Физикалық процестерді компьютерлік модельдеу

Есеп қарастырайық: а және b аралығындағы бүтін сандардың
квадратын есептеп, баспаға шығаруғаарналған программа жазыңдар.

Мұнда үш айнымалы бар: а – аралықтың басы, b – аралықтың соңы, kv –
квадрат сөзінен қысқартылған түрі. Барлық айнымалылардың түрі int.
Аралықтың басы мен соңын өзіміз енгіземіз. Әрі қарай while циклі a<=b
болғанша осы аралықтағы бүтін сандардыңквадратын есептейді

Python тіліндегі программасы

print('a және b аралығында бүтін сандардың квадратын есептеп,
баспаға шығаруға арналған программа')
a = int(input(print('a-санын енгізіңіз a=')))
b = int(input(print('b-санын енгізіңіз b= ')))
while a <= b:

kv = a ** 2
print('a=',a, 'cанының квадраты ', kv)

a=a+1
else:

print('a<=b')

Программалау нәтижесі:

a және b аралығында бүтін сандардың квадратын есептеп, баспаға
шығаруға арналған программа

a-санын енгізіңіз a=
None1
b-санын енгізіңіз b=
None10
a= 1 cанының квадраты 1
a= 2 cанының квадраты 4
a= 3 cанының квадраты 9
a= 4 cанының квадраты 16
a= 5 cанының квадраты 25
a= 6 cанының квадраты 36
a= 7 cанының квадраты 49
a= 8 cанының квадраты 64
a= 9 cанының квадраты 81
a= 10 cанының квадраты 100
a<=b

Есеп 2.1.2. (Бурсиан Э.В., 6-бет) Формула бойынша көп рет есептеу.
Диаметрлері 0,1; 0,2; 0,3; …; 1 м дөңгелектің ауданын есептеңіздер.

Python тіліндегі программасы

print('Шеңбердің ауданын есептейік')
import math

50

d=float(input(print('Шеңбердің диаметрін енгізіңіз d=')))
while d<=1:

S=(math.pi*(d)**2)/4
print('d=',round(d,2), 'м' , 'Шеңбердің ауданы
S=',round(S,2),'м^2')
d=d+0.2

Программалау нәтижесі:

Шеңбердің ауданын есептейік
Шеңбердің диаметрін енгізіңіз d=
None0.1
d= 0.1 м Шеңбердің ауданы S= 0.01 м^2
d= 0.3 м Шеңбердің ауданы S= 0.07 м^2
d= 0.5 м Шеңбердің ауданы S= 0.2 м^2
d= 0.7 м Шеңбердің ауданы S= 0.38 м^2
d= 0.9 м Шеңбердің ауданы S= 0.64 м^2

Есеп: Физикада зертханалық жұмыстарда өлшеу мәндерінің орташа
мәнін табу керек. Олай болса қолданушы енгізген сандардың арифметикалық
орташа мәнін есептейтін программа жазыңыздар.

Python тіліндегі программасы

n = int (input("Введите количество элементов списка:n= "))
# a бос тізімін құрамыз
a = []
#elem айнымалсы арқылы сандарды енгізу
for i in range(0, n):

elem = int(input("Введите элемент списка: "))
a.append(elem)
ort = sum(a) / n
print("Среднее значение элементов списка",round(ort, 2))

Программалау нәтижесі:

ведите количество элементов списка:n= 5
Введите элемент списка: 4
Введите элемент списка: 6
Введите элемент списка: 8
Введите элемент списка: 12
Введите элемент списка: 13
Среднее значение элементов списка 8.6

Физикалық экспериментте өлшеу нәтижелерін өңдеу
Физиктер мен басқа да жаратылыстану-ғылыми мамандығы өкілдерінің
жұмысы әр түрлі шамаларға есептік өлшеулер жасауына жиі байланысты.
Алынған мәндердің дұрыстығын талдау, тікелей өлшеу мәндерін өңдеу және
сипаттамаларды тікелей өлшеу мәндері қолданылатын есептеулер қателігін
бағалау (соңғы процесс жанама өлшеу нәтижелерін өңдеу деп аталады)
сияқты сұрақтар туындайды. Көптеген объективті себептерге байланысты
студенттердің алынған мәліметтерді өңдеуге арналған қателіктерді есептеу
туралы білімдері жеткіліксіз. Осындай себептің бірі ретінде мамандықтың
оқу жоспарында өлшеу нәтижелерін статистикалық өңдеу курсының

51

жоқтығын айтуға болады.
Осы кезге дейін қателіктерді есептеу мәселесі, сөз жоқ, оқып-зерттелген.

Қателіктерді есептеуге арналған көптеген ақпараттарды алуға болатын
әдістемелік нұсқаулар, оқулықтар жеткілікті. Дегенмен, бұл жұмыста жиі
қолданылатын есептеулердің алгоритмдері баяндалған.

Өлшеулер тура және жанама болып екіге бөлінеді.
Тура өлшеулер – бұл ізделінді шаманы бірлік ретінде алынған шамамен
тікелей салыстыру процесі. Мысалы, ұзындықты штангенциркульмен,
температураны термометрмен өлшеу және т.б.
Жанама өлшеулер – бұл тура өлшеулер барысында алынған мәндерге
математикалық операциялар қолдану нәтижесінде ізделінді шаманы алу.
Мысалы,цилиндрдің көлемін

V = D2h
4

цилиндрлік өткізгіштің кедергісі формулалары арқылы есептеу.

R= l .

S

Өлшеулерді жүргізе отырып, біз ізделінді шаманың нақты мәнін ала
алмаймыз, өйткені абсолютті нақты құралдар мен өлшеулер әдістері жоқ.
Физикалық шамалардыңкез келген өлшеулері ізделінді шаманың ең ықтимал
мәні бар болатын интервалды ғана беруі мүмкін. Осы интервал сенімділік
интервалы деп аталады. Сенімділік интервалы – бұл ізделінді шаманың ең
ықтимал шын мәні бар болатын сандық өстегі кесінді.

1. Қабылданған белгілеулер
A −өлшенетін шама, A − өлшенетін шаманың орташа мәні, A −

өлшенетін шаманың орташа мәнінің абсолютті қателігі,  = A 100% −
A

өлшенетін шаманың орташа мәнінің салыстырмалы қателігі.

2. Тікелей өлшеудің қателігін есептеу
Айталық, A шамасына n өлшем жүргізілсін. Бұл жағдайда осы
шаманың орташамәнін есептеуге болады:

A орташа мәнінің n мына формула (1)
есептеледі: бойынша
 Ai

A = i=1 .

n

абсолютті қателігі

n2 (2)

 ( Ai − A)

A = t ,n−1 i=1 n(n −1) ,

мұндағы t,n−1−Стьюдент коэффициенті. Сенімділік ықтималдылығының

әртүрлі n мәндері үшін Стьюдент коэффициенттері төмендегі кестеде
келтірілген.

52

Өлшеулер Стьюдент коэффициентінің кестесі 0,99 0,999
саны Сенімділік, α 62,7 53,7
2 9,9 31,6
3 0,6 0,7 0,8 0,9 0,95 0,98 5,8 12,9
4 1,38 2,0 3,1 6,3 12,7 31,8 4,6 8,6
5 1,06 1,3 1,9 2,9 4,3 7,0 4,0 6,9
6 0,98 1,3 1,6 2,4 3,2 4,5 3,7 6,0
7 0,94 1,2 1,5 2,1 2,8 3,7 3,5 5,4
8 0,92 1,2 1,5 2,0 2,6 3,4 3,4 5,0
9 0,91 1,1 1,4 1,9 2,4 3,1 3,3 4,8
10 0,9 1,1 1,4 1,9 2,4 3,0 3,2 4,6
11 0,89 1,1 1,4 1,9 2,3 2,9 3,1 4,5
12 0,88 1,1 1,4 1,8 2,3 2,8 3,1 4,3
13 0,88 1,1 1,4 1,8 2,2 2,7 3,0 4,2
14 0,88 1,1 1,4 1,8 2,2 2,7 3,0 4,1
15 0,87 1,1 1,4 1,8 2,2 2,7 3,0 4,1
16 0,87 1,1 1,4 1,8 2,2 2,7 2,9 4,0
17 0,87 1,1 1,3 1,8 2,1 2,6 2,9 4,0
18 0,87 1,1 1,3 1,8 2,1 2,6 2,9 3,9
19 0,87 1,1 1,3 1,7 2,1 2,6 2,9 3,9
20 0,86 1,1 1,3 1,7 2,1 2,6 2,6 3,3
0,86 1,1 1,3 1,7 2,1 2,6
 0,86 1,1 1,3 1,7 2,1 2,6
0,84 1,0 1,3 1,6 2,0 2,5

2.1. Тікелей өлшеу қателігін есептеуге мысал
Есеп №1. Металл кесіндісінің L ұзындығына өлшеу жүргізілген. 10
өлшем жүргізіліп, келесі мәндер алынған: 10 мм, 11 мм, 12 мм, 13 мм, 10 мм,
10 мм, 11 мм, 10 мм, 10 мм, 11 мм. Өлшенген шаманың (металл кесіндісінің

ұзындығының) L орташа мәнін және оның L абсолютті қателігін табу

қажет.
Шешуі. (1)-формуланы қолданып, L ұзындықтың орташа мәнін

табамыз

10

L = i=1 Li = 10 +11 +12 +13 +10 +10 +11 +10 +10 +11 = 10,8 мм .
10 10

Енді (2) формуланы қолданып, сенімділік ықтималдылығы  = 0,95

және еркіндік дәрежесінің саны f = n −1 = 10 −1 = 9 (кестеден алынған t0.95,9

=2,262 мәнін қолданайық) болған кездегі L орташа мәннің L абсолютті

қателігін табамыз:

53

L = t0.95,9 ( )10 Li − L 2

i=1 = 2, 26 
n(n −1)

(10 −10,8)2 + (11−10,8)2 + (12 −10,8)2 + (13 −10,8)2 + (10 −10,8)2 + (10 −10,8)2 + (11−10,8)2 + (10 −10,8)2 + (11−10,8)2

 = 0,7.
10 9

Нәтижесін жазайық:
L =10,8±0,70.95 мм

2.2. Жанама өлшеу қателігін есептеуге мысал

Есеп №2. Q және R шамаларына 5 рет тікелей өлшеу жүргізілген. Q

шамасы үшін мына мәндер алынған: 50, 51, 52, 50, 47; R шамасы үшін

мына мәндер алынған: 500, 510, 476, 354, 520. S = ln(Q  R) формуласымен

анықталатын S шамасының мәнін есептеп, және алынған мәннің қателігін
табу қажет.

Шешуі: (1)-формула бойынша Q және R шамаларының орташа мәнін

табамыз:

5
Q
= Qi = 50 + 51 + 52 + 50 + 47 = 50;

i =1

55

5
R
= Ri = 500 + 510 + 476 + 354 + 520 = 472.

i =1

55
S -ті есептейміз: S = ln (Q  R ) = ln(50  472) = 10,07.

Кестеден сенімділік ықтималдылығы  = 0,95 және еркіндік
дәрежесінің саны f = n −1 = 5 −1 = 4 болған кездегі t0.95,9 =2,262 мәнін
табайық. (2)-формула бойынша Q және R шамаларыныңорташа мәндерінің
қателіктерін есептейік:

( )n 2 5 (50 50)2 + (51 50)2 (52 50)2 (50 50)2 + (47 50)2

 
Qi − Q − − + − + − −

Q = t ,n−1 i=1 = 2,78  i=1 54 = 2,32;

n(n −1)

( )n 2 5 (500 472)2 (510 472)2 (476 472)2 (354 472)2 (520 472)2

 
Ri −R − + − + − + − + −

R = t ,n−1 i=1 = 2,78  i=1 54 = 84,5.

n(n −1)

(3) формуланы қолданып, S шамасының орташа мәнінің салыстырмалы
қателігін табамыз:

54

S = S 100% = pm=1 f  K p 2 100% =  R  1  Q 2 +  Q  1  R 2 100% =
S K p Kp  Q Q R R

=  472  1  2,32 2 + 50  1  84,5 2 100% = 44%.
 50 50   472 472 

S шамасының орташа мәнінің абсолют қателігін табамыз:

S =  S  S = 44% 10,07 = 4,43;

100% 100%

Нәтижесін жазайық: S = 10,07  4,430,95

Есеп № 3 Зертханалық жұмыста цилиндр тәрізді дене зерттеледі.

Оның көлемі V =  r2h формуласымен анықталады. Жұмыста диаметр

өлшенетіндіктен, бұл формуланы былай жазамыз:

V = D2  h
4

мұндағы D-цилиндр диаметрі, h- цилиндр биіктігі.

Салыстырмалы қателік: V = V =  + 2D + h .
V  D h

Абсолютті қателік: V = V V , өлшеу нәтжесі V = (V  V )см3.

4.9. Өлшеу нәтижелерін өңдеу (Бурсиан Э.В. 89-бет).
Тікелей өлшеудің қателігі. Кез келген шаманы өлшеу кем дегенде үш

рет жүргізіледі және кестеге жазылады. Егер өлшеу кезінде нәтижелер бірдей

(ауытқу жоқ) болса, онда дәлдік, қолданылған аспаптың жетілмегендігімен,
шектелген (жүйелік қателік). Мысалы, механикалық және электронды

таразыны алуға болады.] Бұл жағдайда қателік ретінде аспаптың

градуирлеу қателігін аламыз. Градуирлеу қателігі аспаптың дәлдік

класымен немесе шкаланың ең аз шамасы бойынша анықталады.

Дәлдік класы – аспаптың абсолютті қателігін анықтауға мүмкіндік

беретінпараметр ( М әрпімен белгіленеді). Анықтама бойынша дәлдік класы –
бұл пайызбен өрнектелген, шкала ұзындығы бірлігіндегі абсолют қателіктің

шкаланың барлық ұзындығына қатынасы:

M = L 100% ,

L

мұндағы L- өлшенетін шамаға сәйкес келетін бірлікте өрнектелген
шкаланың барлық ұзындығы; L шкаланы градуирлеу қателігі.

Егер мәндердің ауытқуы градуирлеу қателігінен асатын болса, онда

өлшеулер көпрет жүргізеді.

Ауытқу қателігін (кездейсоқ қателікті) келесі ереже бойынша есептейді:

Орташа арифметикалық шаманы табады:

x = 1 n xi . (4.9.1)
n i=1

55

Дисперсияны (орташадан орташа квадраттық ауытқуды) бағалайды:

1
n −1
  (xi − x)2 . (4.9.2)

i

Абсолютті қателікті мына формула бойынша табады

x = t  , (4.9.3)
n

мұндағы t − n өлшеулер саны мен х қателікті көрсеткіміз келетін р

ықтималдылыққа тәуелді Стьюдент коэффициенті.
р = 0,95 болған кездегі t мәндері 4.9.1. кестеде көрсетілген. Алынған

х (ауытқу қателігі) аспаптың градуирлеу қателігімен салыстырылады да,
олардың ең үлкенін алады.

Егер ауытқу мен градуирлеу қателіктері шамалас болса, толық қателікті

осы қателіктер квадратының қосындысынан квадрат түбір алып есептеуге

болады.

Нәтиже былай жазылады: х = х  х.

Стьюдент коэффициентінің өлшеулер санына байланысты 95% сенімді

ықтималдыққа арналған кестесі

n2 3 4 5 6 7 8 9 10 …. …. 

t 12,71 4,30 3,18 2,78 2,45 2,45 2,36 2,31 2,26 …. …. 2

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

A = a3 sin (4.9.4)
b

және a, b,  шамалары a, b,  қателіктерімен тәжірибеден табылатын

болса, онда А абсолют қателік пен А / A салыстырмалы қателікті табу

үшін (4.9.4) формуласын логарифмдеп, (4.9.5)

ln A = 3ln a − lnb + ln(sin)

дифференциал алу қажет:

dA = 3 da − db + d (sin  ) (4.9.6)
A a b sin( )

Дифференциалдарды өсімшелерге алмастырып (da → a; db → b;

d(sin) → cos) және қателіктердің таңбалары оң және теріс

болғандығын ескеріп, « – »таңбаны « + » таңбаға алмастырып, берілген
(4.9.4) формуласы үшін максимумсалыстырмалы қателікті табамыз

A = 3 a + b +  . (4.9.7)
A a b tg

Бұл формуланы ең қарапайым есептеулерде қолдануға болады. Бірақ та,
a, b,  таңбалары түрліше болу ықтималдылығы көбірек, ол кезде A/ A

56

қателігі максимумнан аз болады. Ықтималдылықтар теориясында,
ықтималдылық қателігін орташа квадраттық сияқты табатанын көрсетеді:

A =  A a 2 +  A b 2 +  A  2 . (4.9.8)
 a   b    

Біздің жағдайымызда (4.9.4) формуласы үшін есептесек

A = 3 a 2 +  b 2 +   2 . (4.9.9)
A a   b   tg 
 

A/ A шамасы (4.9.7) өрнегінен алынғаннан мәннен аз болады. Оны,
әдетте, эксперимент нәтижелерінде салыстырмалы қателік деп көрсетеді.

Жанама өлшеулер нәтижелерін өңдеген кезде әуелі A/ A -ны (4.9.9)
формуласымен табу керек немесе (4.9.7) формуласымен бағалау қажет.

Осыдан кейін ғана А-ны жұмыстық формуланы (мысалы, 4.9.4 формуласы

бойынша) есептеуге болады. Мұндай кезекпен есептеу A нәтижесін қандай

санға дейін есептеуге болатынын білуге қажет. Мысалы, егер

A / A = 0,1 =10% болса, онда A-ны екі саннан артыққа есептеуге болмайды,

себебі, мұндай қателік кезінде келесі сандардың мағынасы жоқ.

Сосын A -ны А/ A -ға көбейтіп А -ны есептейді және жауабы былай
жазылады A  А .

A  A.

Практикалық сабақ №4. Тікелей және жанама өлшеудің
қателіктерін есептеуге программа жазу

2.1. Тікелей өлшеу қателігін есептеуге мысал

Есеп №1. Металл кесіндісінің L ұзындығына өлшеу жүргізілген. 10
өлшем жүргізіліп, келесі мәндер алынған: 10 мм, 11 мм, 12 мм, 13 мм, 10 мм,

10 мм, 11 мм, 10 мм, 10 мм, 11 мм. Өлшенген шаманың (металл кесіндісінің

ұзындығының) L орташа мәнін және оның L абсолютті қателігін табу

қажет.
Шешуі. (1)-формуланы қолданып, L ұзындықтың орташа мәнін

табамыз

10
 Li
L = = 10 +11+12 +13 +10 +10 +11+10 +10 +11 = 10,8 мм.
i=1

10 10

Енді (2) формуланы қолданып, сенімділік ықтималдылығы  = 0,95

және еркіндік дәрежесінің саны f = n −1 = 10 −1 = 9 (кестеден алынған t0.95,9

=2,262 мәнін қолданайық) болған кездегі L орташа мәннің L абсолютті

қателігін табамыз:

57

L = t0.95,9 ( )10 Li − L 2

i=1 = 2,26 
n (n −1)

 (10 −10,8)2 + (11 −10,8)2 + (12 −10,8)2 + (13 −10,8)2 + (10 −10,8)2 + (10 −10,8)2 + (11 −10,8)2 + (10 −10,8)2 + (11 −10,8)2 = 0,7.

10  9

Нәтижесін жазайық:
=10,8±0,70.95 мм

Python тіліндегі программасы

#Математикалық кітапхананы шақыру
import math
print('Металл кесіндісінің ұзындығына өлшеу жүргізілген. 10
өлшем жүргізіліп, келесі мәндер алынған: ')
print('10 мм, 11 мм, 12 мм, 13 мм, 10 мм, 10 мм, 11 мм, 10 мм,
10 мм, 11 мм. ')
print('Өлшенген шаманың (металл кесіндісінің ұзындығының) Lopt
орташа мәнін және оның Labs абсолютті қателігін табу қажет. ')
i=0
k=0
# m=2.3 Стьюдент коэфициенті
m=2.3
n = int (input("Өлшенген шаманың саны: "))
#L арқылы бос тізім енгізіп аламыз
L = []
# for операторы арқылы өлшеуде жазылған мәндерді енгіземіз
for i in range(0, n):

mani = int(input("Өлшеу мәні: "))
L.append(mani)

# Lort- өленген шаманың арифметикалық ортасы
Lort = sum(L)/n
print('Lort= ',Lort, 'мм','өлшенген шаманың арифметикалық орташа
мәні')
for i in range(0, n):

k = float(k + (L[i]-Lort) ** 2)
Labs=m*(math.sqrt(k)/math.sqrt((n*(n-1))))
print ('Labs=', round(Labs, 2) , 'мм','өлшенген шаманың
абсолюттік қателігі', )
print(' Өлшеу нәтижесі L=10.8±0.75 мм')

Программалау нәтижесі

Металл кесіндісінің ұзындығына өлшеу жүргізілген. 10 өлшем
жүргізіліп, келесі мәндер алынған:
10 мм, 11 мм, 12 мм, 13 мм, 10 мм, 10 мм, 11 мм, 10 мм, 10
мм, 11 мм.
Өлшенген шаманың (металл кесіндісінің ұзындығының) Lopt
орташа мәнін және оның Labs абсолютті қателігін табу қажет.
Өлшенген шаманың саны: 10
Өлшеу мәні: 10
Өлшеу мәні: 11
Өлшеу мәні: 12

58

Өлшеу мәні: 13
Өлшеу мәні: 10
Өлшеу мәні: 10
Өлшеу мәні: 11
Өлшеу мәні: 10
Өлшеу мәні: 10
Өлшеу мәні: 11
Lort= 10.8 мм өлшенген шаманың арифметикалық орташа мәні
Labs= 0.75 мм өлшенген шаманың абсолюттік қателігі

Өлшеу нәтижесі L=10.8±0.75 мм

Process finished with exit code 0

2.2 Жанама өлшеу қателігін есептеуге мысал

Есеп № 2. Q және R шамаларына 5 рет тікелей өлшеу жүргізілген. Q

шамасы үшін мына мәндер алынған: 50, 51, 52, 50, 47; R шамасы үшін

мына мәндер алынған: 500, 510, 476, 354, 520. S = ln(Q R) формуласымен

анықталатын S шамасының мәнін есептеп, және алынған мәннің қателігін
табу қажет.

Шешуі: (1)-формула бойынша Q және R шамаларының орташа мәнін

табамыз:

5
Q
= Qi = 50 + 51 + 52 + 50 + 47 = 50;

i =1

55

5
R
= Ri = 500 + 510 + 476 + 354 + 520 = 472.

i =1

55

S -ті есептейміз: S = ln (Q  R ) = ln(50  472) = 10,07 .

Кестеден сенімділік ықтималдылығы  = 0,95 және еркіндік
дәрежесінің саны f = n −1 = 5 −1 = 4 болған кездегі t0.95,9 =2,262 мәнін
табайық. (2)-формула бойынша Q және R шамаларының орташа мәндерінің
қателіктерін есептейік:

( )n 2 5 (50 50)2 (51 50)2 (52 50)2 (50 50)2 (47 50)2

 
Qi − Q − + − + − + − + −

Q = t ,n−1 i=1 = 2,78  i=1 54 = 2,32;

n(n −1)

( )n 2 5 (500 − 472)2 + (510 472)2 + (476 − 472)2 + (354 − 472)2 (520 − 472)2

 
Ri −R − +

R = t ,n−1 i=1 = 2,78  i=1 54 = 84,5.

n(n −1)

(3) формуланы қолданып, S шамасының орташа мәнінің салыстырмалы
қателігін табамыз:

59

S = S 100% = pm=1 f  K p 2 100% =  R  1  Q 2 +  Q  1  R 2 100% =
S K p Kp  Q Q R R

=  472  1  2,32 2 + 50  1  84,5 2 100% = 44%.
 50 50   472 472 

S шамасының орташа мәнінің абсолют қателігін табамыз:

S =  S  S = 44% 10,07 = 4,43;

100% 100%

Нәтижесін жазайық:

S = 10,07  4,430,95 .

Pyrhon тіліндегі программасы

import math
print(

'Q және R шамаларына 5 рет тікелей өлшеу жүргізілген.Q
шамасы үшін мына мәндер алынған Q шамасы үшін мына мәндер
алынған ')
print('50,51,52,50,47. R шамасы үшін мына мәндер алынған:
500,510,476,354,520. S= (Q*R) формуласымен анықталатын')
print('S шамасының мәнін есептеп, және алынған мәннің қателігін
табу қажет')
n = int(input('Q шамасының саны'))
k=0
# m=2.3 Стьюдент коэфициенті
m = 2.3
# Q арқылы бос тізім енгізіп аламыз
Q = []
for i in range(0, n):

mani = int(input("Q шамасының өлшеу мәні: "))
Q.append(mani)
# Rort- өлшенген шаманың арифметикалық орташа мәні
Qort = sum(Q) / n
print('Qort=', Qort, 'Q шамасы үшін арифметикалық орташа мәні')
t = int(input('R шамасының саны'))
# R арқылы бос тізім енгізіп аламыз
R = []
for i in range(0, t):
man = int(input("R шамасының өлшеу мәні: "))
R.append(man)

# Rort- өлшенген шаманың арифметикалық орташа мәні
Rort = sum(R) / t
print('Rort=', Rort, 'R шамасы үшін арифметикалық орташа мәні')
Sort = math.log(Qort * Rort)
print('Sort=', round(Sort, 2), ' өлшенген шаманың орташа мәні')
# Q шамасы үшін абсолюттік қателікті табамыз
for i in range(0, n):

k = float(k + (Q[i] - Qort) ** 2)
Qabs = m * (math.sqrt(k) / math.sqrt((n * (n - 1))))

60

for i in range(0, t):
k = float(k + (R[i] - Rort) ** 2)
Rabs = m * (math.sqrt(k) / math.sqrt((t * (t - 1))))

Sabs = math.log(Qabs * Rabs)
print('Sabs=', round(Sabs, 2), 'өлшенген шаманың абсолюттік
қателігі', )
e = (Sabs / Sort) * 100
Sorts = (Sabs / Sort) * 100
print('Sorts=', round(Sorts, 3), 'S шамасының орташа мәнінің
салыстырмалы қателігі')
# (' S шамасының орташа мәнінің абсолют қателігін табамыз')
Sortabs = (Sorts * Sort )/ 100
print('Sortabs=', round(Sortabs, 2), 'S шамасының орташа мәнінің
абсолют қателі')
print('Өлшенген шаманың нәтижесі S=10.07±',Sortabs)

Программалау нәтижесі:

Q және R шамаларына 5 рет тікелей өлшеу жүргізілген.Q шамасы
үшін мына мәндер алынған Q шамасы үшін мына мәндер алынған
50,51,52,50,47. R шамасы үшін мына мәндер алынған:
500,510,476,354,520. S= (Q*R) формуласымен анықталатын
S шамасының мәнін есептеп, және алынған мәннің қателігін табу
қажет
Q шамасының саны5
Q шамасының өлшеу мәні: 50
Q шамасының өлшеу мәні: 51
Q шамасының өлшеу мәні: 52
Q шамасының өлшеу мәні: 50
Q шамасының өлшеу мәні: 47
Qort= 50.0 Q шамасы үшін арифметикалық орташа мәні
R шамасының саны5
R шамасының өлшеу мәні: 500
R шамасының өлшеу мәні: 510
R шамасының өлшеу мәні: 476
R шамасының өлшеу мәні: 354
R шамасының өлшеу мәні: 520
Rort= 472.0 R шамасы үшін арифметикалық орташа мәні
Sort= 10.07 өлшенген шаманың орташа мәні
Sabs= 4.9 өлшенген шаманың абсолюттік қателігі
Sorts= 48.684 S шамасының орташа мәнінің салыстырмалы қателігі
Sortabs= 4.9 S шамасының орташа мәнінің абсолют қателі
Өлшенген шаманың нәтижесі S=10.07± 4.9

Process finished with exit code 0

Зертханалық жұмыс №4. Математикалық маятник көмегімен еркін
түсу үдеуін анықтау

Қажетті құралдар: Тілшесі бар сағат, өлшеу қателігі l = 0,5 см лента,
кішкене саңылауы бар шарик, жіп, штатив.

61

Теориялық бөлім
Еркін түсу үдеуін өлшеу үшін әртүрлі гравиметрлер пайдаланады,

көбінесе маятникті құралдар. Олардың көмегімен шамамен 10−5 м / с2

абсолютті қателікпен еркін түсу үдеуін өлшеуге болады.
Жұмыс кезінде қарапайым маятник құрал – жіпке ілінген шар

қолданылады. Шариктің өлшемі жіптің ұзындығына қарағанда өте аз

(d  L) және орнықтылық орнынан өте аз ауытқулар ( 100) кезінде

тербеліс периоды мынаған тең (1-сурет):

T = 2 l .

g

Периодты өлшеудің дәлдігін арттыру үшін жеткілікті түрде көп N -рет
маятниктің толық тербелісінің t уақытын өлшеу керек. Сонда период:

Т= t .

N

Еркін түсу үдеуі мына формуламен есептеледі:

g = 4 2L  N2 .
t2

Сурет 1. Математикалық маятник

Экспериментті жүргізу тәртібі:

• Штативті үстел шетіне орналастырып, штативке жіпке ілінген шарикті

орнату керек.

• Шарик еденнен 1-2 см жоғары деңгейде болу қажет.

• Сызғыш көмегімен L маятниктің ұзындығын өлшейміз.

• Шарикті орнықтылық жағдайынан 5-8 cм-ге ауытқу жасап, маятникте

тербелісті қоздырамыз.

• Тербеліс саны N=40 тең деп алып, тәжірибені 6 рет қайталап, орташа

уақытты tорт есептеңіз:

tорт = t1 + t2 + .... + tn ,
n

tорт = t1 + t2 + t3 + t4 + t5 + t6 = 59 + 60 + 60 + 61+ 58 + 62 = 60 с.
6 6

• Уақыттың абсолютті қателігін мына формуламен есептеңіздер

62

tорт = t1 − tорт + t2 − tорт + .... + tn − tорт .
n

Кестеге сан мәндерін енгізу

tорт = t1 − tорт + t2 − tорт + t3 − tорт + t4 − tорт + t5 − tорт + t6 − tорт .
6

tорт = 59 − 60 + 60 − 60 + 60 − 60 + 61− 60 + 59 − 60 + 59 − 60 + 61− 60 = 1 с.
6

№ t, c tорт , с t ,с tорт ,с l ,м

1 59 1

2 60 0

3 60 60 0 0,67 1

4 61 1

5 59 1

6 61 1

• Еркін түсу үдеуін формула бойынша есептейік:

gорт = 4 2 lN = 4 2 0,56 м  402  9,8157796м / с2
t2 (60 c)2

орт

Уақытты өлшеудің салыстырмалы қателігін анықтаймыз:

t = t 100% = 0,67 c 100%  1,11% .
t 60 c

Маятниктің ұзындығына байланысты салыстырмалы қателігі:

l = l 100% = 0,5 10−2 м 100%  0,89% .
l 0,56 м

Еркін түсу үдеуінің салыстырмалы қателігі:

g = L + 2t = 0,0089 + 2  0,0111 = 0,0311

g = gорт g = 9,8157796  0,0429 = 0,305

• Өлшеу нәтижесін есептейік:

9,816м / с2 − 0,305м / с2  g  9,816м / с2 + 0,305м / с2

Қорытынды: Маятниктің көмегімен өлшенген еркін түсу үдеуі жіптің
ұзындығы 1 метр болатын еркін түсудің кестелік үдеуіне (g=9,81м/с2) тең
екендігі белгілі болды.

Python тіліндегі программасы

# Математикалық кітапхананы шақыру
import math
t_del = 0.666
n = int(input("Өлшенген шаманың саны: n= "))
# L арқылы бос тізім енгізіп аламыз
t = []
# for операторы арқылы өлшеуде жазылған мәндерді енгіземіз

63

for i in range(0, n):
mani = int(input("Өлшеу мәні: "))
t.append(mani)

# l-математикалық маятниктің ұзындығы l=0.56м
l = 0.55
# N=40 тербеліс саны
N = 40
t_ort = sum(t) / n
print('t_ort=', round(t_ort, 2),'t уақыттың орташа мәні')
g_ort = 4 * (math.pi) ** 2 * l * N ** 2 / t_ort ** 2
print('Еркін түсу үдеуінің орташа мәні g=', round(g_ort, 4),
'м/с^2')
# Уақытты өлшеудің салыстырмалы қатесін анықтаңыз
e_t = t_del / t_ort
print('Уақытты өлшеудің салыстырмалы қатесі e_t=', round(e_t,
3), 'c')
# Маятниктің ұзындығын өлшеудің салыстырмалы қателігін анықтаңыз
# өлшеу лентасының қателігі L_kat=0.005 м
L_kat=0.005
e_l = L_kat / l
# g есептеудің салыстырмалы қателігі
e_g = e_l + 2 * e_t
print('Еркін түсу үдеуін есептеудің салыстырмалы қателігі e_g=',
round(e_g,3), 'м/с^2')
g_del = g_ort * e_g
print('Еркін түсу үдеуін есептеудің абсолют қателігі g_del=',
round(g_del,4), 'м/с^2,')
print('Еркін түсу үдеуін анықтаудың эксперименттік нәтижесі g=',
round(g_ort,3), '±', round(g_del,3),'м/с^2' )

Программалаудың нәтижесі

Өлшенген шаманың саны: n= 6
Өлшеу мәні: 59
Өлшеу мәні: 60
Өлшеу мәні: 60
Өлшеу мәні: 61
Өлшеу мәні: 59
Өлшеу мәні: 61
t_ort= 60.0 t уақыттың орташа мәні
Еркін түсу үдеуінің орташа мәні g= 9.6503 м/с^2
Уақытты өлшеудің салыстырмалы қатесі e_t= 0.011 c
Еркін түсу үдеуін есептеудің салыстырмалы қателігі e_g= 0.031
м/с^2
Еркін түсу үдеуін есептеудің абсолют қателігі g_del= 0.302
м/с^2,
Еркін түсу үдеуін анықтаудың эксперименттік нәтижесі g= 9.65 ±
0.302 м/с^2

Process finished with exit code 0

64

Дәріс № 5. Бір өлшемді массив. Python программалау тілінде түрлі-
түсті мәтін жазу. Эксперименпен алынған тәуелділіктерді ең кіші

квадраттар әдісімен өңдеу

Массив – бұл бір типті мәліметтердің жүйесі. Массив – Python тіліндегі
бірдей нысандарды сақтау үшін қолданылатын мәліметтердің реттелген
құрылымы болып табылады. Python 3.8-де жаңа массив қоспас бұрын
(жасамас бұрын) осындай объектімен жұмыс істеуге жауапты кітапхананы
импорттау қажет. Ол үшін бағдарлама файлына array import* жолын
қосу керек. Жоғарыда айтылғандай, массивтер бір тұрақты деректер түрімен
өзара әрекеттесуге бағытталған, нәтижесінде олардың барлық элементтері
бірдей мөлшерде болады. Array функциясын қолдана отырып, сіз жаңа
мәліметтер жиынтығын жасай аласыз. Келесі мысалда Python массивін
толтыру көрсетілген. Жоғарыда ұсынылған әдісті қолдана отырып бүтін
сандарды жазу.

65

Бір өлшемді массив келесі түрде жарияланады:
Массивтің аты =array[Төменгі индекс..Жоғарғы индекс]

Түсіндірме: Массивтің аты арқылы меншіктеу array (эрей), квадрат жақша
ашылады, Төменгі индекс, диапазон символы ретінде – үтір. Жоғарғы
индекс, квадрат жақша жабылады.

Мысалы:

а=array[1..3] b=array[1..3]

Біз массивті жариялайық:
массивтің аты а, үш ұяшықтан тұрады және b[1] b[2] b[3]
4.5 3.4 7.8
элементтерінің типі int.

Массивті таблица түрінде бейнелеуге

болады. Әрбір ұяшықтың өз мәні бар.

Ұяшықтың қалай жазылатынына назар

аударайық: әуелі массивтің аты жазылады,

сосын квадрат жақшаның ішінде ұяшықтың

нөмірі жазылады.

a[1] a[2] a[3]
5 34 78

Есеп қарастырайық: Тікелей өлшеу кезіндегі эксперимент
нәтижелерінің орташа арифметикалық мәнін және абсолютті қателігін табу
керек.

Python тіліндегі программасы

print('L өлшенген шаманың Lopt орташа мәнін және оның Labs
абсолютті қателігін табу қажет. ')
i=0
k=0
import math
from array import*
# m=2.3 Стьюдент коэфициенті
m=2.3
n = int (input("Өлшенген шаманың саны: "))
#L арқылы бос тізім енгізіп аламыз
L=array('i',[ ])
# for операторы арқылы өлшеуде жазылған мәндерді енгіземіз
for i in range(0, n):

mani = int(input("Өлшеу мәні: "))
L.append(mani)
# Lort- өлшенген шаманың арифметикалық ортасы
Lort = sum(L)/n
print('Lort= ',Lort, 'өлшенген шаманың арифметикалық орташа
мәні')

66

for i in range(0, n):
k = float(k + (L[i]-Lort) ** 2)
Labs=m*(math.sqrt(k)/math.sqrt((n*(n-1))))

print ('Labs=', round(Labs, 2) ,'өлшенген шаманың абсолюттік
қателігі', )
print(' Өлшеу нәтижесі L=',Lort, '±',round(Labs, 2))

Программалау нәтижесі

L Өлшенген шаманың Lopt орташа мәнін және оның Labs абсолютті
қателігін табу қажет.
Өлшенген шаманың саны: 5
Өлшеу мәні: 5
Өлшеу мәні: 7
Өлшеу мәні: 4
Өлшеу мәні: 6
Өлшеу мәні: 8
Lort= 6.0 өлшенген шаманың арифметикалық орташа мәні
Labs= 1.63 өлшенген шаманың абсолюттік қателігі

Өлшеу нәтижесі L= 6.0 ± 1.63

Python программалау тілінде түрлі-түсті мәтін жазу
Python мәтінді консольге кез-келген түсте шығаруға жеткілікті
құралдарға ие. Бұл тұжырым арнайы дағдыларды қажет етпейді, кодтың
бірнеше жолында жүзеге асырылады және маңызды ақпаратты бөлектеу үшін
де және мәтінге эффект беру үшін де қолданылады.
Мәтінді түрлі-түсті етіп жасаудың екі әдісі бар: кіріктірілген тіл немесе
кітапхана құралдарын қолдану арқылы жасайды.
Кіріктірілген тіл құралдарының көмегімен Python-да мәтінді ANSI
кодтары арқылы өзгертуге болады. Бұл өте универсалды және ыңғайлы
құрал, оның көмегімен программист мәтіннің түсін тікелей анықтай алады.
ANSI кодтарын пайдалану оңай, ол үшін сіз негізгі синтаксисті және
кодтардың өзін білуіңіз керек. Мысалы мына кодты талдайық: \033 [31m\033

[43m»:
/ 033 – бұдан әрі қандай да бір түсті басқару коды бар екенін белгілеу;
[31m – мәтін түсі (қызыл);
[43m – фон түсі (сары).
Мұны консольге шығарғаннан кейін, көрсетілген ақпарат сары фонда

қызыл болады. Бастапқы мәндерге қалпына келтіру: \033 [0m.
Негізгі кодтар:
\033[0-7m — бұл астын сызу, жыпылықтау, және т. б. сияқты әртүрлі

әсерлер;
\033[30-37m — мәтін түсін анықтайтын кодтар (қара, қызыл, жасыл,

сары, көк, күлгін, көк-көк, сұр);
\033[40-47m — фон түсін анықтайтын кодтар.

Түстер Эффектілер

Түс Мәтін Фон
коды коды

67

Қара 30 40 Код Мағынасы
Қызыл 31 41 1 Бастапқы мәнге қайта оралу
Жасыл 32 42 2 Қалың
Сары 33 43 3 Блекты
Көк 34 44 4 Курсивті
Күлгін 35 45 5 Аз жыпылықтау
Көгілдір 36 46 6 Жиі жыпылықтау
Ақ 37 47

Мысалы: 7 Фон түсін мәтін түсімен өзгерту

Python тіліндегі

программасы
def out_red(text):

print("\033[31m {}" .format(text))

def out_yellow(text):

print("\033[33m {}" .format(text))

def out_blue(text):

print("\033[34m {}" .format(text))

out_red("Вывод красным цветом")

out_yellow("Текст жёлтого цвета")

out_blue("Синий текст")

Программалау нәтижесі
Вывод красным цветом

Текст жёлтого цвета

Синий текст

ЕСЕП: Жираф қозғалысының максималды жылдамдығын артыра
отырып 23 секундта 335,8 м-ге дейін жүгіреді, қоян 55 секундта 918,5 м-ге
дейін жүгіреді. Осы жануарлардың қайсысына олардың жылдамдығын
салыстыра отырып чемпион атағын бересіз?

Берілгені: Шешуі: Жираф пен қоянның жылдамдығы мына
t1 = 23 c
s1 = 335,8 м формуламен анықтаймыз: = s .
t
t2 = 55 c
s2 = 918,5 м 1 = s1 = 335,8 = 14,6 м 2 = s2 = 918,5 = 16,7 м
1 − ? 2 − ? t1 23 с; t2 55 с.

Python тілінде программалау

print('Жираф қозғалысының максималды жылдамдығын артыра отырып
23 секундта 335,8 м-ге дейін жүгіреді,'

' қоян 55 секундта 918,5 м-ге дейін жүгіреді. '
'Осы жануарлардың қайсысына олардың жылдамдығын салыстыра
отырып чемпион атағын бересіз?')
s1=float(input('Жирафтың жүрген жолы s1=', ))

68

t1=int(input('Жирафтың уақыт көрсеткіші t1=',))
s2=float(input('Қоянның жүрген жолы s2=', ))
t2=int(input('Қоянның уақыт көрсеткіші t2=', ))
v1= int(s1/t1)
v2=int(s2/t2)
if v1== v2:

def out_red(text):
print("\033[31m {}".format(text))
out_red("Достық жеңді")

elif v1>v2:
def out_yellow(text):
print("\033[33m {}".format(text))
out_yellow('Жираф-чемпион')

else:
def out_blue(text):
print("\033[34m {}".format(text))
out_blue('Қоян-жеңімпаз')

Программалау нәтижесі

Жираф қозғалысының максималды жылдамдығын артыра отырып
23 секундта 335,8 м-ге дейін жүгіреді, қоян 55 секундта
918,5 м-ге дейін жүгіреді. Осы жануарлардың қайсысына
олардың жылдамдығын салыстыра отырып чемпион атағын
бересіз?
Жирафтың жүрген жолы s1=335.8
Жирафтың уақыт көрсеткіші t1=23
Қоянның жүрген жолы s2=918.5
Қоянның уақыт көрсеткіші t2=55

Қоян-жеңімпаз

4.10. Эксперименпен алынған тәуелділіктерді өңдеу.
Ең кіші квадраттар әдісі

Айталық, y шамасы x − ке тәуелді және эксперимент нәтижесінде

көптеген (xi, yi ) жұп мәндері алынған болсын. Сондай-ақ, y(x) тәуелділігі
сызықты функция болу қажет:

y = M + k x. (4.10.1)

Бірақ та, өлшеулер қателігіне байланысты алынған (xi , yi ) нүктелері бір

түзудің бойында жатпайды (1-сурет). Ізделінді түзудің ең мүмкін болатын
жолын қалай табуға болады (Бурсиан Э.В., 92-бет).

69

Cурет 1. y(x) тәуелділік графигі. Эксперименттік y1, у2, у3 нүктелері мен
сәйкесінше y есептеу нүктелері көрсетілген

Эксперименттік нүкте бойынша түзуді дұрыс жүргізуге болады, егер

( yi − y)2 минимум болса, (суретті қараңыз), яғни y = M + Kx түзу теңдеуі

i

үшін М және К коэффициенттерін F (M , K ) = ( yi − y)2 өрнегі минимум
i

болатындай етіп табу қажет. Ол үшін

F = 0; F = 0.
M K
Осы өрнекке F(M , K) және y = M + kx теңдеулерін қойып,

дифференциалдағаннан кейін M және K коэффициенттерін табуға болады:

M = BC − AD K = B − NM , (4.10.2)
NC − A2 ; A

мұндағы

   A = xi; B = yi; C = xi2; D = xi yi . (4.10.3)

i i=1 i i

ал N-өлшеулер саны, яғни (xi , yi ) жұптарының саны. (4.10.3)-формуладағы

қосындыларды және М және К коэффициенттерін табу үшін Python тілінде

программа құруға болады.

Толығырақ тоқталсақ:

n

F (M , K ) = ( yi − (M + Kxi ))2 → min
i =1

Енді дифференциалдық есептеулердегі белгілі әдіс бойынша F-тің M және K
бойынша алынған дербес туындыларын нөлге теңестіреміз, сонда

=F n (Kxi + M − yi )xi = 0,

K 2

i=1

F n +M − yi )xi = 0.

M = 2 (Kxi

i=1

Мұны ықшамдап теңдеулердің мынадай қалыпты жүйесін айтамыз.

70

n nn

  K xi2 + M xi2 = xi yi ,
i=1 i=1 i=1

nn

K  xi + M  n =  yi.
i=1 i=1

Мұндағы xi , yi мәндері эксперименттен алынған мәліметтер бойынша
беріледі. Осы жүйе ең кіші квадрат әдісінің нормалданған жүйесі деп

аталады. Сонымен жүйені М және К бойынша шешіп, олардың мәндерін

анықтаймыз:

   K = nxi yi −
 nxi2 − (
xi yi , M= yi − K xi .
xi )2 n

Python тіліндегі программасы

print('ЕҢ кіші квадраттар әдісі')

print ('Айталық, y шамасы х − ке тәуелді және эксперимент
көптеген х y жұп мәндері алынған болсын')
print ('Сондай-ақ, y(x) тәуелділігісызықты функция болу қажет:
у=М+Кх түзуі болсын. ')
print ('Бірақ та, өлшеулер қателігіне байланысты алынған х және
y нүктелері біртүзудің бойында жатпайды (55-сурет).')
print (' Ізделінді түзудің ең мүмкін болатын жолын қалай табуға
болады')
A=0
B=0
C=0
D=0
i=0
n=3
x = []
for i in range(0, n):

mani = float(input( "х нүктеcінің мәні: "))
x.append(mani)
A = A + x[i]
print('A=',round (A, 2))
y = []
for i in range(0, n):
man = float(input( "y нүктеcінің мәні: "))
y.append(man)
B = B + y[i]
print('B=',round (B, 2))
for i in range(0, n):
C = C + (x[i]) ** 2
D = D + x[i] * y[i]
print('C=', round ( C, 2))
print('D=', round (D, 2))
K=(n*D-A*B)/(n*C-A**2)
M=(B-K*A)/n
print ('K=', round (K, 2))
print ('M=', round (M, 2))
for i in range(0, n):

71

y1 = M + K * x[i]
print('y=M+', x[i],'*K')
print (i+1,'-нүктедегі у мәні', 'y=', round(y1,4))

Программалау нәтижесі
ЕҢ кіші квадраттар әдісі
Айталық, y шамасы х-ке тәуелді және эксперимент
көптеген х y жұп мәндері алынған болсын
Сондай-ақ, y(x) тәуелділігісызықты функция болу қажет:
у=М+Кх түзуі болсын.
Бірақ та, өлшеулер қателігіне байланысты алынған х
және y нүктелері біртүзудің бойында жатпайды (55-
сурет).

Ізделінді түзудің ең мүмкін болатын жолын қалай табуға
болады
х нүктеcінің мәні: 2
х нүктеcінің мәні: 4
х нүктеcінің мәні: 6
A= 12.0
y нүктеcінің мәні: 7
y нүктеcінің мәні: 5
y нүктеcінің мәні: 3
B= 15.0
C= 56.0
D= 52.0
K= -1.0
M= 9.0
y=M+ 2.0 *K
1 -нүктедегі у мәні y= 7.0
y=M+ 4.0 *K
2 -нүктедегі у мәні y= 5.0
y=M+ 6.0 *K
3 -нүктедегі у мәні y= 3.0

Практикалық сабақ №5. Тікелей және жанама өлшеулер кезіндегі
абсолюттік және салыстырмалы қателіктерді массив арқылы есептеу

2.1. Тікелей өлшеу қателігін есептеуге мысал
Есеп №1. Металл кесіндісінің L ұзындығына өлшеу жүргізілген. 10
өлшем жүргізіліп, келесі мәндер алынған: 10 мм, 11 мм, 12 мм, 13 мм, 10 мм,
10 мм, 11 мм, 10 мм, 10 мм, 11 мм. Өлшенген шаманың (металл кесіндісінің

ұзындығының) L орташа мәнін және оның L абсолютті қателігін табу

қажет.
Шешуі. (1)-формуланы қолданып, L ұзындықтың орташа мәнін

табамыз

72

10
L
= Li = 10 +11+12 +13 +10 +10 +11+10 +10 +11 = 10,8 мм.

i=1

10 10

Енді (2) формуланы қолданып, сенімділік ықтималдылығы  = 0,95

және еркіндік дәрежесінің саны f = n −1 = 10 −1 = 9 (кестеден алынған t0.95,9

=2,262 мәнін қолданайық) болған кездегі L орташа мәннің L абсолютті

қателігін табамыз:

L = t0.95,9 ( )10 Li − L 2

i=1 = 2,26 
n (n −1)

(10 −10,8)2 + (11 −10,8)2 + (12 −10,8)2 + (13 −10,8)2 + (10 −10,8)2 + (10 −10,8)2 + (11 −10,8)2 + (10 −10,8)2 + (11 −10,8)2

 = 0,7.
10  9

Нәтижесін жазайық:
L =10,8±0,70.95 мм

Python тіліндегі программасы

#Математикалық кітапхананы шақыру
from array import*
import math
print('Металл кесіндісінің ұзындығына өлшеу жүргізілген. 10
өлшем жүргізіліп, келесі мәндер алынған: ')
print('10 мм, 11 мм, 12 мм, 13 мм, 10 мм, 10 мм, 11 мм, 10 мм,
10 мм, 11 мм. ')
print('Өлшенген шаманың (металл кесіндісінің ұзындығының) Lopt
орташа мәнін және оның Labs абсолютті қателігін табу қажет. ')
i=0
k=0
# m=2.3 Стьюдент коэфициенті
m=2.3
n = int(input("Өлшенген шаманың саны: "))
#L арқылы бос тізім енгізіп аламыз
L=[]
# for операторы арқылы өлшеуде жазылған мәндерді енгіземіз
for i in range(0, n):

mani = int(input("Өлшеу мәні: "))
L.append(mani)
# Lort- өлшенген шаманың арифметикалық ортасы
Lort = sum(L)/n
print('Lort= ',Lort, 'мм','өлшенген шаманың арифметикалық орташа
мәні')
for i in range(0, n):
k = float(k + (L[i]-Lort) ** 2)
Labs=m*(math.sqrt(k)/math.sqrt((n*(n-1))))
print ('Labs=', round(Labs, 2) , 'мм','өлшенген шаманың
абсолюттік қателігі', )
print('Өлшеу нәтижесі ',Lort ,'±', round(Labs, 2),'мм')

Программалау нәтижесі

73

Металл кесіндісінің ұзындығына өлшеу жүргізілген. 10 өлшем
жүргізіліп, келесі мәндер алынған:

10 мм, 11 мм, 12 мм, 13 мм, 10 мм, 10 мм, 11 мм, 10 мм, 10
мм, 11 мм.

Өлшенген шаманың (металл кесіндісінің ұзындығының) Lopt
орташа мәнін және оның Labs абсолютті қателігін табу қажет.

Өлшенген шаманың саны: 10
Өлшеу мәні: 10
Өлшеу мәні: 11
Өлшеу мәні: 12
Өлшеу мәні: 13
Өлшеу мәні: 10
Өлшеу мәні: 10
Өлшеу мәні: 11
Өлшеу мәні: 10
Өлшеу мәні: 10
Өлшеу мәні: 11
Lort= 10.8 мм өлшенген шаманың арифметикалық орташа мәні
Labs= 0.75 мм өлшенген шаманың абсолюттік қателігі
Өлшеу нәтижесі 10.8 ± 0.75 мм

2.2. Жанама өлшеу қателігін есептеуге мысал:

Есеп № 2. Q және R шамаларына 5 рет тікелей өлшеу жүргізілген. Q

шамасы үшін мына мәндер алынған: 50, 51, 52, 50, 47; R шамасы үшін

мына мәндер алынған: 500, 510, 476, 354, 520. S = ln(Q R) формуласымен

анықталатын S шамасының мәнін есептеп, және алынған мәннің қателігін
табу қажет.

Шешуі: (1)-формула бойынша Q және R шамаларының орташа мәнін

табамыз:

5

Q =  Qi = 50 + 51 + 52 + 50 + 47 = 50;

i=1

55

5

R =  Ri = 500 + 510 + 476 + 354 + 520 = 472.

i=1

55

S -ті есептейміз: S = ln (Q  R ) = ln(50  472) = 10,07 .

Кестеден сенімділік ықтималдылығы  = 0,95 және еркіндік
дәрежесінің саны f = n −1 = 5 −1 = 4 болған кездегі t0.95,9 =2,262 мәнін
табайық. (2)-формула бойынша Q және R шамаларыныңорташа мәндерінің
қателіктерін есептейік:

74

( )n 2 5 (50 50)2 (51 50)2 (52 50)2 (50 50)2 (47 50)2

 
Qi − Q − + − + − + − + −

Q = t ,n−1 i=1 = 2,78  i=1 54 = 2,32;

n(n −1)

( )n 2 5 (500 − 472)2 + (510 − 472)2 (476 472)2 + (354 − 472)2 + (520 − 472)2

 
Ri −R + −

R = t ,n−1 i=1 = 2,78  i=1 54 = 84,5.

n(n −1)

(3) формуланы қолданып, S шамасының орташа мәнінің салыстырмалы
қателігін табамыз:

S = S 100% = pm=1 f  K p 2 100% =  R  1  Q 2 +  Q  1  R 2 100% =
S K p Kp  Q Q R R

=  472  1  2,32 2 + 50  1  84,5 2 100% = 44%.
 50 50   472 472 

S шамасының орташа мәнінің абсолют қателігін табамыз:
S =  S  S = 44% 10,07 = 4,43;

100% 100%

Нәтижесін жазайық:

S = 10,07  4,430,95 .

Python тіліндегі программасы

import math
from array import*
print('Q және R шамаларына 5 рет тікелей өлшеу жүргізілген.Q
шамасы үшін мына мәндер алынған Q шамасы үшін мына мәндер
алынған ')
print('50,51,52,50,47. R шамасы үшін мына мәндер алынған:
500,510,476,354,520. S= (Q*R) формуласымен анықталатын')
print('S шамасының мәнін есептеп, және алынған мәннің қателігін
табу қажет')
n = int(input('Q шамасының саны'))
k=0
# m=2.3 Стьюдент коэфициенті
m = 2.3
# Q арқылы бос тізім енгізіп аламыз
Q = array('i',[])
for i in range(0, n):

mani = int(input("Q шамасының өлшеу мәні: "))
Q.append(mani)
# Rort- өлшенген шаманың арифметикалық орташа мәні
Qort = sum(Q) / n
print('Qort=',round( Qort,2), 'Q шамасы үшін арифметикалық
орташа мәні')
t = int(input('R шамасының саны'))
# R арқылы бос тізім енгізіп аламыз
R = array('i',[])
for i in range(0, t):
man = int(input("R шамасының өлшеу мәні: "))
R.append(man)

75

# Rort- өлшенген шаманың арифметикалық орташа мәні
Rort = sum(R) / t
print('Rort=', Rort, 'R шамасы үшін арифметикалық орташа мәні')
Sort = math.log(Qort * Rort)
print('Sort=', round(Sort, 2), ' өлшенген шаманың орташа мәні')
# Q шамасы үшін абсолюттік қателікті табамыз
for i in range(0, n):

k = float(k + (Q[i] - Qort) ** 2)
Qabs = m * (math.sqrt(k) / math.sqrt((n * (n - 1))))
for i in range(0, t):
k = float(k + (R[i] - Rort) ** 2)
Rabs = m * (math.sqrt(k) / math.sqrt((t * (t - 1))))
Sabs = math.log(Qabs * Rabs)
print('Sabs=', round(Sabs, 2), 'өлшенген шаманың абсолюттік
қателігі', )
e = (Sabs / Sort) * 100
# print (' S шамасының орташа мәнінің салыстырмалы қателігін
табамыз: ')
Sorts = (Sabs / Sort) * 100
print('Sorts=', round(Sorts, 3), 'S шамасының орташа мәнінің
салыстырмалы қателігі')
# print (' S шамасының орташа мәнінің абсолют қателігін
табамыз')
Sortabs = (Sorts * Sort )/ 100
print('Sortabs=', round(Sortabs, 2), 'S шамасының орташа мәнінің
абсолют қателі')
print('Өлшенген шаманың нәтижесі ',round(Sorts,
3),'±',round(Sortabs,2))

Программалау нәтижесі

Q және R шамаларына 5 рет тікелей өлшеу жүргізілген.Q шамасы
үшін мына мәндер алынған Q шамасы үшін мына мәндер алынған
50,51,52,50,47. R шамасы үшін мына мәндер алынған:
500,510,476,354,520. S= (Q*R) формуласымен анықталатын
S шамасының мәнін есептеп, және алынған мәннің қателігін табу
қажет
Q шамасының саны5
Q шамасының өлшеу мәні: 50
Q шамасының өлшеу мәні: 51
Q шамасының өлшеу мәні: 52
Q шамасының өлшеу мәні: 50
Q шамасының өлшеу мәні: 47
Qort= 50.0 Q шамасы үшін арифметикалық орташа мәні
R шамасының саны5
R шамасының өлшеу мәні: 500
R шамасының өлшеу мәні: 510
R шамасының өлшеу мәні: 476
R шамасының өлшеу мәні: 354
R шамасының өлшеу мәні: 520
Rort= 472.0 R шамасы үшін арифметикалық орташа мәні
Sort= 10.07 өлшенген шаманың орташа мәні
Sabs= 4.9 өлшенген шаманың абсолюттік қателігі
Sorts= 48.684 S шамасының орташа мәнінің салыстырмалы қателігі

76

Sortabs= 4.9 S шамасының орташа мәнінің абсолют қателі
Өлшенген шаманың нәтижесі 48.684 ± 4.9

Зертханалық сабақ № 5. Ең кіші квадраттар әдісі. Ток көзінің
жүктемелік сипаттамасы

Ток көзінің жүктемелік сипаттамасы. Ток көзін оған әр түрлі
резисторларды (кедергілерді) қосып, ток күші i мен ток көзінің

клеммаларындағы U кернеуін өлшеу арқылы зерттеген. Келесідей

мәліметтер алынған:

i, A 0,06 0,11 0,125 0,16 0,22 0,23 0,27 0,29 0,375 0,40

U , B 4,8 4,8 4,4 4,1 4,0 3,6 3,3 3,2 3,0 2,05

Мәліметтерді ең кіші квадрат әдісімен өңдеп, ЭҚК, қысқа тұйықталу тогы
мен ток көзінің ішкі кедергісін анықтауға программа құрыңыздар.

Берілгені:

i1 = 0,06A, i2 = 0,11A, i3 = 0,125A, i4 = 0,16A, i5 = 0, 22A

i6 = 0, 23A, i7 = 0, 27 A, i8 = 0, 29 A, i9 = 0,375A, i10 = 0, 40 A

U1 = 4,8В, U2 = 4,8В, U3 = 4, 4В, U4 = 4,1В, U5 = 4,0В,

U6 = 3,6В, U7 = 3,3В, U8 = 3, 2В, U9 = 3,0В, U10 = 2,05В,

Табу керек:  − ? ik − ? r − ?

Шешуі: Толық тізбек үшін Ом заңын жазайық:

i=  , (1)
R+r

мұндағы r −ішкі кедергі, R −сыртқы кедергі.

U =iR, (2)

мұндағы U − толық тізбектегі кернеу. (2)-теңдікті (1)-теңдікке қойсақ:

U =  − ir . (3)

Ең кіші квадраттар әдісі арқылы есептейік:

y=M +kx, (4)

мұндағы y=U; M= ; K=r; x=i ( және r – тұрақты шамалар). Белгіленген
шамалар бойынша есептеулер жүргізейік:

M = BC − AD ; K = B − NM
NC − A2 A

мұндағы

   A = xi; B = yi;C = xi2; D = xi yi.
i i=1 i i

77

A =  xi = 0,06 + 0,11 + 0,125 + 0,16 + 0,22 + 0,23 + 0,27 + 0,29 + 0,375 + 0,40 = 2,24

i

B =  yi = 4,8 + 4,8 + 4,4 + 4,1 + 4,0 + 3,3 + 3,6 + 3,2 + 3,0 + 2,05 = 37,25
i =1

C = xi2 = (0,06)2 + (0,11)2 + (0,125)2 + (0,16)2 + (0,22)2 + (0,23)2 + (0,27)2 + (0,29)2 + (0,375)2

i

+ (0,40)2 = 0,62

D = xi yi = 0,06  4.8 + 0.11 4,8 + 0.125  4,4 + 0,16  4.1 + 0,22  4 + 0,23  3,3 + 0,27  3,6 +

i

+ 0,29  3,2 + 0,375  3,0 + 0,40  2,05 = 7.51
М және К коэффициенттерін есептейік:

K = nD − AB = 10  7,51 − 2,24  37,25 = −7.540
nC − A2 10  0,62 − (2,24)2

37,25 −

M = B − K  A = 37,25 − (−7,540)  2,24 = 5,394
n 10

(4)- теңдеу арқылы есептесек
y1 = M + kx1 = 5,394 + (−7.540)  0.06 = 4,947

y2 = M + kx2 = 5,394 + (−7.540)  0.11 = 4,574

y3 = M + kx3 = 5,394 + (−7.540)  0.125 = 4,463

y4 = M + kx4 = 5,394 + (−7.540)  0.16 = 4,202

y5 = M + kx5 = 5,394 + (−7.540)  0.22 = 3,755

y6 = M + kx6 = 5,394 + (−7.540)  0.23 = 3,680

y7 = M + kx7 = 5,394 + (−7.540)  0.27 = 3,382

y8 = M + kx8 = 5,394 + (−7.540)  0.29 = 3,233

y9 = M + kx9 = 5,394 + (−7.540)  0.375 = 2,600

y10 = M + kx10 = 5,394 + (−7.540)  0.40 = 2,414
Ең кіші квадраттар әдісімен өңделгеннен кейін:

i, A 0 0 0 0 0 0 0 0 0 0
,06 ,11 ,125 ,16 ,22 ,23 ,27 ,29 ,375 ,40

U4 4 4 4 3 3 3 3 2 2
,B ,947 ,574 ,463 ,202 ,755 ,680 ,382 ,233 ,600 ,414

Клеммалардағы қысқа тұйықталу тоғын есептейік:

ik = M = 5,394 = 0,72 A.
K −7, 540

Резистордың ішкі кедергісі:

r =  = 5,394 = 7,45 Ом .
ik 0,72

78

Python тіліндегі программасы

print(

'Ток көзін оған әр түрлі резисторларды (кедергілерді)

қосып,ток күші i мен ток көзінің клеммаларындағы U кернеуін

өлшеу арқылы зерттеген')

print('Келесідей мәліметтер алынған: ')

print(

'Мәліметтерді ең кіші квадрат әдісімен өңдеп, ЭҚК, қысқа

тұйықталу тогы мен ток көзінің ішкі кедергісін анықтауға

программа құрыңыздар. ')

print (''

''

''

'')

import math

A=0

B=0

C=0

D=0

k=0

n=int(input ('Өлшеулер саны : n='))

i = []

for k in range(0, n):

mani = float(input( " i ток күшінің мәні: "))

i.append(mani)

A = A + i[k ]

U = []

for k in range(0, n):

man = float(input( "U кернеу мәні: "))

U.append(man)

B = B + U[k]

for k in range(0, n):

C = float(C + (i[k])** 2)

D = D + i[k] * U[k]

print('A=',round (A, 2))

print('B=', round(B, 2))

print('C=', round(C, 2))

print('D=', round(D, 2))

K=(n*D-A*B)/(n*C-A**2)

M=(B-K*A)/n

print ('K=', round (K, 2))

print ('M=', round (M, 2))

for k in range(0, n):

U1 = M + K * i[k]

ik=math.fabs(M/K)

r=math.fabs(M/ik)

print('i=', i [k], 'A',' ' 'U=', round(U1, 3), 'B')

print ("Электр қозғаушы күші ", M, 'B')

print ('Қысқа тұйықталу тогы I=', round(ik, 3), 'A')

print ('Tок көзінің ішкі кедергісін r=', round (r, 4), 'Ом')

Программалау нәтижесі

79

Ток көзін оған әр түрлі резисторларды (кедергілерді) қосып,ток

күші i мен ток көзінің клеммаларындағы U кернеуін өлшеу арқылы

зерттеген

Келесідей мәліметтер алынған:

Мәліметтерді ең кіші квадрат әдісімен өңдеп, ЭҚК, қысқа

тұйықталу тогы мен ток көзінің ішкі кедергісін анықтауға

программа құрыңыздар.

Өлшеулер саны : n=10

i ток күшінің мәні: 0.06

i ток күшінің мәні: 0.11

i ток күшінің мәні: 0.125

i ток күшінің мәні: 0.16

i ток күшінің мәні: 0.22

i ток күшінің мәні: 0.23

i ток күшінің мәні: 0.27

i ток күшінің мәні: 0.29

i ток күшінің мәні: 0.375

i ток күшінің мәні: 0.40

U кернеу мәні: 4.8

U кернеу мәні: 4.8

U кернеу мәні: 4.4

U кернеу мәні: 4.1

U кернеу мәні: 4.0

U кернеу мәні: 3.3

U кернеу мәні: 3.6

U кернеу мәні: 3.2

U кернеу мәні: 3

U кернеу мәні: 2.05

A= 2.24

B= 37.25

C= 0.62

D= 7.51

K= -7.35

M= 5.37

i= 0.06 A U= 4.93 B

i= 0.11 A U= 4.562 B

i= 0.125 A U= 4.452 B

i= 0.16 A U= 4.195 B

i= 0.22 A U= 3.754 B

i= 0.23 A U= 3.681 B

i= 0.27 A U= 3.387 B

i= 0.29 A U= 3.24 B

i= 0.375 A U= 2.616 B

i= 0.4 A U= 2.432 B

Электр қозғаушы күші 5.3702975720922055 B

Қысқа тұйықталу тогы I= 0.731 A

Tок көзінің ішкі кедергісін r= 7.3451 Ом

80

6 Токтың кернеуге тәуелділігі Series1
5 Series2
4 0.1 0.2 0.3 0.4 0.5
U, B 3 i, A
2
1
0

0

81

Дәріс № 6. Физика есептеріндегі анықталған интегралды есептеуді
программалау. Python-дағы стандартты арифметикалық функциялар.
Ішкі программа (Подпрограмма)

4.3. Анықталған интегралды есептеу (Бурсиан Э.В. 76-77 бет.)
Егер интеграл кестелік немесе кестелік түрге оңай келтірілетін болса,
оны математикалық талдау әдістерімен алуға болады, мысалы

 ( )10  30x2 20x2 10
 3 2
I=  

0 0
30x2 + 20x dx = + = 1100 , (4.3.1)

яғни ондай интегралды сандық әдіспен алудың қажеті жоқ; ал

x2 x2 Ax2 + Bx

( x)dx =
= I f dx (4.3.2)
x1 x1 3 + sin x

интегралын және осындай алынбайтын көптеген интегралдарды алу үшін тек

сандық әдісті пайдаланамыз. Осы әдістердің ең қарапайымдарын
қарастырайық.

Анықталған интеграл берілген x1, x2 аралығындағы f (x) қисығы
астындағы ауданға тең (44-сурет). x1, x2  кесіндісін x бөліктерге бөлеміз

және ауданды тіктөртбұрышты жолақтар аудандарының қосындысы ретінде

есептейміз:

n (4.3.3)

I   f (x)x,
i=1

Мұндағы n-жолақтар саны. Мұндай әдіс «анықталған интегралды тік

бұрыштар әдісімен алу» деп аталады.

Көптеген жағдайларда сандық әдіспен есептеу x,t аз қадаммен

жүргізіледі. Әдетте, осы қадамның шамасын таңдау қиындық туғызады. Егер
қадам өте аз болса, есептеу ұзаққа созылады. Егер қадам үлкен болса, онда
есептің жауабы өте дөрекі немесе тіпті дұрыс емес болып шығады. Әуелі
есептің жауап тез шығатындай қадамды алу ұсынылады. Содан кейін
қадамды азайта отырып, нәтижені нақтылау керек. Қадамды азайтуды жауап
жеткілікті аз өзгеріске жеткенде тоқтату керек. Жауаптың қажетті дәлдігін

82

бере отырып, қадам шамасын анықтайтын есепті машинаға салуға да болады.

Есеп қарастырайық:

10

I =  (30x2 + 20x)dx
0

интегралын тік бұрыштар әдісімен есептеуге Python тілінде программа құру
керек.

Анықталған интегралды трапеция әдісімен есептеу
Python тіліндегі программасы

S=0
x1=int(input('x1-дің мәнін енгізіңіз x1='))
x2=int(input('x2-дің мәнін енгізіңіз x2='))
n=int(input('n-бөлік саны n='))
h=(x2-x1)/n
i=1
for i in range(0,n-1):

S=S+30*(x1+i*h)**2+20*(x1+i*h)
I=float(h*((30*x1**2+20*x1)+(30*x2**2+20*x2)+S))
print (I)

Программалау нәтижесі:

x1-дің мәнін енгізіңіз x1=0
x2-дің мәнін енгізіңіз x2=10
n-бөлік саны n=200
10921.67125

Бірақ та тік бұрыштар әдісі өте дөрекі. Бұл алынған жауаптан және 44-
суреттен көрінеді. Ал, жолақтар трапеция деп есептелетін трапеция әдісі

едәуір жетілген (45-сурет). Бұл жағдайда

I =  y1 + y2 + y2 + y3 + ... + yn−1 + yn  x =  y1 + yn + y2 + y3 + ... + y  x.
 2 2 2   2 
n−1

(4.3.4)

Анықталған интегралды трапеция әдісімен есептеу
Python тілінде программалау

83

S=0
x1=int(input('x1-дің мәнін енгізіңіз x1='))
x2=int(input('x2-дің мәнін енгізіңіз x2='))
n=int(input('n-қадам саны n='))
h=(x2-x1)/n
i=1
for i in range(0,n-1):

S=S+30*(x1+i*h)**2+20*(x1+i*h)
I=float(h*((30*x1**2+20*x1)+(30*x2**2+20*x2)/2+S))
print (I)

Программаның нәтижесі:

x1-дің мәнін енгізіңіз x1=0
x2-дің мәнін енгізіңіз x2=10
n-қадам саны n=1000
10968.066969999998

Жоғарыда айтылған нұсқаулардан басқа, тест ретінде, барлық уақытта

10 (4.3.5)

 dx( y = const = 1),
0

интегралы қадамның кез келген өлшемінде және әдістің кез келгенімен
шығарған кезде 10-ға тең болатынын білген жөн. Интегралдың физикалық
мағынасы М материалдық нүктесі F = F(x), күштің әсерінен х абцисса

осімен қозғалысқа бағытталған. F айнымалы күштің жұмысы F = F(x)

үздіксіз функциясының мәні a; b кесіндісінде әрекет етеді. Сондықтан

алынған кесіндіде F(x) күш шамасынан белгілі бір интервалға тең

b

A =  F ( x)dx .
a

Мысалы: Материалдық нүкте F ( x) = x − 2 күшінің әрекетінен

қозғалады.Материалдық нүктенің 2; 4 аралығында жасаған жұмысын

анықтаңыз.
Есептің аналитикалық шешімі: Интегралдың физикалық физикалық

маңынасына сәйкес, F күштің әсерінен жасалған жұмыс:

=A 4 − 2) dx =  x2 − 4 = 42 − 2  4 −  22 − 2  2  = 2
 2 2  2 
(x    
2x
2
2

Жауабы: A=2

Python тіліндегі программасы

S=0
x1=int(input('x1-дің мәнін енгізіңіз x1='))
x2=int(input('x2-дің мәнін енгізіңіз x2='))
n=int(input('n-қадам саны n='))
h=(x2-x1)/n
i=1
for i in range(0,n-1):

84

S=S+(x1+i*h)-2

I=float(h*((x1-2)+(x1-2)+S))

print (round(I,2))

Программалау нәтижесі:
x1-дің мәнін енгізіңіз x1=2

x2-дің мәнін енгізіңіз x2=4

n-қадам саны n=300

1.9

Python-дағы стандартты арифметикалық функциялар

Функция Тағайындалуы Нәтижесінің типі

abs (x) Аргументтің абсолют шамасы аргументтің типімен

сәйкескеледі

x**2 аргументтің квадраты аргументтің типімен

сәйкес келеді

math.sqrt (x) аргументтің квадрат түбірі нақты

math.cos (x) аргументтің косинусы нақты

math.sin (x) аргументтің синусы нақты

math.atan (x) аргументтің арктангенсі нақты

math.exp (x) экспонента (х), негізі е=2,7 ex нақты

a**b а санының b дәрежесі ab нақты

math.log(x) натураль логарифм нақты

x//y санның бүтін бөлігі нақты

x%y x санын у санына бөлгендегі нақты

қалдық(10%3=1)

round (x) Нақты санды жақын бүтінге нақты

дейіндөңгелектейді

arcsin a = arctg a ,−1 a 1  1− a2 ,0  a 1
1− a2 arccos a = arctg a

 + arctg 1 − a2 , −1  a  0
a

 1− a2 ,0  a 1 arccos a = arctg a ,−1 a 1
arcsin a = arctg a 1− a2

arcctg 1 − a2 −  ,−1  a  0
a

Ішкі программа (Подпрограмма)
Әр түрлі бастапқы мәліметтері бар және программаның кез келген
жерінде, көп рет есептеуге болатын программаның автономды бөлігін ішкі
программа деп атайды. Ішкі программаның түрлері: процедуралар мен
функциялар.

Процедуралар.
Процедура (подпрограмма) – негізгі программадан бөлек

85

безендірілген көп рет қайталанатын программаның бөлігі. Процедураның
программадағы орны негізгі программаның сипаттау бөлімінде.

Процедураны қолданудың артықшылығы программаның көлемін
кішірейту және есептеу уақытын азайту.

Процедураның жұмыс істеу принципі: Программаның орындалуы
программаның негізігі бөлімінен басталады. Процедураны орындау
қажеттілігі туындаған кезде, ол кіріс мәлңметтерді беру арқылы атауы
бойынша шақырылады. Орындалғаннан кейін, процедура қай жерден
шақырылды, сол жерге, программаның негізгі бөлігіне шығыс мәліметтерді
(нәтижелерді) береді. Әрі қарай программаның негізгі бөлімінің орындалуы
жалғасады.

Практикалық сабақ №6. Ішкі программа – функцияны қолданып
физикадан есеп шығару

№1022. Шынының бетіне 450 бұрышпен түскен сәуле өзінің бастапқы
бағытынан қандай бұрышқа ауытқиды? Алмастың бетінен ше?

Нұсқау: Тригонометриялық түрлендіру формуласын қолданып, №1022
есепті шығару.

Pyhon тіліндегі программасы

print('Шынының бетіне 45 бұрышпен түскен сәуле өзінің бастапқы
бағытынан қандай бұрышқа ауытқиды? Алмастың бетінен ше? ')
#Математикалық кітапхананы шақыру
import math
# тусу бурышы
a1=45
# n1-шыныны сыну корсеткши n1=1.46, n2- алмастын сыну корсеткиши
n2=2.42
n1=float(1.46)
n2= float(2.42)
# градусты радианга айналдыру
a=float (a1*(math.pi/180))

def burshti_esepteu():
if a<1:
# Сыну бурышын табайык
b1 = float(math.asin((math.sin(a)) / n1))
b2 = float(math.asin((math.sin(a)) / n2))
# радианды градуска айналдырам
b3 = float(b1 * (180 / math.pi))
b4 = float(b2 * ((180 / math.pi)))
print('Шыны бетіндегі сыну бұрышының градустағы мәні

b=', round(b3, 1))
print('Алмас бетіндегі сыну бұрышының градустағы мәні

86

b=', round(b4, 1))
# ауытку бурышын табайык
c1 = a1 - b3
c2 = a1 - b4
print('Шыны үшін ауытқу бұрышы с=', round(c1, 1))
print('Алмас үшін ауытқу бұрышы с=', round(c2, 1))

elif a>-1:
# Сыну бурышын табайык
b1 = float(math.asin((math.sin(a)) / n1))
b2 = float(math.asin((math.sin(a)) / n2))
# радианды градуска айналдырам
b3 = float(b1 * (180 / math.pi))
b4 = float(b2 * ((180 / math.pi)))
print('Шыны бетіндегі сыну бұрышының градустағы мәні

b=', round(b3, 1))
print('Алмас бетіндегі сыну бұрышының градустағы мәні

b=', round(b4, 1))
# ауытку бурышын табайык
c1 = a1 - b3
c2 = a1 - b4
print('Шыны үшін ауытқу бұрышы с=', round(c1, 1))
print('Алмас үшін ауытқу бұрышы с=', round(c2, 1))

else:
print ('Есептің шешімі жоқ')

burshti_esepteu()

Программалау нәтижесі

Шынының бетіне 45 бұрышпен түскен сәуле өзінің бастапқы
бағытынан қандай бұрышқа ауытқиды? Алмастың бетінен ше?
Шыны бетіндегі сыну бұрышының градустағы мәні b= 29.0
Алмас бетіндегі сыну бұрышының градустағы мәні b= 17.0
Шыны үшін ауытқу бұрышы с= 16.0
Алмас үшін ауытқу бұрышы с= 28.0

№1029. Сынған сәуле шағылған сәулеге перпендикуляр болу үшін
сәуле шыныға қандай бұрыш жасап түсу керек?

Python тіліндегі программасы

print ('Сынған сәуле шағылған сәулеге перпендикуляр болу
үшін сәуле шыңыға қандай бұрыш жасап түсу керек? ')
# Математикалық кітапхананы шақыру
import math
# n-шынының сыну көрсеткіші
n=float(1.6)
a1=math.atan(n)
def tan():

if a1<1:
a = a1 * (180 / math.pi)
print('Түсу бұрышы a=', round(a, 1))

elif a1>-1:
a = a1 * (180 / math.pi)
print('Түсу бұрышы a=', round(a, 1))

87

else: болу үшін сәуле
print('Есептің шешімі жоқ')

tan()
#фунцияны жинақтап программаға қосамыз

Программалау нәтижесі:

Сынған сәуле шағылған сәулеге перпендикуляр
шыңыға қандай бұрыш жасап түсу керек?
Түсу бұрышы a= 58.0

№1042. Егер лағыл тас үшін толық шағылудың шекті бұрышы 340-қа тең
болса, лағыл тастың сыну көрсеткіші қандай болар еді?

Python тіліндегі программасы

print('Егер лағыл тас үшін толық шағылудың шеткі бұрышы34 -
қа тең болса, лағыл тастың сыну көрсеткіші қандай болар
еді?')
#математикалық кітапхананы шақыру
import math
#а0-лағыл тас үшін толық шағылудың шеткі бұрышы, а0=34
a0=34
# Градусты радианга айналдырамыз
a= a0*(math.pi/180)
def sinu():

if a<1:
n = 1 / math.sin(a)
print('Лағыл тастың cыну көрсеткіш n=', round(n,

2))
elif a>-1:
n = 1 / math.sin(a)
print('Лағыл тастың cыну көрсеткіші n=', round(n,

2))
sinu()

Программалау нәтижесі

Егер лағыл тас үшін толық шағылудың шеткі бұрышы34 -қа
тең болса, лағыл тастың сыну көрсеткіші қандай болар еді?

Лағыл тастың cыну көрсеткіш n= 1.79

Зертханалық сабақ №6. Физикадағы анықталған ингралдарды
есептеу

1. Материялық нүктенің қозғалысы. Материялық нүкте түзусызықты

және белгілі бір жылдамдықпен қозғалады. Жылдамдық  = (t) уақытқа

тәуелді теңдеуімен t1; t2  аралығында өзгереді. Материялық нүктенің орын

ауыстыруы:

88

t2

S = (t)dt .
t1

Тапсырма №1. Материалдық нүкте (t) = t2 +1 теңдеуімен қозғалады.

Материалдық нүктенің 0;1 уақыт аралығындағы орын ауыстыруын

анықтаңыз.
Есептің шешімі:

( )1  t3 1 13  03  1 4
 3 3  3 0 3 3
S=   
t 
0 0
t2 +1 dt = + = +1− + = +1= .

Жауабы: S = 4 м.

3

Python тіліндегі программасы

S=0
t1=int(input('t1-дің мәнін енгізіңіз t1='))
t2=int(input('t2-дің мәнін енгізіңіз t2='))
n=int(input('n-бөлік саны n='))
h=(t2-t1)/n
i=1
for i in range(0,n-1):

S=S+(t1+i*h)**2+1
s=float(h*((t1**2-1)+(t2**2-1)+S))
print ('Материялық нүктенің орын ауыстыруы
s=',round(s,2),'м')

Программалау нәтижесі:

t1-дің мәнін енгізіңіз t1=0
t2-дің мәнін енгізіңіз t2=1
n-бөлік саны n=100
Материялық нүктенің орын ауыстыруы s= 1.3 м

2. Жұмыс пен күш аралығындағы тәуелділік. Материалдық нүктенің
F күштің әсерінен жасағын жұмысы:

x2

A =  F(x)dx .
x1

Тапсырма №2. Материалдық нүкте F ( x) = x + 3 күшінің әрекетінен

қозғалады. Материалдық нүктенің 1; 2 аралығында жасаған жұмысын

анықтаңыз.

Есептің шешімі: Интегралдың физикалық мағынасына сәйкес, F күштің

әсерінен жасалған жұмыс:

A = 2 (x + 3)dx =  x2 2 = 22 + 3  2 −  12 − 31 = 2+6− 1 −3 = 9
1 2 2 2 3 2
+ 3x 1

89

Жауабы: A= 9 Дж.

2

Python тіліндегі программасы

S=0
x1=int(input('x1-дің мәнін енгізіңіз x1='))
x2=int(input('x2-дің мәнін енгізіңіз x2='))
n=int(input('n-бөлік саны n='))
h=(x2-x1)/n
i=1
for i in range(0,n-1):

S=S+(x1+i*h)+3
A=float(h*(((x1+3)+(x2+3))/2+S))
print ('Жұмыс A=',round(A,2),'Дж')

Программалау нәтижесі:
x1-дің мәнін енгізіңіз x1=1
x2-дің мәнін енгізіңіз x2=2
n-бөлік саны n=100
Жұмыс A= 4.49 Дж

Тапсырма №3. 1; 4 уақыт аралығында жасалған жұмысты А

анықтаңыз, егер қуат мына формула бойынша есептелген болса

N (t) = 6 .

t
Есептің шешімі: Ізделінді жұмыс есептейік

( )46

A=
1t dt = 6  2 4 4 − 1 = 12  (2 −1) = 12 .

t = 12 
1

Жауабы: A=12 Дж.

Python тіліндегі программасы

import math
N=0
t1=int(input('t1-дің мәнін енгізіңіз t1='))
t2=int(input('t2-дің мәнін енгізіңіз t2='))
n=int(input('n-бөлік саны n='))
h=(t2-t1)/n
i=1
for i in range(0,n-1):

N=N+6/math.sqrt(t1+i*h)
A=float(h*(6/math.sqrt(t1)+(6/math.sqrt(t2))+N))
print ('Жұмыс A=',round(A,2),'Дж')

Программалау нәтижесі:
t1-дің мәнін енгізіңіз t1=1
t2-дің мәнін енгізіңіз t2=4
n-бөлік саны n=100
Жұмыс A= 12.22 Дж

90

3. Жіңішке стреженьнің массасы. Жұқа стреженьнің (х) сызықтық

тығыздығы белгілі болса, онда оның массасы мына формула бойынша

есептеледі:
= ∫ 12 ( ) .

Тапсырма №4. Стерженьнің 1 = 0 ден 2 = 1-ге дейінгі бөлігінің
массасын есептеңіз, егер оның сызықтық тығыздығы ( ) = 2 + 1

формуласымен берілсе.

Есептің шешімі: Формулаға сәйкес есептейік:

= 1 + 1) = 3 + ) 1 = 13 + 1 − 03 + 3) = 4 .
(3 3 (3 3
∫ ( 2 ∫

0 0
Жауабы: = 4.
3
Python тіліндегі программасы
p=0

x1=int(input('x1-дің мәнін енгізіңіз x1='))
x2=int(input('x2-дің мәнін енгізіңіз x2='))

n=int(input('n-бөлік саны n='))

h=(x2-x1)/n

i=1

for i in range(0,n-1):

p=p+(x1+i*h)**2+1

m=float(h*((x1**2+1)+(x2**2+1)+p))

print ('Массасы m=',round(m,2) ,'кг')

Программалау нәтижесі:

x1-дің мәнін енгізіңіз x1=0
x2-дің мәнін енгізіңіз x2=1
n-бөлік саны n=100
Массасы m= 1.34 кг

4. Электр қуаты (электр заряды). = ( ) ток күші белгілі кезінде
[ 1; 2] уақыт аралығындағы электр энергиясының (электр заряды) мөлшері
мына формула бойынша есептеледі:

2

= ∫ ( ) .

1

Тапсырма №5. Егер ток күші ( ) = 3 2 − 2 теңдеуімен берілген
болса, [3; 4] уақыт аралығында өткізгіштен өтетін электр зарядының
мөлшерін есептеңіз.

Есептің шешімі: Электр зарядының мөлшерін есептейік

q = ∫34(3t2 − 2t)dt = (t3 − t2) ∫34 = 43 − 42 − (33 − 32) = 64 − 16 − 27 + 9 = 30.

Жауабы: = 30 Кл.
Python тіліндегі программалау

I=0
t1=int(input('x1-дің мәнін енгізіңіз x1='))
t2=int(input('x2-дің мәнін енгізіңіз x2='))

91

n=int(input('n-бөлік саны n='))
h=(t2-t1)/n
i=1
for i in range(0,n-1):

I=I+3*(t1+i*h)**2-2*(t1+i*h)
q=float(h*((3*t1**2+2*t1)+(3*t2**2+2*t2)+I))
print ('Заряд мөлшері q=',round(q,2) ,'Кл')

Программалау нәтижесі

x1-дің мәнін енгізіңіз x1=3
x2-дің мәнін енгізіңіз x2=4
n-бөлік саны n=100
Заряд мөлшері q= 30.4 Кл

5. Уақыт аралығындағы жылу мөлшері. Егер жылу сыйымдылығы
с(t) -мен берілсе, онда t € [ 1, 2] уақыт аралығындағы жылу мөлшері мына
формула бойынша есептеледі :

2

= ∫ ( ) .

1

Тапсырма №6. Егер жылу сыйымдылығы с(t) = t2 -мен берілсе, онда t €

[1, 2] уақытындағы жылу мөлшерін табыңыз :
Есептің шешуі: Формулаға сәйкес алатынымыз

= 2 = ( )2 | 12 = 23 −13 = 7.
2 3 3
∫ ( )

1

Жауабы: Q= 7 Дж.

3

c=0 Python тіліндегі программасы

t1=int(input('t1-дің температураның мәнін енгізіңіз t1='))

t2=int(input('t2-дің температураның мәнін енгізіңіз t2='))

n=int(input('n-бөлік саны n='))

h=(t2-t1)/n

i=1

for i in range(0,n-1):

c=c+(t1+i*h)**2

Q=float(h*((t1**2)+(t2**2)+c))

print ('Жылу мөлшері Q=',round(Q,2),'Дж')

Программалау нәтижесі:

t1-дің температураның мәнін енгізіңіз t1=1
t2-дің температураның мәнін енгізіңіз t2=2
n-бөлік саны n=100
Жылу мөлшері Q= 2.33 Дж

6. Магнит ағыны мен ЭҚК-тің тәуелділігі. Тұйықталған өткізгіш
контурды кесіп өтетін Ф магнит ағыны мен осы контурдағы i (t) электр

92

қозғаушы күш индукциясының арасындағы математикалық тәуелділік мына

қатынас арқылы беріледі

2

Ф = ∫ ( ) .

1

Тапсырма №7. Біртекті магнит өрісінде айналған рамкада уақыт

бойынша  i (t ) = 50 cos t заңдылығымен өзгеретін индукциялық ЭҚК пайда
120

болады. Айналудың соңғы 1 минутындағы рамканы кесіп өтетін магит

ағының мәнін табыңыз.

Есептің шешуі: Бұл жағдайда t уақыт 0 с-тан 60 с-қа дейін өзгереді.
Сонда ізделінді электромагниттік ағын төмендегідей есептеледі:

Ф = 60  t dt = 50  120 sin  t 60 = 600  sin  − sin 0 = 600
 120 0  2 
50cos
0 120

Жауабы: Ф= 600 Вб.



Python тіліндегі программалау

e=0
import math
t1=int(input('t1-дің мәнін енгізіңіз t1='))
t2=int(input('t2-дің мәнін енгізіңіз t2='))
n=int(input('n-бөлік саны n='))
h=(t2-t1)/n
i=1
for i in range(0,n):

e=e+50*math.cos((math.pi*(t1+i*h))/120)
F=float(h*((50*math.cos((math.pi*t1)/120)+50*math.cos((math.pi*t
2)/120)+e)))
print ('Магнит ағыны Ф=',round(F,2),'Вб')

Программалау нәтижесі

t1-дің мәнін енгізіңіз t1=0
t2-дің мәнін енгізіңіз t2=60
n-бөлік саны n=100
Магнит ағыны Ф= 1954.82 Вб

93

№ 7 дәріс. Графикалық интерфейс Tkinter. Сурет салуға арналған
Tkinter модулінің Canvas классы. Canvas графикалық примитивтерді
шығаруға арналған құрал.

Tkinter (ағылш. tk interface) – бұл терезе интерфейсі бар программалар
жасауға мүмкіндік беретін графикалық кітапхана. Бұл кітапхана танымал
программалау тілінің интерфейсі және tcl/tk графикалық қосымшаларын құру
құралы болып табылады. Ол кез-келген кітапхана сияқты төмендегідей
импортталады:

from tkinter import *

Tk ( )- кез-келген Tkinter қосымшасының негізгі класы. Осы
модульдің нысанын жасау кезінде TCL/tk аудармашысы іске қосылады және
қосымшаның негізгі терезесі жасалады. Tkinter модулі mainloop
әдісімен іске қосылады

Python тілінде программасы:

from tkinter import *
root = Tk()
root.mainloop()

Программалау нәтижесі:

after- белгіленген уақыттан кейін орындалуы керек функция.
title – терезе атауы.
Text – бұл пайдаланушыға кез-келген мәтінді енгізуге мүмкіндік
беретін виджет.

Python тілінде программалау

from tkinter import *
root=Tk()
#wrap=WORD-мәтін енгізу
text1=Text(root,height=7,width=7,font='Arial 14',wrap=WORD)
text1.pack()
root.mainloop()

Программалау нәтижесі:

94

Canvas (сурет) графикалық примитивтерді шығаруға арналған
құрал

Tkinter модулінің Canvas классы әртүрлі пішіндер мен заттарды
орналастыру арқылы «сурет салуға» болатын кеңістікте және қажетті
әдістерді шақыру арқылы жасалады.

Бүгінгі таңда canvas көбінесе графиктер, қарапайым анимациялар және
анимациялық ойындар үшін қолданылады. WHATWG тобы веб-
қосымшалардың жаңа буындарында графика құру үшін canvas стандартын
қолдануды ұсынады.

Canvas кеңістігін жасау кезінде оның ені мен биіктігін көрсету қажет.
Геометриялық примитивтер мен басқа объектілерді орналастыру кезінде
олардың кеңістіктегі координаттары көрсетіледі. Санау нүктесі( точка
отсчета) жоғарғы сол жақ бұрыштан басталады.

Программада tkinter модулі арқылы терезе орнатылып, Canvas классы
арқылы кеңістік құрылады. create_line әдісі арқылы сызық сыза аламыз.
Алдымен бастапқы координаттары көрсетіледі (x1, y1), содан кейін – соңғы
координаталары (x2, y2) көрсетіледі.

bg – экранның фонның түсін анықтайды;
fill – кез келген фигураның түсін белгілейді;
оutlinе - кез келген фигураның контурының түсін белгілейді;
width - кез келген фигураның контурының енін пиксельмен белгілейді;
аrrоw – бұл аргумент нұсқау белгісін сызықтың бір немесе екі жағына
қояды.

Pyhton тіліндегі программасы:

from tkinter import *
root=Tk()
#с айнымалысы арқылы Canvas классынан кеңістің құрылады. width-
ені height-биіктігі fill-кесінідінің түсі
c = Canvas(root, width=200, height=200, bg='white')
c.pack()
c.create_line(10, 10, 190, 10,fill='red',

width=2)
c.create_line(100, 180, 100, 60, fill='green',

width=5, arrow=LAST)
root.mainloop()

95

Программалау нәтижесі

create_rectangle әдісімен тіктөртбұрыштар жасау: Бірінші
координаттар – жоғарғы сол жақ бұрыш, екіншісі – төменгі оң жақ
сызықтарды білдіреді.

Pyhton тіліндегі программасы:

from tkinter import *
root=Tk()
c = Canvas(root, width=200, height=200, bg='white')
c.pack()
c.create_rectangle(10, 10, 190, 60)
c.create_rectangle(60, 80, 140, 190,
fill='yellow',
outline='green',
width=3)
root.mainloop()

Программалау нәтижесі

сreate_polygon әдісі әр нүктенің координаталарын анықтау арқылы
кез келген көпбұрыш жасайды:

from tkinter import *
root=Tk()
c = Canvas(root, width=200, height=200, bg='white')
c.pack()
c.create_polygon(100, 10, 20, 90, 180, 90)
c.create_polygon(40, 110,
160, 110, 190, 180,

10, 180, fill='orange',

96

outline='black')
root.mainloop()

Программалау нәтижесі

сreate_oval әдісі эллипстерді жасайды. Бұл жағдайда эллипсті
сипаттайтын гипотетикалық тіктөртбұрыштың координаттары орнатылады.
Егер сізге шеңбер алу керек болса, онда сәйкесінше сипатталған
тіктөртбұрыш шаршы болуы керек

Pyhton тіліндегі программасы:

from tkinter import *
root=Tk()
c = Canvas(root, width=200, height=200, bg='white')
c.pack()
c.create_oval(50, 10, 150, 110, width=2)
c.create_oval(10, 120, 190, 190,
fill='grey70',

outline='white')
root.mainloop()

Программалау нәтижесі

Түсіну қиын фигуралар create_arc әдісін қолдану арқылы алынады.
Стиль опциясының мәніне байланысты секторды (әдепкі), сегментті
(CHORD) немесе доғаны (ARC) алуға болады. Сондай-ақ, create_oval
жағдайында координаттар сектор, сегмент немесе доға "кесілген" шеңбер
(немесе эллипс) жазылған тіктөртбұрышты анықтайды. Бастау опцияларына
фигураның басталу дәрежесі беріледі, extent айналу бұрышын анықтайды.

Pyhton тілінде программасы:

from tkinter import *
root=Tk()

97

c = Canvas(root, width=200, height=200, bg='white')
c.pack()
c.create_oval(10, 10, 190, 190,

fill='lightgrey',
outline='white')
c.create_arc(10, 10, 190, 190,
start=0, extent=45,
fill='red')
c.create_arc(10, 10, 190, 190,
start=180, extent=25,
fill='orange')
c.create_arc(10, 10, 190, 190,
start=240, extent=100,
style=CHORD, fill='green')
c.create_arc(10, 10, 190, 190,
start=160, extent=-70,
style=ARC, outline='darkblue',
width=5)
root.mainloop()

Программалау нәтижесі

Программада мәтінді орналастыруға болады. Бұл create_text әдісі
арқылы жасалады:

Pyhton тілінде программасы:

from tkinter import *
root=Tk()
c = Canvas(root, width=250, height=250, bg='white')
c.pack()
c.create_text(100, 100,

text="Python программалау тілі", font="Times 14")
c.create_text(200, 200, text="About this", fill="grey")
root.mainloop()

Программалау нәтижесі

98

Практикалық сабақ №7. Кулон заңын қолдану шекарасы. Екі
зарядтың бір-біріне әсер ету схемасын Python-да программалау

Кулон заңы – екі нүктелік электрлік зарядтардың өзара әсерін

сиппаттайтын заң. Тыныштықтағы екі нүктелік зарядталған денелердің өзара

әсерлесу заңы бүкіл әлемдік заңға ұқсас деген пікірлер ХVIII-ғасырдың
ортасында туа бастады. Осы пікірдің дұрыстығын 1785 жылы француз

ғалымы Ш.Кулон дәлелдеді.

Кулон заңы бойынша тыныштықтағы екі нүктелік зарядтардың

әсерлесу күші зарядтар модульдерінің көбейтіндісіне тура пропорционал,

олардың ара қашықтығының квадратына кері пропорционал. Таңбасы

зарядтардың таңбаларының көбейтіндісімен бірдей, ал бағыты екі зарядты

қосатын түзу бойымен бағыттас күшпен өзара әсер етеді.

Кулон тәжірбиесі. Ол жіңішке серпімді сымға ілінген және шыны

цилиндр тәрізді ыдыста орналастырылған шыны таяқшадан тұратын

қондырғы-иірілмелі таразыны қолданды. Таяқшаның бір ұшына кішкене
металл шар бекітті, ал екінші ұшына оны теңгеріп тұратын жүк ілді. Жіптің

жоғарғы ұшын оның ширатылу бұрышын анықтауға арналған бөліктері бар

шкалаға бекітті. Ыдыс тығынындағы саңылау арқылы дәл сондай басқа

сынақ шар енгізді. Содан соң шарларға оң заряд берді және олар бір-бірімен
өзара әрекеттеседі. Ал олардың әрекеттесу күшінің шамасын жіптің

ширатылу бұрышына қарап анықтады. Өлшемдері электрленген шардың

өлшемдерімен бірдей,заряды жоқ үшінші шардың көмегімен Кулон

алдыңғысының зарядын тең екіге бөлді. Осылайша, Кулон тәжірбиелерін

қорыта келе, шарлардың өзара әрекеттесу күші олардың арақашықтығының

квадратына кері, ал шарлардың зарядтарының көбейтіндісіне пропорционал

екенін анықтады. Әрі, олардың әрекеттесу күші әр ортада әртүрлі екенін

байқап, ортаның диэлектрлік өтімділігі деген шама енгізді. Ол әр ортада

әртүрлі мәнге ие. Оған қоса,Кулон электр тұрақтысы деген шаманы енгізді.

Кулон заңын қолдану шекті. Ол үшін мына шарттар орындалуы

маңызды:

1. Зарядтардың нүктелік болуы, яғни зарядталған денелер ара
қашықтығы олардың өздерінің өлшемінен әлдеқайда үлкен болу керек (

d  r ).
2. Зарядтар тыныштықта, қозғалыссыз болуы керек. Әйтпесе басқа да

күштер: қозғалмалы зарядтың магнит өрісі және оған сәйкес басқа

қозғалмалы зарядқа әсер ететін Лоренц күші пайда болады.

3. Зарядтарды вакуумда орналастыру керек.
Дегенмен аздаған өзгерістермен заң ортада және қозғалмалы зарядтар

үшін де орындалады. Векторлы түрде Ш. Кулон заңы тұжырымы былай

жазылады:

F12 = k  q1  q2  r12 ,
r122 r12

99


Click to View FlipBook Version