Студопедия.Орг Главная | Случайная страница | Контакты | Мы поможем в написании вашей работы!  
 

Дістемелік нұсқаулар. Көптеген бағдарламаларда таңдау болады: ақиқат – жалған



Көптеген бағдарламаларда таңдау болады: ақиқат – жалған. Осындай шешімдерді қабылдау үшін If… Then и Select Case шартты операторлары бар.

If… Then… Else операторының синтаксисі келесідей:

If <шарт> Then <шарттың мәні True (ақиқат) болғанда орындалатын операторлар тобы>

Else <шарттың мәні False (жалған) болғанда орындалатын операторлар тобы>

EndIf

Select Case операторының синтаксисі:

Select Case Тексерілетін Өрнек

Case Мән_1

Операторлар тобы _1

Case Мән_2

Операторлар тобы_2

End Select

Енді шартты оператрлармен бірнеше мысал қарастырайық.

Мысал №1.

Айталық, брокерлік орынға арналған сыйақы қоры келісімдер көлеміне байланысты болсын. Келесідей шарттар қойылсын:

- келісімдер көлемі 200 мың тг дейін болғанда, сыйақы қоры келісімдер көлемінің 0,1% тең;

- келісімдер көлемі 200 мың тг мен 500 мың тг аралығында болғанда, сыйақы қоры келісімдер көлемінің 0,15% тең;

- 500 мың тг жоғары болғанда, 0,2% тең.

Бағдарламаны құру:

1. Формаға суретте көрсетілгендей элементтер орналастырып, оларға атау беріңіз.

2. lblСыйақы қоры және lblСыйақы жазу басқару элементтеріне BordedStyle – 1 – Fixed Single қасиет мәндерін орнатыңыз.


Сыйақыны есептеу.

1. cmdЕсептеу батырмасында екі рет шертіп, кодты редактолрлеу терезесіне ауысыңыз да, процедура шаблонына бағдарлама кодын енгізіңіз:

Private Sub cmdЕсептеу_Click()

Dim КелісімдерКөлемі As Single

Dim СыйақыҚоры As Single

Dim Msg$’ Қателік туралы мәлімдемені енгізуге арналған жолдық айнымалы

Dim Премия!

‘Мәтін өрісі бос емес

‘және енгізілген ақпарат сан екеніне көз жеткіземіз

‘ол үшін IsNumeric функциясын қолданамыз

‘Егер шарт дұрыс болса, онда мәтін деректің керекті типіне түрленеді

‘ал нәтижені сәйкес айнымалыға меншіктейміз

If txt КелісімдерКөлемі.Text <> “ ” And IsNumeric(txt КелісімдерКөлемі.Text) Then

КелісімдерКөлемі = CSng(txt КелісімдерКөлемі.Тext)

‘Егер шар орындалмаса, онда қолданушыға MsgBox операторының көмегімен

‘деректер енгізу барысындща болған қателік туралы мәлімдеме құрамыз

‘курсорды өріске SetFocus әдісінің көмегімен орналастырамыз

‘содан кейін бағдарлама жұмысы аяқталады

Else

Msd$ = “КелісімдерКөлемі өрісін бос қалдыруға немесе сандық емес мәлімет енгізуге болмайды ”

MsgBox Msg, vbExclamation, “Деректерді енгізу қателігі ”

Txt КелісімдерКөлемі.SetFocus

Exit Sub

End If

‘Енгізілген санды есептің берілген шартымен салыстырамыз

‘Егер шарт дұрыс болса, онда Then кілт сөзінен кейінгі операторларды орындаймыз

If КелісімдерКөлемі < 200 Then

СыйақыҚоры = 0.1

‘Егер шарт орындалмаса, келесі тексеріс орындалады,

‘Егер шарт ақиқато болса, онда операцияны орындаймыз.

ElseIf КелісімдерКөлемі >= 200 And КелісімдерКөлемі< 500 Then

СыйақыҚоры = 0,15

‘Егер ешбір шарт дұрыс болмаса, онда үшінші операцияны орындаймыз

Else

СыйақыҚоры = 0,2

End If

Премия = КелісімдерКөлемі * СыйақыҚоры * 10

lbl СыйақыҚоры.Caption = CStr(СыйақыҚоры)

lblСыйақы.Caption = CStr(Сыйақы)

