Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
9.1 - МР по изучению дисциплины.doc
Скачиваний:
4
Добавлен:
01.07.2025
Размер:
2.34 Mб
Скачать

Лабораторная работа №3 тема: программная реализация задач с использованием типа даты и времени

Цель работы: Изучение методов программирования задач с использованием типа даты и времени.

План работы: Разработать алгоритм программы с использованием функций обработки даты и времени.

Теоретический материал:

Данные типа дата/время представлены в среде Visual Basic 8-байтовыми вещественными значениями (так называемый формат IEEE 64-bit). Диапазон допустимых дат — от 1 января 100 г. до 31 декабря 9999. Целая часть вещественного значения соответствует количеству дней, предшествовавших нулевой отметке или прошедших после точки начала отсчета. За нулевую отметку выбрана полночь 30 декабря 1899 года. Даты, предшествующие нулевой отметке отрицательны. Нулевое значение дробной части соответствует началу суток после полуночи, в полдень дробная часть даты достигает величины 0.5, к концу суток дробная часть приближается к 1, что соответствует показанию часов 23:59:59.

Переменные, в которых предполагается размещать значения дат и/или времени могут быть двух типов — специализированные типа Date и универсальные типа Variant. В примере, приведенном на рис. 9.1, d1 — специализированная переменная, а d2 — универсальная. Разница между ними в занимаемой оперативной памяти и в скорости выполнения операций. Естественно, что формат универсальных данных требует больше места в памяти, и обработка таких значений сопряжена с дополнительными накладными расходами.

Пример. Разработать программу по составлению расписания экзаменационной сессии, если пользователь вводит дату начала сессии. За один день до экзамена проводится консультация, которую также следует запланировать в расписании. Если экзамен выпадает на воскресенье, то его переносят на понедельник. Если консультация выпадает на воскресенье, то ее переносят на субботу. Расписание вывести в виде таблицы.

Задания к работе:

  1. Даны натуральные числа a, b, c, которые обозначают число, меся ц и год соответственно.

а) Проверить корректность этой даты (например, 30 февраля 1900 года – некорректная дата).

б) Найти номер дня этого дня с начала года.

в) Определить, сколько полных дней осталось до конца года.

  1. Вычислить количество пятниц, приходящихся на 13-е числа

а) ХХ столетия;

б) столетия с номером n, где n – данное натуральное число.

  1. В некоторой библиотеке последний четверг каждого месяца – санитарный день. Дано натуральное число n, означающее номер года. Получить по порядку все числа, на которые в январе, феврале, …, декабре указанного года приходится санитарный день.

  2. Даны натуральные числа a, b, c, обозначающие дату (число, месяц, год) по юлианскому календарю. Получить эту дату по современному календарю. Расхождение между датами определяется тем, что в юлианском календаре каждый год, номер которого делится на 4, является високосным, и из этого правила нет никаких исключений.

Лабораторная работа №4 тема: программирование задач с использованием массива записи

Цель работы: Изучение методов работы с массивом записи.

План работы: Разработать алгоритм обработки массива записи.

Теоретический материал:

По своей сути структура - это как бы одномерный массив, который мы запихиваем в одну переменную. Но в него могут входить данные разных типов.

С одной строны мы можем просто объявить эти три переменные с необходимым нам типом и использовать их каждую в отдельность по необходимости:

Dim Name As String

Dim Kolichestvo As Long

Dim Cost As Single

Но мы также можем объединить эти три переменные в единую структуру, создав тип данных, например, под названием Price. Однако, поскольку, инструкция Type предназначена для использования во всем проекте, то и пользовательский тип данных должен создаваться в стандартном модуле:

Type Price

Name As String

Kolichestvo As Long

Cost As Single

End Type

Пример. Создать программное приложение с использованием массива записей, который будет содержать следующие сведения о студентах: фамилия, имя, отчество, дата рождения, курс обучения, специальность, место проживания родителей. В программе должны выполняться операции по добавлению, удалению, обновлению сведений о студенте, поиску по специальности, курсу обучения и месту проживания родителей.

Сначала создадим форму для работы с записями массива.

И разработаем алгоритм для обработки событий на кнопки.

Для этого сначала добавим в проект модуль для объявления массива записей о студентах и других глобальных переменных: Add - > Module - >New - > Открыть.

Далее в листе программного кода Form1 осуществим обработку событий на кнопки. При этом при добавлении новой записи нужно осуществить проверку на корректность вводимых значений.

Задание.