Дипломдық ЖҰмыс 5В011100 «Информатика»



бет18/31
Дата19.10.2022
өлшемі1,6 Mb.
#153890
түріДиплом
1   ...   14   15   16   17   18   19   20   21   ...   31
Байланысты:
Махан Асел Visual basic программалау тілінде стандартты емес формаларды құру жолдарын оқытуға арналған көмекші электронды оқу құралын жетілдіру диплом жұмысы

Логикалық операторлар
Компьютердегі барлық ақпарат 1-ден және 0-ден тұрады, ол екілік сан деп аталады. Кез келген математикалық немесе логикалық әрекеттер екілік түрінде жазылуы мүмкін. Математикалық әрекет екілік жүйеде орындалады-бұл, нәтиже 1-ден жоғары болса ол тағы да 0-ге жіберіледі, ал келесі тәртіп бойынша битке 1 қосылады.
Компьютер 0-мен және 1-мен жұмыс істегендіктен, ол “ақиқат”және ”жалған” шартталрын, ал бір –“ақиқит” мәнін береді.
And логикалық оператор
And логикалық операторы екі өрнектің (коньюнкция) логикалық біріктірумен сипатталды. Басқаша айтқанда , программа екі өрнектің де бір мезетте ақиқат болатынын тексереді.
And логикалық операторы өте қарапайым жұмыс істейді.



Өрнек1

&

Өрнек2

Нәтиже

Ақиқат




Ақиқат

Ақиқат

Ақиқат




Жалған

Жалған

Жалған




Ақиқат

Жалған

Жалған




Жалған

Жалған

Eqv логикалық операторы
Eqv операторы екі өрнектің эквиволенттігін тексереді. Егер олардың логикалық мәндері сәйкес болатын болса, онда нәтижесі ақиқат. Егер екі түрлі, нәтижесі жалған.Келесідей шындық кестесін көрейік:



Өрнек

Eqv

Өрнек

Нәтиже

Ақиқат




Ақиқат

Ақиқат

Ақиқат




Жалған

Жалған

Жалған




Ақиқат

Жалған

Жалған




Жалған

Ақиқат

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



Өрнек1

OR

Өрнек2

Нәтиже

Ақиқат




Ақиқат

Ақиқат

Ақиқат




Жалған

Ақиқат

Жалған




Ақиқат

Ақиқат

Жалған




Жалған

Жалған



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



Өрнек1

XOR

Өрнек2

Нәтиже

Ақиқат




Ақиқат

Жалған

Ақиқат




Жалған

Ақиқат

Жалған




Ақиқат

Ақиқат

Жалған




Жалған

Жалған

Тең емес” шарты тексереу


Егер сіз бір мән екіншісінен жақсы ма екенін білгіңіз келсе тең емес шартын қолданыңыз. Ол келесі символ түрінде болады “<>”.
If x<>3 Then
MsgBox “x 3-ке тең емес”
End If
Бұл оператор, қолданушы мән енгізілсе тексеруге ыңғайлы. Оны түсіну үшін, алдыңғы мысал программасын қарастырайық.

  1. Загадать число” батырмасын басыңыз;

  2. “Угадать” батырмасын басыңыз;

  3. Енгізу терезесі ашылған Ок немесе Cancel батырмасын шертіңіз.

Сәйкес келмеген тип қатесін хабарлайтын хабарлама шығады. Ол келесі жолда болған қате:
Guess=CInt(InputBox(msg))
Мәселе мынада, Cint функциясы бүтін санға айналатын мәлімет алу керек. Егер функция бос жол үшін шақырылса, қате туралы хабарлама шығады. Тексеру алдында, қате болмау үшін қолданушы кейбір мәндерді енгізгеніне көз жеткізіңіз. Тексеруді келесі команда арқылы жүргізуге болады:
If re<> “” Then
Бұл “Егер Guess мәні бос жолға тең болмамаса, онда бірдеме істеу керек” деген мағынаны білдіреді.

  1. cmdGuess батырмасының Click оқиғасының процедурасына түзету енгізіп және оны келесі түрге келтіріңіз.

