Калькулятор расчета стоимости страховки - VB

Узнай цену своей работы

Формулировка задачи:

Товарищи, помогите, пожалуйста, разобраться как сделать так чтоб можно было посчитать стоимость Зеленой карты. Есть 3 поля, от которых зависит стоимость страховки: И есть вот такая сетка тарифов (берем пока весь мир, такая же для СНГ). Т.е сумма страховки = пересечению нашего ТС и срока страхования.
Тип транспортного средства Срок страхования, месяцев                        
  15 дней 1 2 3 4 5 6 7 8 9 10 11 12
Легковые автомобили 1 550 2 950 5 480 7 730 9 550 10 390 11 240 11 800 12 360 12 920 13 340 13 620 14 050
Прицепы к легковым автомобилям 460 880 1 640 2 310 2 860 3 110 3 360 3 530 3700 3 860 3 990 4 070 4 200
Грузовые автомобили, тягачи 2 580 4 920 9 140 12 890 15 940 17 350 18 750 19 690 20 630 21 570 22 270 22 740 23 440
Прицепы и полуприцепы к грузовым автомобилям и тягачам 520 990 1 830 2 580 3 190 3 480 3 760 3 950 4 130 4 320 4 460 4 560 4 700
Автобусы 4 420 7 930 13 170 18 400 23 630 28 860 34 090 39 330 44 560 49 790 55 020 60 250 65 480
Мотоциклы, мотороллеры, мотоколяски и мопеды 770 1 480 2 740 3 860 4 780 5 200 5 620 5 900 6 180 6 460 6 670 6 820 7 030
Сельскохозяйственная и строительная техника 940 1 800 3 340 4 720 5 830 6 340 6 860 7 200 7 550 7 890 8 150 8 320 8 570
Вопрос: как эту таблицу вогнать в VB? Чтобы при выборе параметров выскакивала сумма в поле "Стоимость полиса". Название столбцов "Срок страхования, месяцев" объединяем горизонтально по всей таблице. Надеюсь, понятно. Внимание! Таких таблицы 2 - территория использования делится на "Весь мир" и "Украину, Беларусь, Молдову".

Решение задачи: «Калькулятор расчета стоимости страховки»

textual
Листинг программы
Public Class GreenCard
    Private Sub ComboBox1_SelectedIndexChanged(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles ComboBox1.SelectedIndexChanged
        Call Main()
    End Sub
    Private Sub ComboBox2_SelectedIndexChanged(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles ComboBox2.SelectedIndexChanged
        Call Main()
    End Sub
    Private Sub ComboBox3_SelectedIndexChanged(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles ComboBox3.SelectedIndexChanged
        Call Main()
    End Sub
    Sub Main()
        Dim month As Integer = Val(ComboBox3.Text)
        Dim r As Integer = 1 : If CInt(ComboBox2.SelectedIndex) >= 0 Then r = CInt(ComboBox2.SelectedIndex) + 1
        Select Case ComboBox1.Text
            Case "Весь мир"
                TextBox1.Text = CStr(TabAllWorld(r, month))
            Case "СНГ"
                TextBox1.Text = CStr(TabSNG(r, month))
        End Select
    End Sub
 
    Private Function TabAllWorld(ByVal rowTab As Integer, ByVal month As Integer) As Long
        If month > 12 Then month = 0
        Dim T1() As Long = {1550, 2950, 5480, 7730, 9550, 10390, 11240, 11800, 12360, 12920, 13340, 13620, 14050}
        Dim T2() As Long = {460, 880, 1640, 2310, 2860, 3110, 3360, 3530, 3700, 3860, 3990, 4070, 4200}
        Dim T3() As Long = {2580, 4920, 9140, 12890, 15940, 17350, 18750, 19690, 20630, 21570, 22270, 22740, 23440}
        Dim T4() As Long = {520, 990, 1830, 2580, 3190, 3480, 3760, 3950, 4130, 4320, 4460, 4560, 4700}
        Dim T5() As Long = {4420, 7930, 13170, 18400, 23630, 28860, 34090, 39330, 44560, 49790, 55020, 60250, 65480}
        Dim T6() As Long = {770, 1480, 2740, 3860, 4780, 5200, 5620, 5900, 6180, 6460, 6670, 6820, 7030}
        Dim T7() As Long = {940, 1800, 3340, 4720, 5830, 6340, 6860, 7200, 7550, 7890, 8150, 8320, 8570}
        Select Case rowTab
            Case 1 : Return T1(month)
            Case 2 : Return T2(month)
            Case 3 : Return T3(month)
            Case 4 : Return T4(month)
            Case 5 : Return T5(month)
            Case 6 : Return T6(month)
            Case 7 : Return T7(month)
        End Select
    End Function
 
    Private Function TabSNG(ByVal rowTab As Integer, ByVal month As Integer) As String
        'Функция для СНГ не написана
        If month > 12 Then month = 0
        Return "Нет данных."
    End Function
 
End Class

ИИ поможет Вам:


  • решить любую задачу по программированию
  • объяснить код
  • расставить комментарии в коде
  • и т.д
Попробуйте бесплатно

Оцени полезность:

10   голосов , оценка 4 из 5