Beginners Guide to TikTok for Search - Rachel Pearson - We are Tilt __ Bright...
Контрольная работа на заказ на www.studentam-in.ru
1. ДЕМОНСТРАЦИОННАЯ ВЕРСИЯ ДОКУМЕНТА НА WWW.STUDENTAM-IN.RU
Контрольная работа по дисциплине «Операционные системы и
среды»
Постановка задачи:
Пользовательский процесс формирует строку из 70 символов для вывода их на принтер, затрачивая на это
5 мс. Объем буфера равен одной строке. Страница текста содержит 50 строк. Принтер способен печатать 10
страниц в минуту. Будет ли приостанавливаться пользовательский процесс? Если да, то на сколько? Улучшит ли
ситуацию двойная буферизация?
Решение:
После вывода строки на принтер (на это уйдет 5 мс) начинается печать строки. Если принтер затратит на
печать более 5 мс, то пользовательский процесс приостановится, ожидая завершения печати. Определим время
печати строки. Поскольку принтер печатает 10 стр/мин, это составит N стр = 500 строк.
Время Т п печати одной строки в этом случае равно:
Тп=Т/N
стр
= (60 * 1000) / 500 = 120 мс / строку (Т равно 1 мин).
Т.о., после заполнения буфера процесс будет приостановлен на 120 мс (см. рисунок). Введение второго
буфера несколько улучшит ситуацию. В этом случае принтер может работать непрерывно, не ожидая заполнения
буфера, т.к. во время печати процесс заполнит второй буфер (см. рисунок). Пользовательский процесс будет приостанавливаться на 115 мс.
Заполнение буфера
Т
Печать строки
Печать строки
Т
0
5
120
Заполнение буфера
Т
115
Печать строки
Печать строки
Т
0
5
120
1
2. Контрольная работа
вычислительных систем»
по
дисциплине
«Архитектура
ЭВМ
и
Постановка задачи:
Представить число 250,187510 в формате с плавающей точкой в 4-байтовом формате.
Решение:
1. Переведем число в двоичную СС с 23 значащими цифрами:
250,187510 = 1111 1010, 0011 0000 0000 0002;
25010 = 1111 10102;
0,187510 = 0,0011 0000 0000 0002.
0,
1875
2
0
375
2
0
75
2
1
Примечание:
Для перевода правильной десятичной дроби F в СС с основанием q
необходимо F умножить на q, записанное в той же десятичной СС, затем
дробную часть полученного произведения снова умножить на q и т.д. до тех
пор, пока дробная часть очередного произведения не станет равной нулю,
либо не будет достигнута требуемая точность представления числа F в qичной СС.
5
2
1
0
2
0
0
2
0
0
2
0
0
2
…
102 = 210
…
10002 = 810
2. Нормализуем мантиссу: 1111 1010, 0011 0000 0000 0002 = 0,1111 1010 0011 0000 0000 000 * 10 1000;
мантисса
порядок
(положительная)
2
(положительный)
4. Контрольная работа по дисциплине «Программирование»
Постановка задачи:
По текстовому представлению алгоритма сортировки составить программу на языке Паскаль.
1. В массиве, начиная с первого, выбирается наибольший элемент и ставится на первое место, а первый
элемент ставится на место наибольшего. Затем начиная со второго элемента, эта процедура повторяется.
2. В массиве сравниваются два соседних числа ai и ai+1. Если ai > ai+1, то делается перестановка. Так
продолжается до тех пор, пока все элементы не будут расположены в порядке возрастания.
3. В массиве берется 2-й элемент. Элементы массива, расположенные слева, сдвигаем вправо – до тех пор,
пока не будет найдено место, куда нужно вставить 2-й элемент. Затем берется 3-й элемент, и
выполняются аналогичные действия. Процесс продолжается до тех пор, пока все элементы от i+1 до n не
будут перебраны.
Решение:
Программа сортировки 1:
var
n, i, j, max, maxn, tmp : integer;
a : array[1..10] of integer;
begin
writeln('Number of elements: ');
readln(n);
for i := 1 to n do
begin
writeln(i, ' element: ');
readln(a[i]);
end;
for i := 1 to n do
begin
max := a[i];
maxn := i;
for j := i+1 to n do
begin
if a[j] > max then
begin
max := a[j];
maxn := j;
end;
end;
tmp
:= a[i];
a[i] := max;
a[maxn] := tmp;
end;
writeln('');
for i := 1 to n do
writeln(a[i]);
end.
Программа сортировки 2:
var
n, i, j, tmp : integer; {число элементов, предыдущий элемент, последующий элемент, временный
элемент}
4
5. a : array[1..10] of integer;
begin
writeln('Number of elements: ');
readln(n);
for i := 1 to n do
begin
writeln(i, ' element: ');
readln(a[i]);
end;
for i := 1 to n-1 do
for j := i+1 to n do
if a[i] > a[j] then
begin
tmp := a[i];
a[i] := a[j];
a[j] := tmp;
end;
writeln('');
for i := 1 to n do
writeln(a[i]);
end.
Программа сортировки 3:
var
n, i, j, tmp : integer;
a: array[1..10] of integer;
begin
writeln('Number of elements: ');
readln(n);
for i := 1 to n do
begin
writeln(i, ' element: ');
readln(a[i]);
end;
for i := 2 to n do
begin
tmp := a[i];
j := i-1;
while (j >= 1) and (a[j]>tmp) do
begin
a[j+1] := a[j];
j := j-1;
end;
a[j+1] := tmp;
end;
writeln('');
for i := 1 to n do
writeln(a[i]);
end.
5