Студопедия — Практическое занятие №8. Файлы с произвольным доступом
Студопедия Главная Случайная страница Обратная связь

Разделы: Автомобили Астрономия Биология География Дом и сад Другие языки Другое Информатика История Культура Литература Логика Математика Медицина Металлургия Механика Образование Охрана труда Педагогика Политика Право Психология Религия Риторика Социология Спорт Строительство Технология Туризм Физика Философия Финансы Химия Черчение Экология Экономика Электроника

Практическое занятие №8. Файлы с произвольным доступом






Задача.

 

Ваша группа хранит данные о результатах экзамена в файле с произвольным (прямым) доступом.
  • Создайте произвольный файл по учёту результатов экзаменов. Храните в этом файле фамилию, год рождения, группу и оценку за экзамен. Для образца составьте файл на двадцать человек.
  • Выведите на форму фамилии тех студентов, оценка за экзамен которых «4» и «5»

 

Файлы произвольногодоступа – это провозвестники файлов баз данных. В этих типах файлов применяется особая структура данных – пользовательский тип данных. Он содержит компоненты разного типа данных.

Структуру данных (пользовательский тип данных) называют записью, а компоненты этой структуры – полямизаписи.

Базаданных – это множество единообразных записей.

 

Для открытия файла используется оператор

Open ИмяФайла For Random As #ДискрипторФайла Len =ДлинаЗаписи

 

Запись в файл

Put # ДискрипторФайла, НомерЗаписи, ИмяПеременной

 

Чтение из файла

Get # ДискрипторФайла, НомерЗаписи, ИмяПеременной

 

è Откройте приложение MS Excel.

è Выполните команду Сервисà Макросà Редактор Visual Basic или нажмите < Alt+F11 >.

è Добавьте форму (команда Insertà UserForm)

è Для изменения размеров формы используйте указатель мыши помещённый в правый нижний угол окна Формы(UserForm)

è Разработайте пользовательский интерфейс, расположив на форме с помощью панели инструментов управления ( Viewà ToolBox ), следующие объекты управления: Label (Метка), TextBox (Текстовое поле), CommandButton (Командная кнопка), ListBox (Список).

è В окне Properties (Свойства) для каждого объекта управления установить свойства, приведённые в таблице 7.

Таблица 7

Элемент управления Свойства Значения
UserForm Caption Произвольный доступ
Label1 Caption В группе
Label2 Name lblKolichestvoZapisei
Label3 Caption Фамилия И О
ListBox1 Name lstFIO
Label4 Caption Группа
ListBox1 Name lstGroup
Label5 Caption Оценка
ListBox1 Name lstOtsenka
CommandButton1 Name cmdVvodSpiskaStudentov
Caption Ввод
CommandButton2 Name cmdChtenieIzFaila
Caption Чтение из файла

 

è Примерный интерфейс программы может выглядеть так:

База данных содержит всего одну таблицу — сведения о студентах. Каждая строка этой таблицы представляется собой упорядоченный набор следующих значений:

· Фамилия И.О. — строка (тип String) до 20 символов;

· ДатаРождения — данное типа String до 4;

· Группа — строка длиной до 5 символов;

· Оценка — 1 символ.

Каждая запись будет состоять из 30 символов.

Создадим свой тип данных

è Код программы

 

Private Type Dannye

FIO As String * 20

GodRozhdenija As String * 4

Group As String * 5

Otsenka As Byte

End Type

 

Dim Student As Dannye

Dim DlinaZapisi As Integer

Dim KolichestvoZapisei As Integer

 

Private Sub Form_Load()

DlinaZapisi = Len(Student)

Open " Database.dbf" For Random As #1 Len = Len(Student)

KolichestvoZapisei = LOF(1) \ DlinaZapisi

lblKolichestvoZapisei = Str(KolichestvoZapisei) + " Ä записей"

Close #1

End Sub

 

Private Sub cmdVvodSpiskaStudentov_Click()

Dim i As Integer

Dim Kolichestvo As Integer

DlinaZapisi = Len(Student)

 

Open " Database.dbf" For Random As #1 Len = Len(Student)

KolichestvoZapisei = LOF(1) \ DlinaZapisi

 

Kolichestvo = InputBox(" Введите количество записей", Ä " Ввод числа", 0)

If Kolichestvo = 0 Then Exit Sub

For i% = 1 To Kolichestvo

Student.FIO = InputBox(" Введите фамилию студента", Ä " Ввод данных о студенте")

Student.GodRozhdenija = InputBox(" Введите год Ä рождения студента", " Ввод данных о студенте")

Student.Group = InputBox(" Введите группу студента", Ä " Ввод данных о студенте")

Student.Otsenka = InputBox(" Введите оценку Ä студента", " Ввод данных о студенте")

Put #1, i + KolichestvoZapisei, Student

Next

Close #1

End Sub

 

Private Sub cmdChtenieIzFaila_Click()

Dim i As Integer

lstFIO.Clear

lstGroup.Clear

lstOtsenka.Clear

 

DlinaZapisi = Len(Student)

Open " Database.dbf" For Random As #1 Len = Ä DlinaZapisi

KolichestvoZapisei = LOF(1) \ DlinaZapisi

i = 1

Do While i < = KolichestvoZapisei

Get #1, i, Student

lstFIO.AddItem Student.FIO

lstGroup.AddItem Student.Group

lstOtsenka.AddItem Student.Otsenka

i = i + 1

Loop

Close #1

End Sub

è Перед запуском программы сохраните файл под именем «Прямой доступ»

è Составьте список из 20 фамилий студентов вашей группы.

è Измените код программы так, чтобы на форму выводились фамилии студентов, сдавших экзамен на «4» и «5»

 







Дата добавления: 2014-11-10; просмотров: 670. Нарушение авторских прав; Мы поможем в написании вашей работы!



Шрифт зодчего Шрифт зодчего состоит из прописных (заглавных), строчных букв и цифр...

Картограммы и картодиаграммы Картограммы и картодиаграммы применяются для изображения географической характеристики изучаемых явлений...

Практические расчеты на срез и смятие При изучении темы обратите внимание на основные расчетные предпосылки и условности расчета...

Функция спроса населения на данный товар Функция спроса населения на данный товар: Qd=7-Р. Функция предложения: Qs= -5+2Р,где...

Броматометрия и бромометрия Броматометрический метод основан на окислении вос­становителей броматом калия в кислой среде...

Метод Фольгарда (роданометрия или тиоцианатометрия) Метод Фольгарда основан на применении в качестве осадителя титрованного раствора, содержащего роданид-ионы SCN...

Потенциометрия. Потенциометрическое определение рН растворов Потенциометрия - это электрохимический метод иссле­дования и анализа веществ, основанный на зависимости равновесного электродного потенциала Е от активности (концентрации) определяемого вещества в исследуемом рас­творе...

Анализ микросреды предприятия Анализ микросреды направлен на анализ состояния тех со­ставляющих внешней среды, с которыми предприятие нахо­дится в непосредственном взаимодействии...

Типы конфликтных личностей (Дж. Скотт) Дж. Г. Скотт опирается на типологию Р. М. Брансом, но дополняет её. Они убеждены в своей абсолютной правоте и хотят, чтобы...

Гносеологический оптимизм, скептицизм, агностицизм.разновидности агностицизма Позицию Агностицизм защищает и критический реализм. Один из главных представителей этого направления...

Studopedia.info - Студопедия - 2014-2024 год . (0.011 сек.) русская версия | украинская версия