ВПР СПО по Информатике 2 курс задания и ответы, Комплект 3 Вариант 2
Задание 1. +++++
1
В системе счисления с основанием n запись десятичного числа 23 трёхзначна и оканчивается
на 3. Укажите наименьшее n.
Задание 2. +++++
2
Миша заполнял таблицу истинности функции ¬(¬x \/ y)) \/ (x ≡ z) \/ ¬w, но успел заполнить
лишь фрагмент из трёх различных её строк, даже не указав, какому столбцу таблицы
соответствует каждая из переменных w, x, y, z.
0
0
1
1
0
1
0
1
¬(¬x \/ y) \/ (x ≡ z) \/ ¬w
0
0
0
Определите, какому столбцу таблицы соответствует каждая из переменных w, x, y, z.
В ответе напишите буквы w, x, y, z в том порядке, в котором идут соответствующие им
столбцы (сначала буква, соответствующая первому столбцу; затем буква, соответствующая
второму столбцу, и т.д.). Буквы в ответе пишите подряд, никаких разделителей между
буквами ставить не нужно.
Пример. Функция задана выражением ¬x \/ y, зависящим от двух переменных, а фрагмент
таблицы имеет следующий вид:
0
1
¬x \/ y
0
В этом случае первому столбцу соответствует переменная y, а второму столбцу –
переменная x. В ответе следует написать yx.
Задание 3. +++++
+++++
На рисунке справа схема дорог Н-ского района изображена в виде графа, звёздочка в ячейке
таблицы обозначает наличие дороги между двумя населёнными пунктами.
1
Номер пункта
3
1
2
3
4
5
6
7
*
*
Номер пункта
2
3
4
5
6
*
*
*
*
*
*
*
*
*
*
*
*
Б
7
*
*
*
*
Г
A
B
Е
Д
Ж
Так как таблицу и схему рисовали независимо друг от друга, то нумерация населённых
пунктов в таблице никак не связана с буквенными обозначениями на графе.
Выпишите последовательно без пробелов и знаков препинания указанные в таблице цифры,
соответствующие пунктам от А до Ж: сначала цифру, соответствующую пункту А, затем
цифры, соответствующие Б, В, Г, Д, Е и Ж.
Задание 4. +++++
4
Камера делает фотоснимки 800 на 600 пикселей. При этом объём файла с изображением
не может превышать 300 Кбайт, упаковка данных не производится. Какое максимальное
количество цветов можно использовать в палитре изображения?
Задание 5. +++++
+++++
5
Для кодирования некоторой последовательности, состоящей из букв А, Б, В, Г, Д, Е, решили
использовать неравномерный двоичный код, удовлетворяющий условию Фано. Для буквы А
использовали кодовое слово 00; для буквы Б – кодовое слово 100. Какова наименьшая
возможная сумма кодовых слов В, Г, Д и Е?
Примечание. Условие Фано означает, что никакое кодовое слово не является началом
другого кодового слова. Это обеспечивает возможность однозначной расшифровки
закодированных сообщений.
Задание 6. +++++
+++++
6
Дан фрагмент электронной таблицы. Из ячейки B3 в ячейку A2 была скопирована формула.
При копировании адреса ячеек в формуле автоматически изменились. Запишите в ответе
числовое значение формулы в ячейке A2.
1
А
В
С
D
E
40
4
400
90
7
3
300
80
6
2
3
20
=D$2+D3
200
50
5
4
10
1
100
30
4
Примечание. Знак $ обозначает абсолютную адресацию.
Задание 7. +++++
7
В таблице приведены запросы поискового сервера и количество найденных по ним страниц
некоторого сегмента сети Интернет. В языке запросов поискового сервера для обозначения
логической операции «ИЛИ» используется символ «|», а для обозначения логической
операции «И» – символ «&».
Запрос
Монитор
Компьютер
Монитор | Компьютер | Процессор
Компьютер & Процессор
Монитор & Компьютер
Монитор & Процессор
Найдено страниц
(в сотнях тысяч)
70
110
165
35
20
0
Какое количество страниц (в сотнях тысяч) будет найдено по запросу
Процессор?
Считается, что все запросы выполнялись практически одновременно, так что набор страниц,
содержащих все искомые слова, не изменялся за время выполнения запросов.
Задание 8. +++++
+++++
8
В терминологии сетей TCP/IP маской сети называется двоичное число, определяющее, какая
часть IP-адреса узла сети относится к адресу сети, а какая – к адресу самого узла в этой сети.
IP-адрес записывается в виде четырёх байтов, причём каждый байт записывается в виде
десятичного числа. Маска записывается по тем же правилам, только в маске сначала
(в старших разрядах) стоят единицы, а затем с некоторого разряда – нули.
Адрес сети получается в результате применения поразрядной конъюнкции к заданному
IP-адресу узла и маске.
Например, если IP-адрес узла равен 215.32.251.130, а маска равна 255.255.240.0, то адрес
сети равен 215.32.240.0.
Для узла с IP-адресом 155.150.154.100 адрес сети равен 155.150.152.0. Чему равно
наименьшее возможное значение третьего слева байта маски? Ответ запишите в виде
десятичного числа.
Задание 9. +++++
9
При регистрации в компьютерной системе каждому пользователю выдаётся пароль,
состоящий из 17 символов и содержащий только символы из 12-символьного набора. В базе
данных для хранения каждого пароля отведено одинаковое и минимально возможное целое
число байт. При этом используют посимвольное кодирование паролей, все символы
кодируют одинаковым и минимально возможным количеством бит. Кроме собственно
пароля, для каждого пользователя в системе хранятся дополнительные сведения, для чего
отведено 16 байт на одного пользователя.
Определите объём памяти (в байтах), необходимый для хранения данных о 60 пользователях.
В ответе запишите только целое число – количество байт.
Задание 10. +++++
+++++
10
На рисунке представлена схема дорог, связывающих города А, Б, В, Г, Д, Е, Ж, З, И, К, Л, М.
По каждой дороге можно двигаться только в одном направлении, указанном стрелкой.
Сколько существует различных путей из города А в город М?
Д
И
Б
Г
А
Е
К
М
Ж
В
З
Л
Задание 11. +++++
+++++
11
Исполнитель преобразует число, записанное на экране.
У исполнителя есть две команды, которым присвоены номера:
1. Прибавить 1
2. Умножить на 3
Первая из них увеличивает число на экране на 1, вторая увеличивает его в 3 раза.
Программа – это последовательность команд.
Сколько существует таких программ, которые исходное число 2 преобразуют в число 70,
и при этом траектория вычислений программы не содержит число 23?
Траектория вычислений программы – это последовательность результатов выполнения всех
команд программы. Например, для программы 121 при исходном числе 7 траектория будет
состоять из чисел 8, 24, 25.
Задание 12. +++++
12
Два игрока, Петя и Ваня, играют в следующую игру. Перед игроками лежит куча камней.
Игроки ходят по очереди, первый ход делает Петя. За один ход игрок может:
– добавить один камень в кучу;
– увеличить количество камней в куче в 2 раза.
Например, если в куче 3 камня, за один ход можно получить 4 или 6 камней
соответственно. Чтобы делать ходы, у каждого игрока есть неограниченное количество
камней.
Игра завершается, когда количество камней в куче становится не менее 65. Победителем
считается игрок, сделавший последний ход, то есть первым получивший позицию, в которой
в куче будет 65 или больше камней. В начальный момент в куче было S камней, S ≤ 64.
Будем говорить, что игрок имеет выигрышную стратегию, если он может выиграть при
любых ходах противника.
Укажите минимальное значение S, при котором Петя не может выиграть за один ход, но при
любом ходе Пети Ваня может выиграть своим первым ходом.
Задание 13. +++++
+++++
13
Для игры, описанной в задании 12, найдите два наименьших значения S, при которых
у Пети есть выигрышная стратегия, причём одновременно выполняются два условия:
– Петя не может выиграть за один ход;
– Петя может выиграть своим вторым ходом независимо от того, как будет ходить Ваня.
Найденные значения запишите в ответе в порядке возрастания без разделительных знаков.
Задание 14. +++++
14
Дана программа, записанная на четырёх языках программирования.
Укажите наименьшее целое число x, при вводе которого алгоритм печатает сначала 3,
а потом 5.
Алгоритмический язык
Паскаль
алг
нач
цел x, L, M, t
ввод x
L := 0
M := 0
нц пока x > 0
t := mod(x, 10)
L := L + 1
если t < 5 то
M := M + t
всё
x := div(x, 10)
кц
вывод L
вывод M
кон
var x, L, M, t: integer;
begin
readln(x);
L := 0;
M := 0;
while x > 0 do begin
t := x mod 10
L := L + 1;
if t < 5 then
M := M + t;
x := x div 10;
end;
writeln(L);
writeln(M);
end.
С++
Python
#include <iostream>
using namespace std;
int main()
{
int x, L, M, t;
cin >> x;
L = 0;
M = 0;
while (x > 0){
t = x % 10
L = L + 1;
if (t < 5)
M = M + t;
x = x / 10;
}
cout << L;
cout << M;
return 0;
}
x = int(input())
L = 0
M = 0
while x > 0:
t = x % 10
L = L + 1
if t < 5:
M = M + t
x = x // 10
print(L)
print(M)
Задание 15. +++++
15
В программе используется одномерный целочисленный массив A с индексами от 0 до 9.
Значения элементов равны 8; 9; 3; 1; 4; 9; 7; 2; 8; 1 соответственно, т. е. A[0] = 8; A[1] = 9 и т. д.
Определите значение переменной s после выполнения следующего фрагмента программы,
записанного ниже на четырёх языках программирования.
Алгоритмический язык
s := 0
нц для k от 1 до 9
если A[k] < A[k - 1] то
s := s + 1
всё
кц
Си++
s = 0;
for (k = 1; k < 10; k++) {
if (A[k] < A[k - 1])
s = s + 1;
}
Паскаль
s := 0;
for k := 1 to 9 do
if A[k] < A[k - 1] then
s := s + 1;
Python
s = 0
for k in range(1, 10):
if A[k] < A[k - 1]:
s = s + 1
Задание 16. +++++
в строке с номером соответствующего задания.
16
На обработку поступает последовательность четырёх натуральных чисел, каждое из которых
не превышает 105. Нужно написать программу, которая выводит на экран минимальное число,
кратное 5. Если в последовательности нет чисел, кратных 5, требуется на экран вывести
«NO». Программист написал программу неправильно. Ниже эта программа для Вашего
удобства приведена на четырёх языках программирования.
Алгоритмический язык
алг
нач
цел M, i, a
M := 100000
нц для i от 1 до 4
ввод a
если mod(a, 5) = 0 и a < M
то M := a
всё
кц
если M = 100000 то
вывод "NO"
иначе
вывод M
всё
кон
Паскаль
var M, i, a: longint;
begin
M := 100000;
for i := 1 to 4 do begin
readln(a);
if (a mod 5 = 0) and (a < M)
then M := a
end;
if M = 100000 then
writeln('NO')
else
writeln(M)
end.
С++
Python
М = 100000
for i in range(4):
a = int(input())
if a % 5 == 0 and a < M:
M = a
if M == 100000:
print("NO")
else:
print(M)
#include <iostream>
using namespace std;
int main() {
int M, i, a;
M = 100000;
for (i = 0; i < 4; i++) {
cin >> a;
if (a % 5 == 0 && a < M)
M = a;
}
if (M == 100000)
cout << "NO" << endl;
else
cout << M << endl;
return 0;
}
Последовательно выполните следующее.
1. Напишите, что выведет эта программа при вводе чисел 1001, 100 000, 10001, 1.
2. Приведите пример четырёх таких чисел, при вводе которых приведённая программа,
несмотря на ошибки, выдаёт верный ответ. Запишите их через запятую и пробел.
3. Найдите допущенные программистом ошибки и исправьте их. Исправление ошибки должно
затрагивать только строку, в которой находится ошибка. Для каждой ошибки:
1) выпишите строку, в которой сделана ошибка;
2) укажите, как исправить ошибку, т. е. приведите правильный вариант строки.
Известно, что в тексте программы можно исправить ровно две строки так, чтобы она стала
работать правильно.
Достаточно указать ошибки и способ их исправления для одного языка программирования.
Обратите внимание на то, что требуется найти ошибки в имеющейся программе, а не написать
свою, возможно, использующую другой алгоритм решения.
+++++
+++++