Практическая работа
Тема: Внешний интерфейс
(Обработка данных в файле, пакетный режим)
Цель работы:
Получение представления внешнего интерфейса;
Освоение работы с пакетным режимом;
Закрепление навыков работы с файлом.
Обеспечение
Инструментальная система, поддерживающая TurboPascal.
Инструментальная система, поддерживающая C или C++.
Продолжительность выполнения работы:
Продолжительность выполнения работы определяется объемом задачи:
1. Если задание выполняется на базе предыдущей работы (тема «Несвязанные динамические структуры»), то продолжительность работы составляет 2 академических часа.
2. Если выдается новое задание, то продолжительность работы составляет 4 академических часа.
Задание:
Разработать программу с использованием внешнего интерфейса. Работу выполнить на базе практической работы «Несвязанные динамические структуры», в соответствии с индивидуальным заданием.
Требование к заданию
5.1. Входные данные должны вводиться из файла.
5.2. Выходные данные должны выводиться в файл.
5.3. Входной и выходной файлы - текстовые.
5.4. С клавиатуры вводится только имена файлов.
5.4. Обеспечить в программе многовариантную обработку данных, т.е. во входном файле должны находиться не один вариант данных, а любое количество вариантов данных..
5.5. В выходном файле должны находиться все варианты данных в соответствии с входным файлом.
5.6. Выходной файл должен быть оформлен в виде протокола, т.е. в нем должны быть представлены:
- наименование программы;
- дата и время запуска программы;
- входные данные;
- промежуточные данные (в случае необходимости);
- выходные данные в формализованном виде;
- время работы программы (в крайнем случае, время окончании работы программы);
- каждый вариант данных должен быть разделен от другого варианта разделителем.
5.7. Имена файлов задаются из вне: в командной строке.*
5.8. Если в командной строке не указаны имена входного и/или выходного файла, то имена файлов устанавливаются по умолчанию.*
*-
Порядок выполнения работ
Анализ задания;
Разработать тесты;
Разработать алгоритм программы;
Разработать программу на исходном языке программирования;
Отладить программу;
Проверить работу программы по тестам;
Оформить отчет;
Защитить работу.
Содержание отчета:
Тема работы;
Цель работы;
Обеспечение;
Задание этой работы и индивидуальное задание;
Требования к программе;
Тесты;
Блок-схема программы;
Текст программы;
Содержимое входного файла с указанием имени файла.
Содержимое выходного файла с указанием имени файла.
8. Теоретическая часть
8.1. Стандартная поддержка определения даты и времени:
В модуле time.h содержат определение типа time_t:
Typedef long time_t
и структуры tm, которая объявлена следующим образом:
struct tm
{
int tm_sec; //секунды
int tm_min; //минуты
int tm_hour; //часы (0-23)
int tm_mday; //дата (1-31)
int tm_mon; //месяц (0-11)
int tm_year; //год (тек.год -1900)
int tm_wday; // день недели (0-6; воскр =0)
int tm_yday; // день в году ()
int tm_isdst; //
};
Функции работы с датой и временем:
-
Asctime
Преобразует время и дату из формата структуры типа tm в символьную строку
Ctime
Преобразует время и дату из формата time_t в символьную строку
difftime
Вычисляет интервал между двумя заданными временными параметрами
localtime
Преобразует дату и время из формата time_t в формат структуры tm
Mktime
Преобразует дату и время в календарный формат
Примеры:
А)
struct tm *ptr;
time_t lt;
lt=time(NULL);
ptr=localtime(<);
printf(asctime(ptr));
Б)
#include <io.h>
int main(void)
{
time_t tt;
tm *pMyTime;
tt = time(Null);
pMyTime = localtime(&tt);
cout << “Текущее время: ”;
cout << asctime(pMyTime);
pMyTime;
return;
}