Анықталған интеграл түбірлерін табу бағдарламасын құру


Анықталған интеграл түбірлерін табу бағдарламасын құру
Мазмұны
Кіріспе . . . 3
Тарау І. Қолданылатын әдістердің теория және блок-схемалар
1. 1. Трапециялар әдісі . . . 4
1. 2. Тібұрыштар әдісі . . . 6
Тарау ІІ. Математикалық есептерді шығару
2. 1. Стандартты функциялар және командалар . . . 9
2. 2. Жобаның сипаттамасы . . . 13
Қорытынды . . . 24
Әдебиеттер тізімі . . . 25
паровапрв
Кіріспе
Visual Basic ортасында құрылған бұл курстық жұмыстың екі жуықталған шешімі бар, біреуі тікбұрыштар әдісімен жасалса екіншісі трапециялар әдісі көмегімен. Осы екі шешім Ньютона-Лейбниц әдісімен табылған дәл шешіммен салыстырылады. Екі әдістің қателіктері график түрінде бейнеленеді.
Visual Basic (BASIC - Begginners Allpurpose Symbolic Instruction Code) - өте қарапайым программалау тілдерінің бірі болып табылады.
Кішкентай ғана программалау дағдыларыңыз болса ойланбай программа құра аласыз. Осы жоғары деңгейлі программалау тілінің тарихы 1963 жылдан басталады. Осы жылы Дортмут колледжінің бітіруші курс студенттері профессор Дж. Кемени басшылығында тілдің алғашқы нұсқасы жарыққа шықты.
Сол уақытта Бейсик тілінен басқа Fortran, Cobol, Algol, PL/1, Focal және Pascal тілдері кең тараған болатын.
Бұл программалау тілдері ішінен тек Паскаль және Бейсик тілдері ғана біздің күндерімізге жетіп келді.
Visual Basic ортасында қарапайым программа құру үшін бірнеше минут талап етіледі.
Мұндай программа құру процесі формаға басқару элементтерін қоюмен аяқталады. Содан соң формаға және басқару элементтеріне олардың қасиеттерін орнату керек болады.
Тарау І. Қолданылатын әдістердің теория және блок-схемалар
1. 1. Трапециялар әдісі.
[a, b]
кесіндісінде үздіксіз y=f(x) функциясы берілген болсын. Анықталған интегралды есептеу талап етіледі
. [a, b] кесндісін a = x
0
, x
1
, x
2
, . . . , x
n-1
, x
n
= b нүктелерімен n тең бөліктерге бөлеміз. Олардың ұзындығы тең h:
. Онда қисық сызықты аАВb трапециясының ауданы жоғарыдан шектелен АА
1
, А
1
А
2
, …, А
n-1
B тікбұрышты трапециялардың аудандарының қосындысына тең. Бірінші трапецияның ауданы
тең болғандықтан, екінші трапецияның ауданы
-ға тең және с. с., онда
,
немесе
(1)
Бұл трапеция формуласы болады. n санын кездейсоқ таңдаймыз. Бұл сан қаншалықты үлкен болса, h қадам соншалықты кіші болады.
Программасы:
Dim s, h As Double
Dim n As Long
h = (b - a) / n
s = 0
X1 = a
For i = 1 To n - 1
X1 = X1 + h
s = s + F(X1)
Next
trap = h * (F(a) + F(b) + 2 * s) / 2
Трапециялар әдісінің блок-схемасы.
1. 2. Тібұрыштар әдісі.
Кесiндiде
анықталған
функциясын қарастыралық. Кесiндiнi
нүктелерiмен (2-сурет) қалауымызша
бөлiкке бөлейiк. Әр бөлiктен еркiмiзше
нүктесiн таңдап алып, функцияның сол нүктелердегi мәндерiн табайық. Табылған мәндердi сәйкес құраушы кесiндiлердiң ұзындықтарына
көбейтiп, қосайық. Пайда болған өрнек
(3. 1)
функциясы үшiн
кесiндiсi бойынша құрылған инетгралдық қосынды деп аталады. Құраушы кесiндiлердiң ең үлкен ұзындығы
кесiндiсiн бөлшектеудiң қадамы деп аталады:
.
[a, b]
кесіндісінде y=f(x) үдіксіз функциясы берілген болсын. Анықталған
интегралды есептеу керек. [a, b]
кесіндісін a=x
0
, x
1
, x
2
, . . . , x
n
=b нүктелерімен n тең бөліктерге бөлеміз. Олардың ұзындықтары h:
.
Әрі қарай y 0 , y 1 , y 2 , . . . , y n-1 , y n арқылы f(x) функциясының мәнін f(x) x 0 , x 1 , x 2 , . . . , x n , нүктелерінде есептейміз, яғнм
y 0 =f(x 0 ), y 1 =f(x 1 ), . . . , y n =f(x n ) .
Қосындыларды аламыз:
y 0 h + y 1 h + . . . + y n-1 h,
y 1 h + y 2 h + . . . + y n h.
Осы қосындылардың әр қайсысы f(x) функциясының [a, b] аралығында интегралды сумма болып табылады, сондықтан интегралды сипаттайды:
(1)
(1’)
Бұл тікбұрыштар формуласы болып табылады. 2-Суреттен f(x) функциясы теріс емес және өспелі болса, онда (1) формуласы сатылы фигурасының ауданын сипаттайды.
Программасы:
Dim h As Double
Dim s As Double
Dim n As Long
h = (b - a) / n
s = 0
x = b
For i = 1 To n - 1
F = Fn(x)
s = s + F
x = x - h
Next i
Prm = s * h
Тікбұрыштар әдісінің блок-схемасы.
Тарау ІІ. Математикалық есептерді шығару
2. 1. Стандартты функциялар және командалар
Visual Basic’те пайдаланылатын берілгендер типтері:
Бұлардан басқа объектіге сілтеме орнататын Objects (Объект) атаулы тип те бар, т. с. с.
Жатта қажетті орындар бөлу үшін айнымалылар Dim не Static операторлары арқылы сиппатталады ( dimension - өлшем, static - статикалық, қозғалмайтын) . Сипаттау үлгілері:
Dim , Static кілттік сөздерінің бірі бір процедура ішінде пайдаланылатын айнымалылырды сипаттау кезінде жазылады. Олардың орнына Private кілттік сөзін жазу да мүмкін. Мысалы:
Dim x As Single,
Static x as Single,
Private x as Single
сипаттамалары бірдей. Static арқылы сипатталған айнымалының ағымдық мәні процедура аяқталған кезде де сақталады; Dim, Private айнымалылырының мәндері жойылып кетеді.
Айнымалыны қосымшаның түрлі процедураларында пайдалану үшін оны код терезесінің (General) (Declaration) секциясында (бөлімінде) Public кілттік сөзі арқылы сипаттау керек ( Public -көпшілік) . Терезеде алдымен Option Explicit жазуы көрінуі мүмкін (1. 14- тақырыпты қараңыз) .
Ескерту. 1. Айнымалы атауы үшін кілттік сөздерден, кілттік символдар мен бос орын және тыныс белгілерінен басқа ұзындығы 255-ке дейін (кирилицамен қоса) символдар тізбегін алуға болады.
2. General / Declaration секциясы шығатын код терезесі форманы екі рет шертпей, алғашқы рет View - Code командасы берілген кезде көрінеді. Private арқылы жарияланған процедурамен тек бір формада, Public арқылы жарияланған процедурамен проектінің барлық формаларында жұмыс істеу мүмкін (олар барлық формаларда қолжетерлік (4. 3-тақырыпты қараңыз) ) .
Қарапайым программаларда сандық және жолдық айнымалыларды (х%, у, а$) вариант типті етіп сипаттау да мүмкін ( Variant, жан-жақты) . Бұл кезде айнымалылардың типтері көрсетілмей жазылады: Dim x, y, a.
Мысалы, 1. 7-тақырыпта жазылған процедурада айнымалылар вариантты типті етіп ( Dim x, y) арқылы сипатталған. Оның қатесі жоқ. Редактор процедураға енгізілген вариант типті айнымалының типін өзі ажырата алады. Бірақ күрделі программаларда редактор қате жіберіп, бүтін типті айнымалылырды жолдық (символдық) деп қабылдауы мүмкін. Сондықтан айнымалыларды сипаттауда олардың типтерін де жазып қойған дұрыс.
Программада жиі пайдаланылатын тұрақтыны Const операторы арқылы сипаттау да мүмкін ( Const - тұрақты) . Мысалы, программа үзіндісін мына түрде жазуға болады:
Const pi = 3. 1415926
R = 4. 5 : h = 7
C = pi * r^2 * h
V = pi * r^3 * h / 3
VB’те пайдаланылатын математикалық операторлар мен стандартты функциялардың басым көпшілігі Бейсиктеғі сияқты:
+ (қосу) ; - (азайту) ; * (көбейту) ; / (бөлу) ; \ (бүтін бөлу) ; ^ (дәрежелеу) ; Mod (қалдықты есептеу) ; $ (жолдарды біріктіру, конкатенация) ;
Abs(x) ; Sin(x) ; Cos(x) ; Atn(x) ; Sqr(x) ; Exp(x) ; Int(x) ; Rnd(x) ; Mid$, Left$, Right$,
Str$(x) - сандық мәнді жолдық типті ету;
Val (x) - цифрлармен берілген жолдық мәнді сандық типтіге алмастыру, т. б.
Visual Basic’те құрылымдық программа құру үшін Qbasic’те қолданылатын құрылымдар пайдаланылады.
Тармақталу командасының құрылымдары:
1) If P Then S 1-нұсқа
2) If P Then 2-нұсқа
S
End If
3) If P Then көп нұсқалы тармақталу командасы
S1
Else P2 Then
S2
Else P3 Then
S3
. . .
End If
Мұндағы Р, Р1, Р2, Р3 , . . . - шарттар;
S, S1, S2, S3 , … - блоктар (бір сериялы операторлар) .
Соңғысы - көп нұсқалы тармақталу (таңдау) командасы.
Тармақталу командасының бірінші және екінші құрылымдары бірдей. Бірінші құрылымды блокқа бір команда енгізілгенде ғана пайдалануға болады. Екінші құрылым барлық жағдайда қолданылады.
мысал. Пайдаланушы интерфейсін құрып, ах 2 +bx+c=0 квадрат теңдеуін шешу керек.
- VB орталығын ашу.
- Форманы таңдап, Captionқасиетінің мәні үшін «Квадрат теңдеу» мәнін енгізу.
- ФормадаLabel1, Label2, Label3, Label4, Label5өрістерін орнату. Label1’ге квадрат , Label2’геbкоэффициентін, Label3’ке бос мүшені (с), Label4’кех1мәнін, Label5’кех2мәнін енгізуді жоспарлау. Captionқасиеті арқылы олардың ішіне енгізілген жазуларды өшіріп тастауға болады.
- ФормағаCommand1, Command2басқару түймелерін орнату. Captionқасиеті арқылы оларғаҚосу, ENDсөздерін енгізу.
- Қосу(Command1) түймесін екі рет шертіп, ашылған код терезесіне процедура енгізу:
Private Sub Command1_ Click ()
Dim a, b, c, d, x1, x2, x
а = InputBox (a, “a = “) : Label1. Caption = a
b = InputBox (b, “b = “) : Label2. Caption = b
c = InputBox (c, “c = “) : Label3. Caption =c
d = b^2 - 4* a * c
If d > = 0 Then
x1 = (-b + sqr (d) ) / (2 * a)
x2 = (-b - sqr (d) ) / (2 * a)
Label4. Caption = x1 : Label5. Caption = x2
Else x = «Нақты шешімі жоқ» : Label4. Caption = x
End If
End Sub
- Форамны ашып, ENDтүймесін екі рет шерту. Код терезесіндеCommand2 _ Clickатаулы процедура моделі көрінеді. Оның ішінеEndоператорын енгізу:
Private Sub Command2_ Click ()
End
End Sub
2. 2. Жобаның сипаттамасы
Программаны іске қосқан кезде Негізгі мәзір шығады, ол “Курстық жұмыс” деп аталады (Сурет3) .
Сурет 3. Негізгі мәзір
Осы мәзірдің көмегімен программаны басқару процесі орындалады. Оның мынадай пункттері бар:
Файл
- Сақтау - есептеу нәтижелерін сақтау.
- Шығу - программадан шығу.
Шешу - ендіру терезесіне өту және интегралды есептеу (сурет 4) .
Бейнелеу
- Зерттеу - екі әдістің қателіктерін салыстыру графиктерін салу терезесіне өту (сурет 5) .
Программа туралы - программа туралы қысқаша информация (сурет 6) .
Сурет 4. Шешу
Сурет 5. Қателіктердің тәуелділік графигі
Сурет 6. Программа туралы
Программасы
Form1 - Негізгі мәзір (Курстық жұмыс)
Private Sub AboutPr_Click()
Form5. Show
End Sub
Private Sub End_Click()
End
End Sub
Private Sub Form_Load()
CommonDialog1. Filter = "Texts (*. txt) *. txt"
End Sub
Private Sub Issled_Click()
Form1. Hide
Form4. Show
End Sub
Private Sub Reshenie_Click()
Form1. Hide
Form2. Show
End Sub
Private Sub Save_Click()
CommonDialog1. ShowSave
Open CommonDialog1. FileName For Output As #1
j = 0
For k = 10 To 200 Step 10
Print #1, "Егер n = " + Str(k) + vbCrLf; " тикбурыштар адисинин кателиги = " + Str(Ep(j) ) + vbCrLf; " трапециялар адисинин кателиги = " + Str(Et(j) ) + vbCrLf
j = j + 1
Next k
Close #1
End Sub
Private Sub Visualpr_Click()
Form1. Hide
Form3. Show
End Sub
Form2 - Шешу
Private Sub Command1_Click()
Dim h As Double
Dim s As Double
Dim n As Long
a = Val(Text1. Text)
b = Val(Text2. Text)
n = Val(Text3. Text)
h = (b - a) / n
s = 0
x = b
For i = 1 To n - 1
F = Fn(x)
s = s + F
x = x - h
Next i
Prm = s * h
Text4. Text = Prm
End Sub
Private Sub Command2_Click()
Dim s As Double
Dim h As Double
Dim n As Long
a = Val(Text1. Text)
b = Val(Text2. Text)
n = Val(Text3. Text)
h = (b - a) / n
s = 0
X1 = a
For i = 1 To n - 1
X1 = X1 + h
s = s + Fn(X1)
Next
Trap = h * (Fn(a) + Fn(b) + 2 * s) / 2
Text5. Text = Trap
End Sub
Private Sub Command3_Click()
Form2. Hide
Form1. Show
End Sub
Private Sub Command4_Click()
End
End Sub
Private Sub Command5_Click()
a = Val(Text1. Text)
b = Val(Text2. Text)
NL = ff(b) -ff(a)
Text6. Text = NL
End Sub
Form3 - Программа туралы
Private Sub Command1_Click()
Unload Form3
End Sub
Form4 - Зерттеу
Private Sub Command1_Click()
Dim s As Double
Dim h As Double
Dim n As Long
Dim n1 As Long
a = 0
b = 1. 7
Picture1. Scale (-10, 0. 2) -(215, -0. 01)
Picture1. Line (-10, 0) -(215, 0)
Picture1. Line (0, 0. 2) -(0, -0. 01)
Label1. Visible = True
... жалғасы- Іс жүргізу
- Автоматтандыру, Техника
- Алғашқы әскери дайындық
- Астрономия
- Ауыл шаруашылығы
- Банк ісі
- Бизнесті бағалау
- Биология
- Бухгалтерлік іс
- Валеология
- Ветеринария
- География
- Геология, Геофизика, Геодезия
- Дін
- Ет, сүт, шарап өнімдері
- Жалпы тарих
- Жер кадастрі, Жылжымайтын мүлік
- Журналистика
- Информатика
- Кеден ісі
- Маркетинг
- Математика, Геометрия
- Медицина
- Мемлекеттік басқару
- Менеджмент
- Мұнай, Газ
- Мұрағат ісі
- Мәдениеттану
- ОБЖ (Основы безопасности жизнедеятельности)
- Педагогика
- Полиграфия
- Психология
- Салық
- Саясаттану
- Сақтандыру
- Сертификаттау, стандарттау
- Социология, Демография
- Спорт
- Статистика
- Тілтану, Филология
- Тарихи тұлғалар
- Тау-кен ісі
- Транспорт
- Туризм
- Физика
- Философия
- Халықаралық қатынастар
- Химия
- Экология, Қоршаған ортаны қорғау
- Экономика
- Экономикалық география
- Электротехника
- Қазақстан тарихы
- Қаржы
- Құрылыс
- Құқық, Криминалистика
- Әдебиет
- Өнер, музыка
- Өнеркәсіп, Өндіріс
Қазақ тілінде жазылған рефераттар, курстық жұмыстар, дипломдық жұмыстар бойынша біздің қор #1 болып табылады.

Ақпарат
Қосымша
Email: info@stud.kz