02 семестр / Курсовики Visual Basic / Курсовик. Программирование на Visual Basic. Вариант №7 / Пояснительная
.docКурсовой проект по MS Visual Basic 6.0
Содержание
Содержание 2
2
1.Постановка задачи 3
р 11 – Группа 4
Лактионова – фамилия курсанта(ки) 4
5 – оценка за экзамен (всего пять экзаменов) 4
з – зачет (з – зачет, н – незачет, всего пять зачетов) 4
Создание формы 4
-
Постановка задачи
Создать файл, содержащий сведения о сдаче студентами сессии. Каждая запись имеет поля: индекс группы, фамилия студента, оценки по пяти экзаменам и пяти зачетам (з – зачет, н – незачет).
Написать программу выдающую след. информацию:
- фамилии неуспевающих студентов с указанием индексов групп и кол-ва задолжностей;
- средний балл, полученный каждым студентом группы Х, и всей группой в целом.
Создание текстового файла
Для выполнения поставленной задачи в текущем каталоге был создан файл data.txt, в котором находились необходимые сведения для решения задачи.
Данный файл используется как файл последовательного доступа, в котором данные в цикле считываются в соответствующие переменные, в нашем случае в массив данных, с которым впоследствии мы и работаем. Как видно из рисунка, согласно заданию, формат ввода данных таков:
р 11,Лактионова,5,5,5,5,5,з,з,з,з,з Эти данные могут быть любыми, их вводит пользователь, но обязательно должны быть обязательно такого формата.
р 11 – Группа
Лактионова – фамилия курсанта(ки)
5 – оценка за экзамен (всего пять экзаменов)
з – зачет (з – зачет, н – незачет, всего пять зачетов)
Создание формы
Объект форма создается с помощью Visual Basic. В нашей программе она одна: “Form1”. На данной форме находятся командные кнопки, элементы управления Label, а также комбинированное поле ComboBox, с помощью которых мы выполняем поставленную перед нами задачу. На рисунке можно увидеть эту форму.
Форма:
-
Блок-схема алгоритма решения
Блок-схема Form_Load()
Блок-схема Combo1_Click()
-
Текст программы на языке Visual Basic
Dim Stud(7, 100) As String
Dim Ball(5, 100), i As Integer
Private Sub Combo1_Click()
List4.Clear
List5.Clear
Dim N As Integer
Dim SrBall, AllCadets As Single
For N = 0 To i
If Stud(0, N) = Combo1.Text Then
List4.AddItem Stud(1, N)
List5.AddItem (Ball(0, N) + Ball(1, N) + Ball(2, N) + Ball(3, N) + Ball(4, N)) / 5
SrBall = (Ball(0, N) + Ball(1, N) + Ball(2, N) + Ball(3, N) + Ball(4, N)) / 5
AllCadets = (AllCadets + SrBall) / 2
Label7 = AllCadets
End If
Next N
End Sub
Private Sub Command1_Click()
End
End Sub
Private Sub Form_Load()
Dim Zach As Integer
i = -1
'Загрузка значений в массивы
Open App.Path + "\data.txt" For Input As #1
Do Until EOF(1)
i = i + 1
Input #1, Stud(0, i), Stud(1, i), Ball(0, i), Ball(1, i), Ball(2, i), Ball(3, i), Ball(4, i), Stud(2, i), Stud(3, i), Stud(4, i), Stud(5, i), Stud(6, i)
For Zach = 2 To 6
If Stud(Zach, i) = "н" Then
Ball(5, i) = Ball(5, i) + 1
End If
Next Zach
If Ball(5, i) > 0 Then
List1.AddItem Stud(1, i)
List2.AddItem Stud(0, i)
List3.AddItem Ball(5, i)
End If
Loop
Close #1
End Sub
-
Анализ полученного результата
При запуске программы в массивы загружаются данные из файла. Затем из массивов в List1, List2 и List3 загружается фамилия, группа и кол-во задолжностей каждого курсанта (имеющего задолжность) соответственно. При выборе в Combo1 группы в List4, List5 будут загружены все фамилии и средний балл каждого студента, в Label7 выводится средний балл всей группы.
Вывод по проделанной работе
При выполнении курсового проекта я научилась составлять элементарные (простые) программы в среде объектного программирования MS Visual Basic.