При выполнении заданий с кратким ответом впишите в поле для ответа цифру, которая соответствует номеру правильного ответа, или число, слово, последовательность букв (слов) или цифр. Ответ следует записывать без пробелов и каких-либо дополнительных символов. Дробную часть отделяйте от целой десятичной запятой. Единицы измерений писать не нужно.
Если вариант задан учителем, вы можете вписать или загрузить в систему ответы к заданиям с развернутым ответом. Учитель увидит результаты выполнения заданий с кратким ответом и сможет оценить загруженные ответы к заданиям с развернутым ответом. Выставленные учителем баллы отобразятся в вашей статистике.
Версия для печати и копирования в MS Word
Какое из неравенств выполняется для чисел А = 1648, В = А316 и С = 22004?
1) A < B < C
2) А < С < В
3) В < А < С
4) С < В < А
Ответ:
Символом F обозначено одно из указанных ниже логических выражений от трёх аргументов: X, Y, Z. Дан фрагмент таблицы истинности выражения F:
| X | Y | Z | F |
|---|---|---|---|
0 | 1 | 0 | 1 |
1 | 0 | 1 | 0 |
1 | 0 | 0 | 1 |
Какое выражение соответствует F?
1) ¬X → Z ∧ Y
2) Z → X ∨ Y
3) (¬X ∨ Y) ∧ Z
4) X ∨ Y → ¬Z
Ответ:
На рисунке схема дорог Н-ского района изображена в виде графа, в таблице содержатся сведения о длинах этих дорог (в километрах).
| П1 | П2 | П3 | П4 | П5 | П6 | П7 | |
| П1 | 40 | 15 | |||||
| П2 | 40 | 35 | 50 | ||||
| П3 | 10 | 65 | 8 | ||||
| П4 | 15 | 35 | 22 | 33 | |||
| П5 | 10 | 50 | |||||
| П6 | 50 | 65 | 22 | 50 | 40 | ||
| П7 | 8 | 33 | 40 |
Так как таблицу и схему рисовали независимо друг от друга, нумерация населённых пунктов в таблице никак не связана с буквенными обозначениями на графе. Определите длину дороги из пункта Б в пункт Д. В ответе запишите целое число.
Ответ:
Для групповых операций с файлами используются маски имён файлов. Маска представляет собой последовательность букв, цифр и прочих допустимых в именах файлов символов, в которых также могут встречаться следующие символы:
Символ «?» (вопросительный знак) означает ровно один произвольный символ.
Символ «*» (звёздочка) означает любую последовательность символов произвольной длины, в том числе «*» может задавать и пустую последовательность.
Определите, какое из указанных имён файлов удовлетворяет маске:
?fil?*.w
1) refiled.wmf
2) fil.w
3) ffilpage.w
4) nadfil.w
Ответ:
По каналу связи передаются сообщения, содержащие только буквы А, Б, В, Г, Д, Е. Для передачи используется неравномерный двоичный код, удовлетворяющий условию Фано; для
Какова наименьшая возможная суммарная длина всех кодовых слов? Примечание. Условие Фано означает, что ни одно кодовое слово не является началом другого кодового слова. Коды, удовлетворяющие условию Фано, допускают однозначное декодирование.
Ответ:
Автомат получает на вход трёхзначное число. По этому числу строится новое число по следующим правилам.
1. Перемножаются первая и вторая, а также вторая и третья цифры.
2. Полученные два числа записываются друг за другом в порядке неубывания без разделителей.
Пример. Исходное число: 631. Произведение: 6 · 3 = 18; 3 · 1 = 3. Результат: 318.
Укажите наибольшее число, при обработке которого автомат выдаёт
Ответ:
Дан фрагмент электронной таблицы:
| A | B | C | |
| 1 | 3 | 2 | |
| 2 | =(A1-6)/B1 | =A2+C1 | =A2 |
Какое целое число должно быть записано в ячейке A1, чтобы построенная после выполнения вычислений диаграмма по значениям диапазона ячеек А2:С2 соответствовала рисунку?
Известно, что все значения диапазона, по которым построена диаграмма, имеют один и тот же знак.
Ответ:
Определите, что будет напечатано в результате выполнения программы, записанной ниже на разных языках программирования.
| Бейсик | Python |
|---|---|
DIM N, S AS INTEGER N = 1 S = 0 WHILE N <= 300 S = S + 30 N = N * 5 WEND PRINT S
| n = 1 s = 0 while n <= 300: s = s + 30 n = n * 5 print(s)
|
| Паскаль | Алгоритмический язык |
var n, s: integer; begin n := 1; s := 0; while n <= 300 do begin s := s + 30; n := n * 5 end; write(s) end. | алг нач цел n, s n := 1 s := 0 нц пока n <= 300 s := s + 30 n := n * 5 кц вывод s кон |
| Си++ | |
#include <iostream> using namespace std; int main() { int n, s; n = 1; s = 0; while (n <= 300) { s = s + 30; n = n * 5; } cout « s « endl; return 0; }
| |
Ответ:
Каково время (в минутах) передачи полного объема данных по каналу связи, если известно, что передано 150 Мбайт данных, причем первую половину времени передача шла со скоростью 2 Мбит в секунду, а остальное время — со скоростью 6 Мбит в секунду?
Ответ:
Вася составляет 5-буквенные слова, в которых есть только буквы С, Л, О, Н, причём
Ответ:
Ниже на пяти языках программирования записан рекурсивный алгоритм F.
| Бейсик | Python |
|---|---|
SUB F(n) IF n > 0 THEN PRINT "*" F(n - 1) F(n \ 3) END IF END SUB
| def F(n): if n > 0: print("*") F(n - 1) F(n // 3)
|
| Алгоритмический язык | Паскаль |
алг F(цел n) нач если n > 0 то вывод "*" F(n - 1) F(div(n, 3)) все кон | procedure F(n: integer); begin if n > 0 then begin writeln('*'); F(n - 1); F(n div 3) end end |
| Си | |
void F(int n) { if (n > 0) { printf("*"); F(n - 1); F(n / 3); } }
| |
Сколько символов «звёздочка» будет напечатано на экране при выполнении вызова F(6)?
Ответ:
В терминологии сетей TCP/IP маска сети — это двоичное число, меньшее 232; в маске сначала (в старших разрядах) стоят единицы, а затем с некоторого места нули. Маска определяет, какая часть IP-адреса узла сети относится к адресу сети, а какая — к адресу самого узла в этой сети. Обычно маска записывается по тем же правилам, что и IP-адрес – в виде четырёх байт, причём каждый байт
записывается в виде десятичного числа. Адрес сети получается в результате применения поразрядной конъюнкции к заданному IP-адресу узла и маске. Например, если IP-адрес узла равен 231.32.255.131, а маска равна 255.255.240.0, то адрес сети равен 231.32. 240.0.
Для узла с IP-адресом 224.128.112.142 адрес сети равен 224.128.96.0. Чему равен третий слева байт маски? Ответ запишите в виде десятичного числа.
Ответ:
Для передачи секретного сообщения используется код, состоящий только из латинских букв (всего используется 26 символов). При этом все символы кодируются одним и тем же минимально возможным количеством бит. Было передано закодированное сообщение, состоящее из 240 символов. Определите информационный объем сообщения (в байтах).
Ответ:
Система команд исполнителя РОБОТ, «живущего» в прямоугольном лабиринте на клетчатой плоскости:
вверх вниз влево вправо
При выполнении этих команд РОБОТ перемещается на одну клетку соответственно: вверх ↑, вниз ↓, влево ←, вправо →.
Четыре команды проверяют истинность условия отсутствия стены у той клетки, где находится РОБОТ:
сверху
свободноснизу
свободнослева
свободносправа
свободно
Цикл
ПОКА <условие> команда
выполняется, пока условие истинно, иначе происходит переход на следующую строку.
Сколько клеток приведенного лабиринта соответствует требованию, что, выполнив предложенную ниже программу, РОБОТ остановится в той же клетке, с которой он начал движение?
НАЧАЛО
ПОКА <снизу свободно> вниз
ПОКА <справа свободно> вправо
ПОКА <сверху свободно> вверх
ПОКА <слева свободно> влево
КОНЕЦ
Ответ:
На рисунке — схема дорог, связывающих города А, Б, В, Г, Д, Е, Ж, И, К, Л. По каждой дороге можно двигаться только в одном направлении, указанном стрелкой. Сколько существует различных путей из города А в город Л?
Ответ:
В системе счисления с основанием N запись числа 7910 оканчивается на 2, а запись числа 11110 — на 1. Чему равно число N?
Ответ:
В таблице приведены запросы к поисковому серверу. Расположите номера запросов в порядке возрастания количества страниц, которые найдет поисковый сервер по каждому запросу. Для обозначения логической операции «ИЛИ» в запросе используется символ |, а для логической операции «И» — &.
1) живопись & литература & графика
2) живопись | литература | графика
3) живопись | литература
4) живопись & литература
Ответ:
Элементами множеств А, P, Q являются натуральные числа, причём P = {2, 4, 6, 8, 10, 12, 14, 16, 18, 20}, Q = {5, 10, 15, 20, 25, 30, 35, 40, 45, 50}. Известно, что выражение
( (x ∈ A) → (x ∈ P) ) ∧ ( (x ∈ Q) → ¬(x ∈ A) )
истинно (то есть принимает значение 1) при любом значении переменной х. Определите наибольшее возможное количество элементов в множестве A.
Ответ:
В программе используется одномерный целочисленный массив A с индексами от 0 до 9. Значения элементов равны 8, 4, 3, 0, 7, 2, 1, 5, 9, 6 соответственно, т. е. A[0] = 8, A[1] = 4 и т. д. Определите значение переменной s после выполнения следующего фрагмента программы (записанного ниже на разных языках программирования).
| Бейсик | Python |
|---|---|
s = 0 FOR j = 0 TO 9 IF A(j) <=4 THEN s = j ENDIF NEXT j
| s = 0 for j in range(10): if A[j] <= 4: s = j
|
| Алгоритмический язык | Паскаль |
s := 0 нц для j от 0 до 9 если A[j] <= 4 то s := j все кц | s := 0; for j := 0 to 9 do if A[j] <= 4 then s := j; |
| Си++ | |
s = 0; for (j = 0; j <= 9; j++) { if (A[j] <= 4) { s = j; } }
| |
Ответ:
Ниже на пяти языках записан алгоритм. Получив на вход число x, этот алгоритм печатает два числа: a и b. Укажите наибольшее из таких чисел x, при вводе которых алгоритм печатает сначала 2, а потом 3. Допускается диапазон значений для величин целого типа: от −231 до 231 — 1.
| Бейсик | Паскаль |
|---|---|
DIM X, A, B, C AS INTEGER INPUT X A = 0: B = 0 WHILE X > 0 C = X MOD 2 IF C = 0 THEN A = A + 1 ELSE B = B + 1 END IF X = X / 10 WEND PRINT A PRINT B | var x, a, b, c: integer; begin readln(x); a := 0; b := 0; while x > 0 do begin c := x mod 2 if c = 0 then a := a + 1 else b := b + 1 x := x div 10 end; writeln(a); write(b); end. |
| Си++ | Алгоритмический |
#include <iostream> using namespace std;
int main() { int x, a, b, c; cin >> x; a = 0; b = 0; while (x > 0) { c = x%2 if (c == 0) a = a + 1; else b = b + 1; x = x / 10; } cout << a << endl << b endl; }
| алг нач цел x, a, b, c ввод x a := 0; b := 0 нц пока x > 0 c := mod(x, 2) если c = 0 то a := a + 1 иначе b := b + 1 все x := div(x, 10) кц вывод а, нс b кон |
| Python | |
x = int(input()) a = 0 b = 0 while x > 0: c = x % 2 if c == 0: a += 1 else: b += 1 x = x // 10 print(a) print(b)
| |
Ответ:
Напишите в ответе число, которое будет напечатано в результате выполнения следующего алгоритма (для Вашего удобства алгоритм представлен на четырёх языках).
| Бейсик | Паскаль |
|---|---|
DIM A, B, T, M, R AS INTEGER A = -11: B = 11 M = A: R = F(А) FOR T = A TO B IF F(T) <= R THEN M = T R = F(T) END IF NEXT T PRINT M+18 FUNCTION F(x) F = (x*x-4)*(x*x-4)+11 END FUNCTION | var a,b,t,M,R: integer; Function F(x:integer): integer; begin F := (x*x-4)*(x*x-4)+11 end; begin a := -11; b := 11; M := a; R := F(a); for t := a to b do begin if (F(t) <= R) then begin M := t; R := F(t) end end; write(M+18) end. |
| Си++ | Алгоритмический |
#include <iostream> using namespace std; int F(int x) { return (x*x-4)*(x*x-4)+11; } int main() { int a, b, t, M, R; a = -11; b = 11; M = a; R = F(a); for (t = a; t <= b; t++) { if (F(t) <= R) { M = t; R = F(t); } } cout << M+18 << endl; } | алг нач цел a, b, t, M, R a := -11; b := 11 M := a; R := F(a) нц для t от a до b если F(t) <= R то M := t; R := F(t) все кц вывод M+18 кон алг цел F(цел x) нач знач := (x*x-4)*(x*x-4)+11 кон |
| Python | |
def f(x): return (x*x-4)*(x*x-4)+11 a = -11 b = 11 M = a R = f(a) for t in range(a, b+1): if (f(t) <= R): M = t R = f(t); print(M+18)
| |
Ответ:
Определите значение переменной с после выполнения следующего фрагмента программы (записанного ниже на разных языках программирования). Ответ запишите в виде целого числа.
| Бэйсик | Алгоритмический язык |
|---|---|
а = 40 b = 6 а = а * 3 / b IF а > b THEN с = а + 5 * b ELSE с = а - 5 * b END IF | a := 40 b := 6 a := a * 3 / b если a > b то c := a + 5 * b иначе c := a - 5 * b все |
| Си++ | Паскаль |
a = 40; b = 6; a = a * 3 / b; if (a > b) с = a + 5 * b; else с = a - 5 * b; | a : = 40; b : = 6; a : = a * 3 / b if a > b then с:=a + 5 * b else с:= a - 5 * b; |
| Python | |
a = 40 b = 6 a = a * 3 / b if a > b: c = a + 5 * b else: c = a - 5 * b
| |
Ответ:
Сколько различных решений имеет уравнение
(K ∨ L) ∧ (M ∨ N) = 1
где K, L, M, N – логические переменные? В ответе не нужно перечислять все различные наборы значений K, L, M и N, при которых выполнено данное равенство. В качестве ответа вам нужно указать только количество таких наборов.
Ответ:
Требовалось написать программу, при выполнении которой с клавиатуры считываются координаты точки на плоскости (x, y – действительные числа) и определяется принадлежность этой точки заданной закрашенной области (включая границы). Программист торопился и написал программу неправильно.
| Паскаль | Бейсик |
|---|---|
var x,y: real; begin if y<=2+x then if y>=0 then if y>=x*x then write('принадлежит') else write('не принадлежит') end. | INPUT x, y IF y<=2+x THEN IF y>=0 THEN IF y>=x*x THEN PRINT "принадлежит" ELSE PRINT "не принадлежит" ENDIF ENDIF ENDIF END |
| Си++ | Алгоритмический язык |
int main(void){ float x, y; cin >> x >> y; if (y<=2+x) if (y>=0) if (y>=x*x) cout << "принадлежит"; else cout << "не принадлежит"; } | нач вещ x,y ввод x,y если y<=2+x то если y>=0 то если y>=x*x то вывод 'принадлежит' иначе вывод 'не принадлежит' все все все кон |
| Python | |
x = float(input()) y = float(input()) if y<=2+x: if y>=0: if y>=x*x: print("принадлежит") else: print("не принадлежит") | |
Последовательно выполните следующее.
1. Перерисуйте и заполните таблицу, которая показывает, как работает программа при аргументах, принадлежащих различным областям (A, B, C, D, E, F, G и H).
Точки, лежащие на границах областей, отдельно не рассматривать. В столбцах условий укажите "да", если условие выполнится, "нет", если условие не выполнится, "—" (прочерк), если условие не будет проверяться, "не изв.", если программа ведет себя по-разному для разных значений, принадлежащих данной области. В столбце "Программа выведет" укажите, что программа выведет на экран. Если программа ничего не выводит, напишите "—" (прочерк). Если для разных значений, принадлежащих области, будут выведены разные тексты, напишите "не изв". В последнем столбце укажите "да" или "нет".
2. Укажите, как нужно доработать программу, чтобы не было случаев ее неправильной работы. (Это можно сделать несколькими способами, достаточно указать любой способ доработки исходной программы.)
| Область | Условие 1 (y<=2+x) | Условие 2 (y>=0) | Условие 3 (y>=x*x) | Программа выведет | Область обрабатывается верно |
| A | |||||
| В | |||||
| С | |||||
| D | |||||
| Е | |||||
| F | |||||
| G | |||||
| Н |
На следующей странице вам будет предложено проверить их самостоятельно.
Опишите на русском языке или на одном из языков программирования алгоритм подсчета произведения всех отрицательных элементов заданного целочисленного массива размером 30 элементов, в предположении, что в массиве есть хотя бы один отрицательный элемент.
На следующей странице вам будет предложено проверить их самостоятельно.
Два игрока, Петя и Ваня, играют в следующую игру. Перед игроками лежит куча камней. Игроки ходят по очереди, первый ход делает Петя. За один ход игрок может добавить в кучу один камень или утроить количество камней в куче, а затем убрать из кучи 1 камень. Например, имея кучу из 10 камней, за один ход можно получить кучу из 11 или 29 камней. У каждого игрока, чтобы делать ходы, есть неограниченное количество камней.
Игра завершается в тот момент, когда количество камней в куче становится более 34. Победителем считается игрок, сделавший последний ход, то есть первым получивший кучу, в которой будет 35 или больше камней. В начальный момент в куче было S камней, 1 ≤ S ≤ 34.
Говорят, что игрок имеет выигрышную стратегию, если он может выиграть при любых ходах противника. Описать стратегию игрока — значит, описать, какой ход он должен сделать в любой ситуации, которая ему может встретиться при различной игре противника.
Выполните следующие задания. Во всех случаях обосновывайте свой ответ.
1. а) При каких значениях числа S Петя может выиграть первым ходом? Укажите все такие значения и выигрывающий ход Пети.
б) Укажите такое значение S, при котором Петя не может выиграть за один ход, но при любом ходе Пети Ваня может выиграть своим первым ходом. Опишите выигрышную стратегию Вани.
2. Укажите два значения S, при которых у Пети есть выигрышная стратегия, причём (а) Петя не может выиграть первым ходом, но (б) Петя может выиграть своим вторым ходом, независимо от того, как будет ходить Ваня.
Для указанных значений S опишите выигрышную стратегию Пети.
3. Укажите такое значение S, при котором
- у Вани есть выигрышная стратегия, позволяющая ему выиграть первым или вторым ходом при любой игре Пети, и при этом
- у Вани нет стратегии, которая позволит ему гарантированно выиграть первым ходом.
Для указанного значения S опишите выигрышную стратегию Вани. Постройте дерево всех партий, возможных при этой выигрышной стратегии Вани (в виде рисунка или таблицы). На рёбрах дерева указывайте, кто делает ход, в узлах — количество камней в позиции.
На следующей странице вам будет предложено проверить их самостоятельно.
По каналу связи передаются положительные целые числа, не превышающие 1000, — результаты измерений, полученных в ходе эксперимента (количество измерений N известно заранее, гарантируется, что N > 2). После окончания эксперимента передаётся контрольное значение — наибольшее число R, удовлетворяющее следующим условиям:
1) R — сумма двух различных переданных элементов последовательности («различные» означает, что нельзя просто удваивать переданные числа, суммы различных, но равных по величине элементов допускаются);
2) R — чётное число. В результате помех при передаче как сами числа, так и контрольное значение могут быть искажены.
Напишите программу (укажите используемую версию языка программирования, например Free Pascal 2.6.4), которая будет проверять правильность контрольного значения. Программа должна напечатать отчёт по следующей форме:
Вычисленное контрольное значение:
…
Контроль пройден (или Контроль не пройден)
Постарайтесь, чтобы программа была эффективной. Программа считается эффективной по времени, если время работы программы пропорционально количеству полученных показаний прибора N, то есть при увеличении N в k раз время работы программы должно увеличиваться не более чем в k раз. Программа считается эффективной по памяти, если размер памяти, использованной в программе для хранения данных, не зависит от числа N и не превышает 1 килобайта.
Перед текстом программы кратко опишите используемый Вами алгоритм решения.
На вход программе в первой строке подаётся количество чисел N (N > 2). В каждой из последующих N строк записано одно натуральное число, не превышающее 1000. В последней строке записано контрольное значение. Пример входных данных:
6
100
8
33
145
19
84
184
Пример выходных данных для приведённого выше примера входных данных: Вычисленное контрольное значение: 184.
На следующей странице вам будет предложено проверить их самостоятельно.