Информатика 2011-2012 / Информатика-2-сем(2011) / Задания и примеры / Проекта / База данных -деканат / программа
.doc
Dim f(10000), f3(10000), f4(10000), f9(10000) As String, z(10000), _
z3(10000), z4(10000), kоличество, kk1, kk2, kk4, kol(10000), kol3(10000), kol4(10000), _
kol9(10000), z9(10000) As String, i, i10, i11, p, p1, j, t, u2 As Integer
Public Sub CmdДобавить_Click()
Фамилие = Text1.Text: Задание = Text2.Text: количество = Text3.Text
List1.AddItem Фамилие
List2.AddItem Задание
List3.AddItem количество
f(i) = Фамилие: z(i) = Задание: kk1 = количество
Open "spic1" For Append As #1
Write #1, f(i), z(i), kk1: kol(i) = Val(kk1)
Close #1
i = i + 1: p = i - 1
Open "spic2" For Output As #2
Write #2, p
Close #2
p = Val(p)
Text1.Text = "": Text2.Text = "": Text3.Text = ""
End Sub
Private Sub CmdОптимизировать_Click()
Начало.Enabled = False
Text11.Text = ""
Text12.Text = ""
Text13.Text = ""
Open "spic1" For Input As #1
i1 = 1
Do Until EOF(1)
Input #1, f4(i1), z4(i1), kk2: kol4(i1) = Val(kk2)
i1 = i1 + 1
Loop
pt1 = i1 - 1
Close #1
m1: flag = 0
For i4 = 1 To pt1 - 1
If f4(i4) > f4(i4 + 1) Then
u = f4(i4): f4(i4) = f4(i4 + 1): f4(i4 + 1) = u
u1 = z4(i4): z4(i4) = z4(i4 + 1): z4(i4 + 1) = u1
u2 = kol4(i4): kol4(i4) = kol4(i4 + 1): kol4(i4 + 1) = u2
flag = 1
End If
Next
If flag = 1 Then GoTo m1
' Далее описать блок схему
c = 1: t1 = 0: k = 1: j = 1
n2: If f4(k) = f4(j) Then
If k = j Then
GoTo n1
Else
kol4(k) = kol4(k) + kol4(j): t1 = t1 + 1
End If
End If
n1: j = j + 1
If j <= pt1 Then GoTo n2
f9(c) = f4(k): z9(c) = z4(k): kol9(c) = kol4(k)
c = c + 1: k = (k + t1) + 1
If k <= pt1 Then t1 = 0: j = k: GoTo n2
p9 = c - 1
Open "optim" For Output As #1
For c = 1 To p9
Write #1, f9(c), z9(c), kol9(c)
Next
Close #1
k1 = 1
For i4 = 1 To p9
Text11.Text = Text11.Text + Str(k1) + ". " + f9(i4) + Chr(13) + Chr(10)
Text12.Text = Text12.Text + Str(k1) + ". " + z9(i4) + Chr(13) + Chr(10)
Text13.Text = Text13.Text + Str(k1) + ". " + Str(kol9(i4)) + Chr(13) + Chr(10)
k1 = k1 + 1
Next
End Sub
Private Sub CmdПечать_Click()
FrmСписки2.Show
End Sub
Public Sub CmdПуск_Click()
Начало.Enabled = False
CmdДобавить.Enabled = True
Open "spic1" For Input As #1
i1 = 1
Do Until EOF(1)
Input #1, f(i1), z(i1), kk3: kol(i1) = Val(kk3)
List1.AddItem f(i1)
List2.AddItem z(i1)
List3.AddItem kol(i1)
Debug.Print "kol("; i1; ")="; kol(i1)
i1 = i1 + 1
Loop
Close #1
Open "spic2" For Input As #2
Input #2, p
Close #2
i = Val(p)
End Sub
Private Sub CmdУдаление1_Click()
dd2 = MsgBox("Вы действительно хотите удалить файл Spic1??", vbYesNo, "Удаление файлов")
If dd2 = vbYes Then Kill "spic1": Начало.Enabled = True
dd3 = MsgBox("Вы действительно хотите удалить файл Spic2??", vbYesNo, "Удаление файлов")
If dd3 = vbYes Then Kill "spic2": Начало.Enabled = True
dd3 = MsgBox("Вы действительно хотите удалить файл optim??", vbYesNo, "Удаление файлов")
If dd3 = vbYes Then Kill "optim": Начало.Enabled = True
Начало.Enabled = True
End Sub
Private Sub CodПросмотр_Click()
Text4.Text = ""
Text5.Text = ""
Text6.Text = ""
Open "spic1" For Input As #1
v = 1
Do Until EOF(1)
Input #1, f(v), z(v), kol(v)
Debug.Print " kol("; v; ")="; Str(kol(v))
Text4.Text = Text4.Text + Str(v) + ". " + f(v) + Chr(13) + Chr(10)
Text5.Text = Text5.Text + Str(v) + ". " + z(v) + Chr(13) + Chr(10)
Text6.Text = Text6.Text + Str(v) + ". " + (kol(v)) + Chr(13) + Chr(10)
v = v + 1
Loop
Close #1
End Sub
Private Sub CmdИзменить_Click()
Text4.Text = ""
Text5.Text = ""
Text6.Text = ""
Open "spic1" For Input As #1
v = 1
Do Until EOF(1)
Input #1, f(v), z(v), kol(v)
v = v + 1
Loop
Close #1
j1 = Val(Text7.Text)
f(j1) = Text8.Text: z(j1) = Text9.Text: kol(j1) = Text10.Text
Open "spic1" For Output As #1
For t = 1 To v - 1
Write #1, f(t), z(t), kol(t)
Next t
Close #1
Open "spic1" For Input As #1
r = 1
Do Until EOF(1)
Input #1, f(r), z(r), kk4: kol(r) = Val(kk4)
Text4.Text = Text4.Text + Str(r) + ". " + f(r) + Chr(13) + Chr(10)
Text5.Text = Text5.Text + Str(r) + ". " + z(r) + Chr(13) + Chr(10)
Text6.Text = Text6.Text + Str(r) + ". " + Str(kol(r)) + Chr(13) + Chr(10)
r = r + 1
Loop
Close #1
End Sub
Private Sub Form_Load()
CmdУдаление1.Enabled = False
CmdДобавить.Enabled = False
Начало.Enabled = False
End Sub
Private Sub Frame1_Click()
CmdУдаление1.Enabled = True
End Sub
Private Sub Text1_Change()
CmdДобавить.Enabled = True
End Sub
Private Sub Автор_Click()
MsgBox "Автор Программы Голубев Ф.К.", , "Об авторе !!"
End Sub
Private Sub Выход_Click()
dd1 = MsgBox("Вы действительно хотите выйти??", vbYesNo, "Выход из Журнала регистрации")
If dd1 = vbYes Then End
End Sub
Private Sub Начало_Click()
i = 1
CmdДобавить.Enabled = True
End Sub
Private Sub Показать_Click()
FrmГрафик1.Show
End Sub
Private Sub ФайлOptim_Click()
FileCopy "optim", "Copyoptim"
End Sub
Private Sub ФайлSpic1_Click()
FileCopy "spic1", "Copyspic1"
End Sub
Private Sub ФайлSpic2_Click()
FileCopy "spic2", "Copyspic2"
End Sub
Dim f9(10000) As String, z9(10000), kol9(10000) As String, c3, k14, i41, ppp As Integer, _
u2 As Integer
Private Sub ВывестиСписки_Click()
Open "optim" For Input As #1
c3 = 1
Do Until EOF(1)
Input #1, f9(c3), z9(c3), kol9(c3)
c3 = c3 + 1
Loop
Close #1
ppp = c3 - 1
k14 = 1
For i41 = 1 To ppp
Text1.Text = Text1.Text + Str(k14) + ". " + f9(i41) + " - " + z9(i41) + _
" - " + Str(kol9(i41)) + Chr(13) + Chr(10)
k14 = k14 + 1
Next
End Sub
Private Sub ЗакрытьОкно_Click()
FrmСписки2.Hide
End Sub
Private Sub ПечататьСписки_Click()
FrmСписки2.PrintForm
End Sub
Dim f9(10000), kol9(10000), z9(10000), kk5 As String, c, i13, p11, КолОкон, НомерОкна As Integer
Private Sub Выход_Click()
FrmГрафик1.Hide
End Sub
Private Sub Печать_Click()
FrmГрафик1.PrintForm
End Sub
Private Sub ПоказатьДиаграмму_Click()
Open "optim" For Input As #1
c = 1
Do Until EOF(1)
Input #1, f9(c), z9(c), kk5: kol9(c) = Val(kk5)
c = c + 1
Loop
Close #1
FrmГрафик1.Picture1(0).Refresh
p11 = c - 1
Max = kol9(1)
For i12 = 2 To p11
If kol9(i12) > Max Then Max = kol9(i12)
Next
mach = Max / 20
КолОкон = Int(p11 / 15) + 1
For НомерОкна = 0 To КолОкон - 1
If НомерОкна = 0 Then GoSub s1 Else GoSub s2
Next НомерОкна
GoTo www
s1: FrmГрафик1.Picture1(НомерОкна).Scale (0, Max + (2 + mach))-(15, 0)
FrmГрафик1.Picture1(НомерОкна).DrawWidth = 1
i13 = 1
For X1% = 0 To 14
X2% = X1% + 1
FrmГрафик1.Picture1(НомерОкна).Line (X1, 0)-(X2, kol9(i13)), RGB(100, 40 * X1, 200 / (X1 + 1)), BF
FrmГрафик1.Picture1(НомерОкна).PSet (X1 + 0.3, kol9(i13) + mach): FrmГрафик1.Picture1(НомерОкна).Print Str(kol9(i13)); "шт."
i13 = i13 + 1
Next
'Сетка
FrmГрафик1.Picture1(НомерОкна).DrawWidth = 1
For x% = 1 To 15
FrmГрафик1.Picture1(НомерОкна).Line (x, 0)-(x, Max), RGB(200, 200, 200)
Text1(x - 1).Text = f9(x)
Next
For y% = 1 To Int(Max) Step 4
FrmГрафик1.Picture1(НомерОкна).Line (0, y)-(15, y), RGB(200, 200, 200)
Next
Return
s2:
FrmГрафик1.Picture1(НомерОкна).Scale (0, Max + (2 + mach))-(15, 0)
FrmГрафик1.Picture1(НомерОкна).DrawWidth = 1
i13 = i13
For X1% = 0 To p11
X2% = X1% + 1
FrmГрафик1.Picture1(НомерОкна).Line (X1, 0)-(X2, kol9(i13)), RGB(100, 40 * X1, 200 / (X1 + 1)), BF
FrmГрафик1.Picture1(НомерОкна).PSet (X1 + 0.3, kol9(i13) + mach): FrmГрафик1.Picture1(НомерОкна).Print Str(kol9(i13)); "шт."
i13 = i13 + 1
Next
'Сетка
FrmГрафик1.Picture1(НомерОкна).DrawWidth = 1
For x% = 1 To p11 - 15
FrmГрафик1.Picture1(НомерОкна).Line (x, 0)-(x, Max), RGB(200, 200, 200)
Text2(x - 1).Text = f9(x + 15)
Next
For y% = 1 To Int(Max) Step 4
FrmГрафик1.Picture1(НомерОкна).Line (0, y)-(15, y), RGB(200, 200, 200)
Next
Return
www: End Sub