End Sub

Берілген бағдарлама кодында бізге таныс емес MsgBox операторы, SetFocus әдісі мен IsNumeric функциясы кездеседі.

MsgBox операторы белглілі бір мәлімдемесі бар ақпараттық сұхбат терезесін экранға шығарады.

SetFocus әдісін қолданғанда объект фокус алады.

IsFocus функциясы енгізілген мәлімет сан не мәтін екенін білу қажет болғанда қолданылады.

Мысал №2.

Кәсіпорынның рентабельділігінің көрсеткіші келесі аралықтарға бөлінген:

0-ден 3% дейін – рентабельділігі төмен

3-ден 20% дейін – рентабельді

20-ден 40% дейін – орта рентабельді

40-ден 70% дейін – рентабельділігі жоғары

Кәсіпорын рентабельділігін өзіндік құнның табысқа қатынасы ретінде анықтап, оның қай аралықта жатқандығын анықтау қажет.

Шешуі.

1. Формаға суретте көрсетілгендей элементтер орналастырып, оларға атау беріңіз.

2. Барлық элементтер үшін Name қасиетінің мәнін сәйкес атаулармен беріңіз.

3. Code кодты редакторлеу терезесіне көшіңіз.

4. cmbЕсептеу батырмасының процедурасына төменде көрсетілген кодты енгізіңіз:

Private Sub cmbЕсептеу_Click()

‘Currency типті айнымалыларды хабарлау

Dim ӨзіндікҚұн@

Dim Табыс@

Dim Рентабельділік@

‘Қателік туралы мәлімдемені шығаратын айнымалы


«Кәсіпорын рентабельділігін есептеу» бағдарламасы.

Dim Мәлімдеме$

If txt ӨзіндікҚұн.Text <>”” And Is Numeric (txt Себестоимость. Text) Then

ӨзіндікҚұн @ = CCur(txt ӨзіндікҚұн.Text)

Else

Мәлімдеме = “Мәтін өрісін бос қалдыруға немесе сандық емес мәлімет енгізуге болмайды”

MsgBox Мәлімдеме, vbExclamation, “Деректерді енгізу қателігі”

txt ӨзіндікҚұн.SetFocus

Exit Sub

End If

If txt Табыс.Text<>”” And IsNumeric(txt Табыс.Text) Then

Табыс @ = Ccur(txt Табыс.Text)

Else

Мәлімдеме = “ Мәтін өрісін бос қалдыруға немесе сандық емес мәлімет енгізуге болмайды ”

MsgBox ообщении, vbExclamation, “ Деректерді енгізу қателігі ”

txt Табыс.SetFocus

Exit Sub

End If

Рентабельділік@ = ӨзіндікҚұн@/Табыс@

lbl Рентабельділік.Caption = CStr(Рентабельділік @)

Select Case Рентабельділік

Case 0 To 3

lblАралық.Caption = “Рентабельділігі төмен”

Case 4 To 20

lbl Аралық.Caption = “Рентабельді”

Case 21 To 40

lbl Аралық.Caption = “Орта рентабельді”

Case 41 To 70

lbl Аралық.Caption = “Рентабельділігі жоғары”

Case Else

lbl Аралық.Caption = “Деректер қате”

End Select

End Sub

5. Бағдарламаны іске қосыңыз, дұрыс деп тапсаңыз бағдарлама жұмысына түзетулер енгізіңіз.

Өз бетімен орындауға арналған тапсырмалар:

Басқару операторларын пайдаланып, бағдарлама құрыңыз.

Лабораториялық жұмыс №14 (1 сағат)

Тақырыбы: «Циклдерді бағдарламалау»

Жұмыстың мақсаты: VBA-те циклдік алгоритмдерге бағдарламалар құру

Тапсырма:

1. VBA-тегі итеративті операторларды оқып-үйрену

2. Санауышы бар циклдерді және шарты бар циклдерді қарастыру

3. VBA-те циклге бағдарлама құру

4. Есеп беруді құру





Дата публикования: 2014-11-18; Прочитано: 851 | Нарушение авторского права страницы | Мы поможем в написании вашей работы!



studopedia.org - Студопедия.Орг - 2014-2024 год. Студопедия не является автором материалов, которые размещены. Но предоставляет возможность бесплатного использования (0.012 с)...