- •Министерство образования и науки российской федерации
- •Содержание
- •Введение
- •Лабораторная работа № 1. Среда разработки приложений Microsoft Visual Studio .Net 2010
- •Основные сведения
- •Создание консольного приложения
- •Содержание файла «TestProject.Cpp»
- •Содержание файла «stdafx.Cpp»
- •Содержание файла «stdafx.H»
- •Задание на работу
- •Текст II
- •Текст III
- •Содержание отчета
- •Лабораторная работа № 2. Представление данных в эвм
- •Задание на работу
- •Входные данные
- •Пример выполнения задания
- •Классы выделяемых литер
- •Классы выделяемых лексем
- •Диаграмма (граф) переходов
- •Входной файл
- •Выходной файл
- •Содержание отчета
- •Лабораторная работа № 4. Работа со стеком
- •Задание на работу
- •Пример содержимого заголовочного файла lab_stack.H
- •Алгоритмы для реализации атд «Стек» на языке Си
- •Реализация при помощи массива
- •Реализация при помощи связанных структур
- •Содержание отчета
- •Контрольные вопросы для допуска к лабораторной работе
- •Лабораторная работа № 5. Работа с очередью
- •Задание на работу
- •Пример содержимого заголовочного файла lab_queue.H
- •Алгоритмы для реализации атд «Очередь» на языке Си
- •Реализация при помощи массива
- •Реализация при помощи связанных структур
- •Содержание отчета
- •Контрольные вопросы для допуска к лабораторной работе
- •Лабораторная работа № 6. Хеширование
- •Задание на работу
- •Пример индивидуального задания на работу
- •Входные данные
- •Выходные данные
- •Содержание отчета
- •Пример входных данных
- •Краткая теоретическая справка
- •Задача о программисте Пете
- •Входные данные
- •Выходные данные
- •Математическая модель
- •Решение задачи о программисте Пете полным перебором
- •Текст программы
- •Генератор тестовых наборов
- •Текст программы
- •Литература
Входной файл
....
A,D RT ____ e123 &^-.9 _^&*( ()
;
-56
5.6E2; ; +55 6.1E-10
E _123 jkL cv+b; -5.0 5.E+3 .35E-10
Выходной файл
. - Ошибка
. - Ошибка
. - Ошибка
. - Ошибка
Перевод строки - ошибка
Перевод строки - ошибка
Перевод строки - ошибка
A - Ошибка
, - Ошибка
D - Ошибка
- Ошибка
R - Ошибка
T - Ошибка
- Ошибка
_ - Ошибка
_ - Ошибка
_ - Ошибка
_ - Ошибка
- Ошибка
e - Ошибка
123 - Целое десятичное со знаком
- Ошибка
& - Ошибка
^ - Ошибка
-.9 - Вещественное десятичное со знаком
- Ошибка
_ - Ошибка
^ - Ошибка
& - Ошибка
* - Ошибка
( - Скобка
- Ошибка
( - Скобка
) - Скобка
Перевод строки - ошибка
- Ошибка
- Ошибка
- Ошибка
; - Ошибка
Перевод строки - ошибка
-56 - Целое десятичное со знаком
- Ошибка
Перевод строки - ошибка
5.6 - Вещественное десятичное со знаком
E - Ошибка
2 - Целое десятичное со знаком
; - Ошибка
- Ошибка
; - Ошибка
- Ошибка
+55 - Целое десятичное со знаком
- Ошибка
6.1 - Вещественное десятичное со знаком
E - Ошибка
-10 - Целое десятичное со знаком
- Ошибка
- Ошибка
- Ошибка
- Ошибка
- Ошибка
- Ошибка
- Ошибка
- Ошибка
Перевод строки - ошибка
Перевод строки - ошибка
E - Ошибка
- Ошибка
_ - Ошибка
123 - Целое десятичное со знаком
- Ошибка
j - Ошибка
k - Ошибка
L - Ошибка
- Ошибка
c - Ошибка
v - Ошибка
+ - Ошибка
b - Ошибка
; - Ошибка
- Ошибка
- Ошибка
-5.0 - Вещественное десятичное со знаком
- Ошибка
5. - Вещественное десятичное со знаком
E - Ошибка
+3 - Целое десятичное со знаком
- Ошибка
.35 - Вещественное десятичное со знаком
E - Ошибка
-10 - Целое десятичное со знаком
Содержание отчета
Исходное задание.
Цель работы.
Алгоритм выполнения задания и оценка его временной эффективности.
Диаграмма (граф) и таблица переходов, описывающая работу программы.
Лабораторная работа № 4. Работа со стеком
Целью работы является изучение основных операций при работе со стеком и приобретение навыков программной реализации стека.
Задание на работу
Изучить способы реализации стека при использовании массивов и связанных структур.
Написать два варианта программы, решающей задачу, полученную у преподавателя, на языке программирования C/C++. В программе инициализируется стек и затем выполняется заданная последовательность операций со стеком с данными, структура которых задается преподавателем. Первый вариант использует для организации стека динамический список, второй использует для организации стека шаблон std::stack<> из стандартной библиотеки C++.
Входные данные должны поступать из файла с именем «input.txt», результат записываться в файл с именем «output.txt».
Программа должна состоять из следующих частей:
Заголовочный файл с объявлениями функций работы со стеком (lab_stack.h)
Файл с реализацией функций работы со стеком (lab_stack.cpp)
Файл с алгоритмом решения предложенной задачи (main.cpp)
Файл с алгоритмом решения должен работать со стеком только через функции, описанные в заголовочном файле. Программа должна быть спроектирована таким образом, чтобы способ реализации стека можно было бы изменить, заменив только файл lab_stack.cpp.
Пример содержимого заголовочного файла lab_stack.H
// В данном случае в стеке хранятся данные типа int,
// поэтому функции работы со стеком принимают и возвращают
// данные этого типа
struct Stack;
// создание пустого стека
Stack *create();
// удаление стека
void clear(Stack *stack);
// включение элемента в стек
void push(Stack *stack, int Data);
// получение последнего элемента стека
int get(Stack *stack);
// выталкивание элемента из стека
void pop(Stack *stack);
// проверка стека на наличие элементов
bool empty(Stack *stack);