Для студентов МГТУ им. Н.Э.Баумана по предмету Операционные системыКлавиатурный тренажерКлавиатурный тренажер
2022-12-072022-12-07СтудИзба
Лабораторная работа 3: Клавиатурный тренажер вариант 12
Описание
// Требуется разработать программу, которая реализует терминальный интерфейс тренажера клавиатуры для консольного ввода текстовых строк по образцу. Желаемая длина образцовой строки должна передаваться программе через аргумент командной строки ее вызова. Образец строки заданной длины должен формироваться в программе по случайной последовательности, состоящей из отображаемых символов кодовой таблице ASCII, которую завершает символ перевода строки. Полученный таким способом образец строки должен быть отображен в потоке стандартного вывода. После этого в программе должен быть установлен неканонический режим терминального ввода без эхо-печати входных символов, где также должны игнорироваться клавиатурные сигналы прерывания и завершения. Этот режим должен обеспечивать контролируемый ввод символьной строки, совпадающей с образцом, где исключены любые ошибки ввода. Это означает, что каждый очередной входной символ должен приниматься программой и отображаться в потоке стандартного ввода только при его совпадении с образцом. При этом любые ошибки ввода должны блокировать стандартный вывод очередных входных сиволов, пока нет совпадения с текущим символом образца. Стандартный ввод должен продолжаться до получения входной строки, совпадающей с образцом. После завершения ввода по образцу в потоке стандартной диагностики должно отображаться информационное сообщение, которое идентифицирует продолжительность ввода и число ошибок. Кроме того в программе необходимо предусмотреть возможность ее принудительного завершения при нажатии клавиши Escape в любой момент времени до ввода всех символов образца. В любом случае, перед завершением программы должен быть восстановлен исходный режим терминального ввода. При разработке программы необходимо использовать системные вызовы read, write, time, sbrk и exit, а также системные функции терминального интерфейса temios OS UNIX и стандартные библиотечные функции системы программирования C для генерации случайных последовательностей.
// Вариант 12
// Разработать программу тренажера клавиатуры с использованием терминального интерфейса, в которой должен вводиться правильный результат арифметической операции вычисления целочисленного остатка от деления двух случайных операндов. Следует предусмотреть блокировку ввода ошибочных цифр и других символов.
// Вариант 12
// Разработать программу тренажера клавиатуры с использованием терминального интерфейса, в которой должен вводиться правильный результат арифметической операции вычисления целочисленного остатка от деления двух случайных операндов. Следует предусмотреть блокировку ввода ошибочных цифр и других символов.
Файлы условия, демо
Характеристики лабораторной работы
Предмет
Учебное заведение
Семестр
Номер задания
Вариант
Просмотров
26
Качество
Идеальное компьютерное
Размер
15,32 Kb