Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
Скачиваний:
48
Добавлен:
07.06.2015
Размер:
279.55 Кб
Скачать

Тема: Файлы данных с последовательным доступом (текстовые файлы). База данных в VB6

Задание: Разработать приложение-«Отдел кадров»

Эскиз интерфейса

Меню

Программный код

Dim Фамилия As String, Имя As String, Год As Integer, Длина As Integer, Оклад As Single

Private Sub Command1_Click()

r = 0

Open "d:\тест1.txt" For Input As #1

Do Until EOF(1)

Input #1, Фамилия, Пол, Должность, Оклад

If Пол = "ж" And Должность = "строитель" Then r = r + 1: _

Text1.Text = Text1.Text + Фамилия + ", "

Loop

Command1.Caption = "Кол-во жен-н раб-их стр-ми - " + Str(r)

Close #1

End Sub

Private Sub Command2_Click()

r = 0

Open "d:\тест1.txt" For Input As #1

Do Until EOF(1)

Input #1, Фамилия, Пол, Должность, Оклад

If Пол = "м" And Должность = "бухгалтер" Then _

Text2.Text = Text2.Text + Фамилия + " - " + Str(Оклад) + ", "

Loop

Close #1

End Sub

Private Sub Command3_Click()

r5 = 0: r6 = 0

Open "d:\тест1.txt" For Input As #1

Do Until EOF(1)

Input #1, Фамилия, Пол, Должность, Оклад

If Пол = "м" And Должность = "бухгалтер" Then r5 = r5 + 1

If Пол = "ж" And Должность = "бухгалтер" Then r6 = r6 + 1

Loop

If r5 > r6 Then

Text3.Text = "Мужчин бухгалтеров больше чем женщин, а, именно: мужчин - " _

+ Str(r5) + "чел." + "а женщин -" + Str(r6) + "чел."

Else

Text3.Text = "Женщин бухгалтеров больше чем мужчин, а именно: мужчин - " _

+ Str(r5) + "чел." + ", а женщин -" + Str(r6) + "чел."

End If

Close #1

End Sub

Private Sub Command4_Click()

Open "d:\тест1.txt" For Input As #1

k = 0

Do Until EOF(1)

Input #1, Фамилия, Пол, Должность, Оклад

If Оклад > 5500 Then k = k + 1

Loop

Text4.Text = "Количество человек, чей оклад превышает 5500 руб. равено " + Str(k) + "м"

Close #1

End Sub

Private Sub Command5_Click()

s1 = 0: s2 = 0: k1 = 0: k2 = 0

Open "d:\тест1.txt" For Input As #1

Do Until EOF(1)

Input #1, Фамилия, Пол, Должность, Оклад

If Пол = "м" Then s1 = s1 + Оклад: k1 = k1 + 1 Else s2 = s2 + Оклад: k2 = k2 + 1

Loop

If k1 = 0 Then MsgBox "Мужчин на предприятии нет ": srG = s2 / k2: GoTo m

If k2 = 0 Then MsgBox "Женщин на предприятии нет ": srM = s1 / k1: GoTo m

srM = s1 / k1

srG = s2 / k2

m: Text5.Text = "Средний оклад мужчин равен " + Str(srM) + "руб." + _

", а средний оклад женщин равен" + Str(srG) + "руб."

Close #1

End Sub

Private Sub Form_Load()

Command1.Enabled = False

Command2.Enabled = False

Command3.Enabled = False

Command4.Enabled = False

Command5.Enabled = False

End Sub

Private Sub Выход_Click()

End

End Sub

Private Sub Записать_Click()

Open "d:\тест1.txt" For Output As #1

Длина = Val(InputBox("Ввод данных", , "введите длину списков"))

For i = 1 To Длина

Фамилия = InputBox("Ввод данных", , "введите фамилию")

Пол = InputBox("Ввод данных", , "введите Пол")

Должность = InputBox("Ввод данных", , "введите должность")

Оклад = Val(InputBox("Ввод данных", , "введите Оклад"))

Write #1, Фамилия, Пол, Должность, Оклад

Next i

Close #1

End Sub

Private Sub Считать_Click()

Command1.Enabled = True

Command2.Enabled = True

Command3.Enabled = True

Command4.Enabled = True

Command5.Enabled = True

Open "d:\тест1.txt" For Input As #1

Do Until EOF(1)

Input #1, Фамилия, Пол, Должность, Оклад

List1.AddItem Фамилия

List2.AddItem Пол

List3.AddItem Должность

List4.AddItem Оклад

Loop

Close #1

End Sub

Private Sub Удалить_Click()

List1.RemoveItem Фамилия$

List2.RemoveItem Пол$

List3.AddItem Должность

List4.AddItem Оклад

End Sub

Работа приложения

Записать на диск данные

Результат работы

Соседние файлы в папке Задания и примеры