Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
Комп подготовка - ВБ - вар 4 - курсовик - оконч...doc
Скачиваний:
3
Добавлен:
01.03.2025
Размер:
751.1 Кб
Скачать

5. Агоритмы решения поставленных задач

Создание справки 1 Алгоритм

Код

Private Sub mnuSpr1_Click()

SaveData (ActTab)

u = 0

For i = 0 To UCHCount - 1

If Spravka1(i).ClassU<10Then

Spravka1(u).FamiliaU = Uchenik(i).FamiliaU

Spravka1(u).PolU = Uchenik(i).PolU

Spravka1(u).Class = Uchenik(i).ClassU

Spravka1(u).FizRazvitieU = Uchenik(i).FizRazvitieU

u = u + 1

End If

Next i

SPR1Count = u

For i = 0 To SPR1Count - 2

For u = 1 To SPR1Count - 1 - i

If Spravka1(u - 1).FamiliaU > Spravka1(u).FamiliaU Then

Spr1Temp(0) = Spravka1(u - 1)

Spravka1(u - 1) = Spravka1(u)

Spravka1(u) = Spr1Temp(0)

End If

Next u

Next i

mainGrid.Clear

ActTab = 3

If SPR1Count = 0 Then

mainGrid.Rows = 2

Else

mainGrid.Rows = SPR1Count + 1

End If

mainGrid.Cols = 4

mainGrid.FixedCols = 0

mainGrid.FixedRows = 1

mainGrid.TextMatrix(0, 0) = "Фамилия ученика"

mainGrid.TextMatrix(0, 1) = "Пол"

mainGrid.TextMatrix(0, 2) = "Класс"

mainGrid.TextMatrix(0, 3) = "Физическое развитие"

mainGrid.Visible = True

LoadData (ActTab)

End Sub

Создание справки 2

Алгоритм

Код

Private Sub mnuSpr2_Click()

SaveData (ActTab)

u = 0

For i = 0 To SMCount - 1

If Spravka2(i).KolDeteyS < 3Then

Spravka2(u).FamiliaS = Uchenik(i).FamiliaS

Spravka2(u).FamiliaRodS = Uchenik(i).FamiliaRodS

Spravka2(u).KolDeteyS = Uchenik(i).KolDeteyS

u = u + 1

End If

Next i

SPR2Count = u

For i = 0 To SPR2Count - 2

For u = 1 To SPR2Count - 1 - i

If Spravka2(u - 1).UchenikiS > Spravka2(u).UchenikiS Then

Spr2Temp(0) = Spravka2(u - 1)

Spravka2(u - 1) = Spravka2(u)

Spravka2(u) = Spr2Temp(0)

End If

Next u

Next i

mainGrid.Clear

ActTab = 4

If SPR2Count = 0 Then

mainGrid.Rows = 2

Else

mainGrid.Rows = SPR2Count + 1

End If

mainGrid.Cols = 3

mainGrid.FixedCols = 0

mainGrid.FixedRows = 1

mainGrid.TextMatrix(0, 0) = "Фамилия ученика"

mainGrid.TextMatrix(0, 1) = "Фамилия родителя"

mainGrid.TextMatrix(0, 2) = "Количество детей"

mainGrid.Visible = True

LoadData (ActTab)

End Sub

Создание справки 3

Алгоритм

Код

Private Sub mnuSpr3_Click()

SaveData (ActTab)

u = 0

For i = 0 To SVDCount - 1

If Spravka3(i).ClassU <9>

If Spravka3(i).SrOcenkaU <4,2

If Spravka3(i).KolDeteyS >3

Then

Spravka3(u).FamiliaUchS = Uchenik(i).FamiliaUchS

Spravka3(u).FamiliaRodS = Uchenik(i).FamiliaRodS

Spravka3(u).ClassU = Uchenik(i).ClassU

Spravka3(u).SrOcenkaU = Uchenik(i).SrOcenkaU

Spravka3(u).KolDeteyS = Uchenik(i).KolDeteyS

u = u + 1

End If

Next i

SPR3Count = u

mainGrid.Clear

ActTab = 5

If SPR3Count = 0 Then

mainGrid.Rows = 2

Else

mainGrid.Rows = SPR3Count + 1

End If

mainGrid.Cols = 5

mainGrid.FixedCols = 0

mainGrid.FixedRows = 1

mainGrid.TextMatrix(0, 0) = "Фамилия ученика"

mainGrid.TextMatrix(0, 1) = "Фамилия родителя"

mainGrid.TextMatrix(0, 2) = "Класс"

mainGrid.TextMatrix(0, 3) = "Средняя оценка"

mainGrid.TextMatrix(0, 4) = "Количество детей"

mainGrid.Visible = True

LoadData (ActTab)

End Sub

Составление списка учеников

Алгоритм

Код

Private Sub mnuSOI_Click()

SaveData (ActTab)

For i = 0 To SVDCount – 1

If Spravka3(i).ClassU <10> Then

SpisUch(i).FamiliaS = Uchenik(i).FamiliaS

SpisUch(i).PolU = Uchenik(i).PolU

SpisUch(i).ClassU = Uchenik(i).ClassU

SpisUch(i).SrOcenkaU = Uchenik(i).SrOcenkaU

SpisUch(i).FizRazvitieU = Uchenik(i).FizRazvitieU

SpisUch(i).DushDohod = Uchenik(i).SemBudget/(Ucheniki(i).KolDetey+Ucheniki(i).KolRoditeley)

Next i

UCHCount = SVDCount

mainGrid.Clear

ActTab = 6

If UCHCount = 0 Then

mainGrid.Rows = 2

Else

mainGrid.Rows = UCHCount + 1

End If

mainGrid.Cols = 6

mainGrid.FixedCols = 0

mainGrid.FixedRows = 1

mainGrid.TextMatrix(0, 0) = "Фамилия ученика"

mainGrid.TextMatrix(0, 1) = "Пол"

mainGrid.TextMatrix(0, 2) = "Класс"

mainGrid.TextMatrix(0, 3) = "Средний балл"

mainGrid.TextMatrix(0, 4) = "Физическое развитие"

mainGrid.TextMatrix(0, 5) = "Душевой доход"

mainGrid.Visible = True

LoadData (ActTab)

End Sub