Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
Mv_basic.doc
Скачиваний:
0
Добавлен:
01.03.2025
Размер:
1.88 Mб
Скачать
    1. Пример программы с использованием пользовательских функций и элемента комбинированный список

      1. Постановка задачи

Требуется разработать программу вычисления накопленной суммы по выданному кредиту (или вкладу) с использованием формулы простых процентов.

Расчет накопленной суммы реализовать в виде пользовательской функции. Внешний вид пользовательского интерфейса приведен на рис. 5.7.

Рис. 5.7. Вид пользовательской формы программы «Кредит»

Накопленная сумма по выданному кредиту (или вкладу) вычисляется по формуле:

).

Здесь:

S – значение накопленной суммы;

P – величина кредита;

i – номинальная годовая процентная ставка;

t – срок кредита (может задаваться в годах, кварталах, месяцах, днях);

m – коэффициент, значение которого зависит от способа задания срока кредита (m=1, если срок кредита задан в годах; m=4, если срок кредита задан в кварталах; m=12, если срок кредита задан в месяцах; m=360 или 365, если срок кредита задан в днях).

Контрольные данные для расчета:

исходные данные

Величина кредита 1000

Годовая процентная ставка 10%

Срок кредита 12 месяцев

результат

Величина накопленной суммы 1100

      1. Программная реализация задачи

Для реализации описанных выше функций необходимо в форму поместить элементы управления, представленные в таблице 5.3.

Таблица 5.3.

Элементы управления программы «Кредит» и значения их свойств

Элемент

Свойство

Значение

Форма

Caption

Расчет накопленной суммы

Метка

для суммы кредита

Name

LabelP

Caption

Сумма кредита

Метка

для годовой % ставки

Name

Labeli

Caption

Годовая % ставка

Метка

для накопленной суммы

Name

LabelS

Caption

Накопленная сумма

Текстовое поле

для переменой P

Name

TextP

Text

Enabled

True

Текстовое поле

для переменной i

Name

Texti

Text

Enabled

True

Текстовое поле

для переменной S

Name

TextS

Text

Enabled

False

Кнопка для вычисления

Name

CmdCalc

Caption

Вычислить

Кнопка для выхода

Name

CmdExit

Caption

Выход

Рамка

Caption

Параметры периода кредита

Метка

для срока

Name

Labelt

Caption

Срок

Текстовое поле

для переменной t

Name

Textt

Text

Enabled

True

Метка для типа измерений

Name

LabelTip

Caption

Тип измерения

Комбинированный список для типа измерений

Name

ComboD

Text

Флажок

Name

ChD

Caption

дней в году (да – 360, нет – 365)

Enabled

False

Полный текст программного кода приведен на рис.5.8.

Для проверки правильности работы программы на рис 5.7 представлены результаты расчетов, проведенных на контрольных данных.

Описание переменных:

Dim P, i, S As Double

Dim t As Integer, m As Integer

Dim Tip As String

Обработчик события кнопки «Вычислить»:

Private Sub CmdCalc_Click()

If Not IsNumeric(TextP.Text) Then

Beep

MsgBox "В поле Cумма кредита не число !", vbOKOnly, "Error"

Exit Sub

End If

P = Val(TextP.Text)

If Not IsNumeric(Texti.Text) Then

Beep

MsgBox "В поле Годовая % ставка не число !", vbOKOnly, "Error"

Exit Sub

End If

i = Val(Texti.Text)

If Not IsNumeric(Textt.Text) Then

Beep

MsgBox "В поле Срок не число !", vbOKOnly, "Error"

Exit Sub

End If

t = Val(Textt.Text)

Tip = ComboD.Text ‘ Выбор выделенного элемента списка

Select case Tip ' Выбор типа задания срока кредита

Case "год"

m=1

Case "квартал"

m=4

Case "месяц"

m=12

Case "день"

If ChD.Value=1 Then ‘ Проверка включения флажка

m=360

Else

m=365

End If

Case Else

MsgBox "Не задан тип измерения"

ComboD.SetFocus

Exit Sub

End Select

S = FSumm(P, i, t, m)

TextS.Text=CStr(Round(S,2))

End Sub

Обработчик события кнопки «Выход»:

Private Sub CmdExit_Click()

End

End Sub

' Обработчик события инициализации формы:

Private Sub Form_Load()

' Заполнение элементов списка

ComboD.Clear

ComboD.AddItem ("год")

ComboD.AddItem ("квартал")

ComboD.AddItem ("месяц")

ComboD.AddItem ("день")

ChD.Enabled = False ' Недоступность флажка для включения

End Sub

' Обработчик события по выбору элемента из комбинированного списка

Private Sub ComboD_Click()

If ComboD.Text = "день" Then

ChD.Enabled = True ' Доступность флажка для включения

Else

ChD.Enabled = False ' Недоступность флажка для включения

End If

End Sub

Функция вычисления накопленной суммы

Private Function FSumm(P, i, t, m) As Single

FSumm = P * (1 + i * t / 100 / m)

End Function

Рис. 5.8. Листинг программы «Кредит»

Соседние файлы в предмете [НЕСОРТИРОВАННОЕ]