Вариант 15. Необходимо написать программу, реализующую параллельную работу нескольких процессов

  • ID: 51433 
  • 17 страниц

Содержание:


Задание

Необходимо написать программу, реализующую параллельную работу нескольких процессов. Каждый процесс может состоять из одного или нескольких потоков. Любой из потоков, работающих в составе этих процессов, может быть приостановлен и вновь запущен некоторой определенной клавишей (можно использовать буквенные или цифровые клавиши). Нажатия клавиш обрабатывать с помощью прерывания от клавиатуры (по материалам лаб. работы №1).

15 вариант

Задачи:

2. Музыкальное сопровождение – как минимум несколько нот различной длительности, образующие мелодию. Во включённом состоянии мелодия должна играть в фоновом режиме (по материалам лаб. работы №2).

3. Два потока: один выполняет поиск всех последовательных простых чисел и заносит их в буфер, второй осуществляет их вывод из буфера на экран (по материалам лаб. работы №4).

5. Вывод заголовка работы (фамилия и имя автора и название работы) в виде «бегущей строки» (по материалам лаб. работы №5). Место вывода (верхняя или нижняя строка экрана) задавать параметром командной строки.

8. В углу экрана с заданными в качестве параметров координатами поместить часы, показания которых должны соответствовать системному времени. Обновлять показания часов каждую секунду (по материалам лаб. работы №3). Описание алгоритмов

Алгоритм поиска простых чисел (procedure search)

Если буфер не полный

Дано: текущее число a

Если a>1 То a=1

Описание переменных

X1=1; Y1=6; - координаты верхнего левого угла окошка информации.

X2=41; Y2=6; - координаты верхнего левого угла окошка вывода простых чисел.

Описание блоков программы

Procedure SetCurSize(BegLine, EndLine: Byte);- процедура скрытия курсора

Листинг программы

{$M $1200,0,0}

Uses Crt,Dos;

printnumber;

until Count2=0;

NoSound;

nostop_32:=false;

Window(X1,Y1,X1+Width,Y1+Height);

gotoxy(29,5); Write('останов.');

SetCurSize($06,$07);

exit;

End.

Результаты

..