Private Sub cmdGuess_Click()
Dim Guess As Integer
Dim msg As String
Dim cap As String
Dim re As String
'Создать сообщение
msg = "Введите число от 1 до 10"
'Получить число от полльзователя
re = InputBox(msg)
'Убедитесь в том что пользователь ввел значение...
If re <> "" Then
'Преоброзовать строку в целое число
Guess = CInt(re)
'Число угадано верно?
Select Case Guess
Case Is = SecretNumber
'Да! Ползователь угадал!
msg = "Вы угадали!"
cap = "Верно!"
'Вывести сообщенеие
MsgBox msg, vbExclamation, cap
'Закончить игру
End
Case Is < SecretNumber
'Нет. Следующая попытка...
msg = "Неверно. Заданое число больше"
cap = "Попробуйте снова!"
MsgBox msg, vbInformation, cap
End Select
Else
msg = "Вы должны ввести число!"
cap = "Введите число!"
MsgBox msg, vbInfirmation, cap
End If
End Sub

  1. Жобаны сақтап, іске қосыңыз. Суретте егер сіз сан беруді ұмытсаңыз да болатынын көрсетеді.




If…Then…Else операторы
If…Then…Else операторы Visual Basic-те шартты ексерудің қарапайым, әрі көп таралған түрі. Оның қарастырылған If…Then түрінің синтаксисі келесідей:
If шарт1 операторы шарт2 then
‘Выполнить действия
End If
Бұл мысалды Оператор бұрын қарастырылған And, OR, -, <> және т.б. операторлар болуы мүмкін. Шарт 1 және Шарт2-айнымалылар немесе тұрақтылар. Мысалы жолдарды салыстыру былай орындалады:
Pin=”123456”
.
.
.
If Pin=”123456” Then
MsgBox”Верное значение Pin”
End If
Бұл жағдайда Pin алдын-ала белгілі ”123456” мәнімен салыстырады . Егер шарт ақиқат болса, экранға хабарлама шығады.
Кейде біз тек шарттың орныдалуына ғана мән береміз, бірақ қарама-қарсы жағдайды да қарастыруға қажет. Қарама-қарсы жағдайды өңдеу үшін Else операторы қолданылады. Синтаксис келесідей:
If Шарт1 Операторы Шарт2 Then
‘Выпольнить некоторые действия
Else
‘Выполнить другие действия
End If
Сізге тек бірінші орындалатын блоктан соң Else секциясын қосу керек. Одан кейін орындалатын блок Else және End If кілтті сөздерінің ортасына орналасады. Алдыңғы мысалдағыдай, ол былай болады:
Pin=”123456”
.
.
.If Pin=”123456” Then
MsgBox”Верное значение Pin”
Else
MsgBox”Невеерное значение Pin”
End If
Енді сіз шартты қалай түзетуді үйрендіңіз. Бұл пайдалы кеңес сізге болашақта қате жібермеуге көмектеседі.
If функциясы
Сіз If…Then…Else блогының орнына Iif немесе If функциясын қолдануыңызға болады. Бір ғана өзгешелігі If екі шартты да тексереді. Келесі блокты қарастырайқ:
Function TasteIt (Food As String) As String
CheckIt=Iif (Food =”Гамбургер”,”Нет спосибо”,”Вкусно!”)
End Function
TasteIt() функциясын қарастырайық. Ол Food айнымалысы “Гамбургер” мәнін қабылдайтынын тексереді және егер қабылдаса “Нет, спасибо” жолын қайтарады, кері жағдайда “Вкусно!” жолы қайтарылады.
Iif функциясының қайтарылатын мәніне айнамалылар және есептелетін шарттар бола алады.
Select Case…End Select операторы
Бірнеше шартттардан тұратын күрделі шешім қабылдауға Select Case..End Select блогын пйдалануға болады. Оның синтаксисі қарапайым:
Select Case x
Case is=3
‘Выполнить некоторые действия
Case Is>17
‘Выполнить другие действия
Case Else
‘Действия для случай, когда не выполнено
‘ни одно из предыдущих условий
End Select
Әрбір Select Case операторы үшін, программаға сәйкес End Select операторы болуы тиіс. Case, Select Case және End Select арасындағы секция әр түрлі болады.
Әрбір тексерілетін шарт үшін Case бөлек секциясы құралады. Егер сіз ешқандай шарт орындалмай тұрып , бір жағдайда тексергіңіз келсе, Case Else секциясын құрыңыз.
Select Case операторына жолдық литераларды, айнымалылырды және мәндер диапазонын тексеруге болады. Мысалы, келесі бөлек сан 1-ден 10-ға дейінгі аралықта жататынын тексереді.
Select Case guess
Case 1 to 10
‘Предложение верно
Case Else
‘Предложените не верно
End Select
Қайталынатын әрекеттердің орындалуы
For…Next циклі
Visual Basic-те негізгі цикл For…Next…Else. Ол итерацияның бірлігі бөлігін орындау үшін қолданылады. For…Next циклі әдетте есептегіштерде (счетчик) немесе итерация көлемі алдын-ала белгілі болғанда қолданылады. Оның синтаксисі келесідей:
For Есептегіш=Бастапқы мән To Соңғы мән
‘Қайталынатын әрекеттер
Next Есептегіш
Бұл бөліктің қарапайымдылығына қарамастан, кейбір жағдайларда назар аударайық:

  • Есептегіш айнымалысы сандық тип (Integer немесе Long) және оны программист көрсетеді

  • Бастапқы мән, есептеу басталатын айнымалының жағдайын анықтайды.

  • Соңғы мән есептеу аяқталатын айнымалының жағдайын анықтайды.

Мысалы, айнымалы х циклде 1-ден 5-ке дейін мән қабылдасын десек, есептегіш х-ке айналады, бастапқы мән 1-ге, ал Соңғы мән 5 болады.
For…Next циклінің бірнеше жолында Step кілтті сөзі болуы мүмкін(келісім бойынша ол 1). Мысалы, егер есептегіштің мәні әр кезде 3-ке қсіп отырса, For жолы Step 3 пен аяқталады. Келесі мысалды қараңыз:
For I=1 to 100 Step 5
‘Повторяющиеся действия
Next
Do…Loop циклі
Циклдің басқа типі Do..Loop кострукциясының көмегімен жасалады. Бұл құрылым, егер қайталанатын әрекеттердің саны алдын-ала белгілі болғанда және сіз кейбір шарттың орындалуын күткіңіз келгенде қолданылады. Мысалы, мәліметтер қорынын алынған жазуларды циклде таңдауға болады ма? Жазулардың дәл көлемі алдын-ала белгілі емес. Do…Loop циклі бұл жағдайда да қолдануға болады. Бұл циклді шексіз қолдануға болады:
Do
‘Повторяющиеся действия
Loop
Аяқталу шартымен цикл мына түрде болды:
Do While X<>10
X=X+1
Loop
Бұл айнымалының мәні 10-нан кіші болғанша жұмыс істейді. Циклден шығу үшін кез келген шартты қолдануға болады.
While…Wend циклі
Бұл цикл Do...Loop құрылымына ұқсас. Бұл жерде команда көрсетілген шарт үшін ақиқат болғанша істейді. Мысалы, келесі цикл:
While X<10
X=X+1
Wend
X 10 мәнін қабылдағанша істейді.


Циклді қолдану мысалы
Келесі мысал циклдің, шарттың және логикалық оператордың бірігіп атқаратын жұмысын кқрсетеді. Бұл жерде формада бірнеше текстік алаңдарды толтыру үшін циклдің түрлері көрсетілген.

  1. File->New Project командасымен жаңа жоба құр.

  2. New Priject сұқбат терезеде Standard Exe таңбашасын таңда және Ок батырмасын бас.

  3. Form1 формасының Name қасиетіне frmMain, ал Caption қасиетіне Циклы мәнін бер.

  4. Ctrl+E пернелері арқылы меню редакторын аш.

  5. Меню құрыңыз. Caption жолына &Циклы мәнін, ал Name жолына mnu Loop мәнін бер.

  6. Менюдің жаңа түрін құр(Next батырмасын бас).

  7. Next батырмаcын бас (суретте көрсетілгендей).




Циклді қолдану мысалына байланысты сурет

  1. Caption жолына &For…Next, ал Name жолына mnuLoopForNext мәнін беріңіз.

  2. Next батырмасын бас.

  3. Caption жолына &Do…Loop, ал Name жолына mnuLoopDo-Loop мәнін бер.

  4. Next батырмасын бас, келесі меню командасын құру үшін Caption жолына &While…Wend, ал Name жолына mnuLoopWhileWend мәнін бер.

  5. Next батырмасын бас, Caption қасиетіне “-“(дефис), ал Name қасиетіне mnuLoopSep 1 мәнін бер.

  6. Менюдің келесі командасын құрып, Caption жолына “&Очистить”, ал Name жолына mnuLoopClear мәнін бер.

  7. Меню редакторын жабу үшін Ок батырмасын бас.

  8. File->Save Project командасымен жобаны сақта.

  9. frmMain формасында тестік алаң құрыңыз, оны сол жақ жоғарғы бұрышқа орналастырып және Name қасиетіне txtTextBox мәнін бер. Text қасиетінің ағымдық жазуын өшіріп тастаңыз.

  10. Форма конструкторындағы txtTextBox элементін шертіп, оны активті етіңіз.

  11. Ctrl+C пернелерін бас. Бұл элементті ауыстыру буферіне көшіру жасайды.

  12. frmMain формасын шертіңіз.

  13. Ctrl+V пернесін шерт, буфердегі текстік алаңды формаға орнатады. Төмендегі суретте көрсетілгендей сұқбат терезе ашылады., бұл сізге элементтер массивін құруды ұсынады. Yes батырмасын басыңыз.

  14. Жаңа текстік алаңда біріншінің оң жағына орналастырыңыз.

  15. Форманы қайта шартіп,Ctrl+V пернесін бас, буферден келесі текстік алаңды орнату үшін, оны алдыңғы алаңдардың оң жағына орнатыңыз(20 және 21 қадамдары бойынша құрылған).

Біз текстік алаңның 3 қатарын құрдық. Осылай етіп жалғастырып 3 бағана және 5 жолдан тұратын таблица түрінде текстік алаң орнатыңыз. 15 тестік элемент орналасқан форма суреттегідей болсын:



Текстік алаңның массивінің формасы



  1. frmmain формасындағы Циклы сенюінен For… Next командасын таңдаңыз. Программа терезесі mnuLoopForNext_Click қасиетінің процедурасымен ашылады.

  2. Процедураға келесі фрагментті қосыңыз:

Private Sub mnuLoopForNext_Click()
Dim I As integer
‘Заполнить текстовое поле в цикле For…Next
For I=0 to14
TxtText Box(i).Text=”I-”&Trim$(Str&(i))
Next
End sub

  1. mnuDoLoop_Click оқиғасының процедурасына келесі фрагментті жазыңыз.

Private Sub mnuDoLoop_Clock()
Dim As Integer
‘Запонить текстовое поля в цикле For…Next
I=0
Do While I<15
TxtTextBox(i)7Text=”I=”&Trim$(Str$(i))
I=I+1
Loop
End Sub

  1. Келесі фрагментті MnuWhileWend_Click оқиғасының процедурасына қойыңыз:

Private Sub MnuWhileWend_Click
Dim I As Integer
‘Запонит текстовые поля в цикле For…Next
I=0
While I<15
TxttextBox(i)7Text=”I=”&Trim$(Str$(i))
I=I+1
Wend
End Sub

  1. mnuLoopClear_Click процедурасына келесі фрагментті қойыңыз.

Private Sub mnuWhileWend_Click()
Dim x As Control
‘Перебрать все текстовые поля на форме
‘и стереть их содержание
For Each x In frmMain.Controls
If Ucase$(left$(x.Name.3))=”TxT” Then
x.Text=“”
End If
Next
End Sub

  1. Жобаны сақтап және қосып көрсетіңіз.


Циклмен жұмыс істеу формасы

Циклы менюінде бар циклді бар циклдің біреуін таңдаңыз және текстік алаңның өзгеруін көрсетіңіз. Барлық циклдер типі әр түрлі әдіспен бірдей қорытынды береді(суретте көрсетілгендей). Бір есеп программалауда әртүрлі жолмен шығарылады. Циклдер жұмысын көріп болған соң, Циклы менюінен Очистить командасын таңдаңыз. Программа формадағы барлық обьектілерді теріп және әрбір текстік алаңның Text қасиетін тазалайды.




Достарыңызбен бөлісу:
1   ...   14   15   16   17   18   19   20   21   ...   31




©engime.org 2024
әкімшілігінің қараңыз

    Басты бет