№№ заданий Пояснения Ответы Ключ Добавить инструкцию Критерии
Источник Раздел кодификатора Ф ИПИ Справка
PDF-версия PDF-версия (вертикальная) PDF-версия (крупный шрифт) PDF-версия (с большим полем) Версия для копирования в MS Word
Вариант № 4718212

1.

Найдите значение выражения 1116 + 118 : 112. Ответ запишите в двоичной системе счисления.

2.

Логическая функция F задаётся выражением ((yx) ≡ (xw)) ∧ (zx).

Дан частично заполненный фрагмент, содержащий неповторяющиеся строки таблицы истинности функции F.

Определите, какому столбцу таблицы истинности соответствует каждая из переменных x, y, z, w.

 

Переменная 1Переменная 2Переменная 3Переменная 4Функция
????????????F
001
0001
01

 

В ответе напишите буквы x, y, z, w в том порядке, в котором идут соответствующие им столбцы (сначала — буква, соответствующая первому столбцу; затем — буква, соответствующая второму столбцу, и т. д.). Буквы в ответе пишите подряд, никаких разделителей между буквами ставить не нужно.

Пример. Пусть задано выражение xy, зависящее от двух переменных x и y, и фрагмент таблицы истинности:

 

Переменная 1Переменная 1Функция
??????F
010

 

Тогда первому столбцу соответствует переменная y, а второму столбцу соответствует переменная x. В ответе нужно написать: yx.

3.

На рисунке схема дорог изображена в виде графа, в таблице содержатся сведения о длине этих дорог в километрах.

 

П1П2П3П4П5П6П7П8
П13723
П2254446
П325
П4373442
П5342428
П6442429
П742282931
П8234631

 

 

Так как таблицу и схему рисовали независимо друг от друга, то нумерация населённых пунктов в таблице никак не связана с буквенными обозначениями на графе. Определите длину дороги из пункта Б в пункт Г. В ответе запишите целое число.

ВНИМАНИЕ. Длины отрезков на схеме не отражают длины дорог.

4.

В фрагменте базы данных представлены сведения о родственных отношениях. На основании приведённых данных определите ID родного брата Седых В. А.

 

Таблица 1
IDФамилия_И._О.Пол
1588Саенко М. А.Ж
1616Билич А. П.М
1683Виктюк И. Б.М
1748Кеосаян А. И.Ж
1960Виктюк П. И.М
1974Тузенбах П. А.Ж
2008Виктюк Б. Ф.М
2106Чижик Д. К.Ж
2339Седых Л. А.М
2349Виктюк А. Б.Ж
2521Меладзе К. Г.М
2593Билич П. А.М
2730Виктюк Т. И.Ж
2860Панина Р. Г.Ж
2882Шевченко Г. Р.Ж
2911Седых В. А.Ж

Таблица 2
ID_РодителяID_Ребенка
16161588
23491588
20081683
21061683
16831960
28821960
28601974
28602339
20082349
21062349
16162593
23492593
16832730
28822730
16162911
23492911

5.

Для кодирования букв А, Б, В, Г решили использовать двухразрядные последовательные двоичные числа (от 00 до 11, соответственно). Закодируйте таким образом последовательность символов ББГА и запишите полученное двоичное число в шестнадцатеричной системе счисления.

6.

У исполнителя Удвоитель две команды, которым присвоены номера:

 

1. прибавь 1

2. умножь на 2.

 

Первая из них увеличивает число на экране на 1, вторая удваивает его. Например, 2121 – это программа

 

умножь на 2

прибавь 1

умножь на 2

прибавь 1,

 

которая преобразует число 1 в число 7.

Запишите порядок команд в программе преобразования числа 3 в число 63, содержащей не более 8 команд, указывая лишь номера команд. Если таких программ более одной, то запишите любую из них.

7.

В электронной таблице значение формулы =CУMM(D2:D4) равно 15. Чему равно значение формулы = СРЗНАЧ (D1:D4), если значение ячейки D1 равно 5? Пустых ячеек в таблице нет.

8.

Определите, что будет напечатано в результате работы следующего фрагмента программы:

 

 

БейсикPython

DIM K, S AS INTEGER

S = 0

K = 0

WHILE S < 100

    S = S + K

    K = K + 4

WEND

PRINT K

s = 0

k = 0

while s < 100:

    s += k

    k += 4

print(k)

ПаскальАлгоритмический язык

var k, s: integer;

begin

       s:=0;

       k:=0;

      while s < 100 do begin

            s:=s+k;

            k:=k+4;

       end;

      write(k);

end.

алг

нач

    цел k, s

    s := 0

    k := 0

    нц пока s < 100

        s := s + k

        k := k + 4

    кц

    вывод k

кон

Си++

#include <iostream>

using namespace std;

int main() {

    int s, k;

    s = 0, k = 0;

    while (s < 100) {

        s = s + k;

        k = k + 4;

    }

    cout << k << endl;

    return 0;

}

 

9.

Электронный почтовый ящик имеет объем 1,535 Мбайт. Информация на его адрес по открытому на прием каналу связи передается со скоростью 2,5 Кбайт/с. Через какое время у поставщика услуг электронной почты появится повод прислать уведомление о переполнении почтового ящика? Укажите время в секундах, округлив до целых.

10.

Олег составляет таблицу кодовых слов для передачи сообщений, каждому сообщению соответствует своё кодовое слово. В качестве кодовых слов Олег использует 4-буквенные слова, в которых есть только буквы A, B, C, D, E, X, Z, причём буквы X и Z встречаются только на двух первых позициях, а буквы A, B, C, D, E — только на двух последних. Сколько различных кодовых слов может использовать Олег?

11.

Последовательность чисел трибоначчи задается рекуррентным соотношением:

F(1) = 0

F(2) = 1

F(3) = 1

F(n) = F(n–3) + F(n–2) + F(n–1), при n >3, где n – натуральное число.

Чему равно одиннадцатое число в последовательности трибоначчи?

В ответе запишите только натуральное число.

12.

В терминологии сетей TCP/IP маской сети называется двоичное число, определяющее, какая часть IP-адреса узла сети относится к адресу сети, а какая — к адресу самого узла в этой сети. Обычно маска записывается по тем же правилам, что и IP-адрес. Адрес сети получается в результате применения поразрядной конъюнкции к заданному IP-адресу узла и маске. По заданным IP-адресу узла и маске определите адрес сети.

 

IP-адрес узла: 64.128.208.194

Маска: 255.255.224.0

 

При записи ответа выберите из приведённых в таблице чисел четыре элемента IP-адреса сети и запишите в нужном порядке соответствующие им буквы без использования точек.

 

ABCDEFGH
064128192194208224255

 

Пример. Пусть искомый IP-адрес: 192.168.128.0, и дана таблица:

 

ABCDEFGH
1281682558127017192

 

В этом случае правильный ответ будет записан в виде: HBAF.

13.

В многодневной регате участвуют 22 яхты. Специальное устройство регистрирует прохождение финиша каждой яхтой при ее заходе в порт назначения, записывая ее номер с использованием минимально возможного количества бит, одинакового для каждой яхты. Каков информационный объем сообщения, записанного устройством, если до финиша добрались только 20 из 22 яхт, участвовавших в регате? (Ответ дайте в битах.)

14.

Исполнитель Чертёжник перемещается на координатной плоскости, оставляя след в виде линии. Чертёжник может выполнять команду сместиться на (a, b), где a, b – целые числа. Эта команда перемещает Чертёжника из точки с координатами (x, y) в точку с координатами (x + a; y + b).

Например, если Чертёжник находится в точке с координатами (4, 2), то команда сместиться на (2, -3) переместит Чертёжника в точку (6, -1).

Цикл

    ПОВТОРИ число РАЗ

        последовательность команд

    КОНЕЦ ПОВТОРИ

означает, что последовательность команд будет выполнена указанное число раз (число должно быть натуральным).

Чертёжнику был дан для исполнения следующий алгоритм (буквами n, a, b обозначены неизвестные числа, n>1):

НАЧАЛО

    сместиться на (60, 100)

    ПОВТОРИ n РАЗ

        сместиться на (a, b)

        сместиться на (33, 44)

    КОНЕЦ ПОВТОРИ

    сместиться на (13, 200)

    сместиться на (-1, 60)

КОНЕЦ

Укажите наибольшее возможное значение числа n, для которого найдутся такие значения чисел a и b, что после выполнения программы Чертёжник возвратится в исходную точку.

15.

На рисунке – схема дорог, связывающих города А, Б, В, Г, Д, Е, Ж, К, Л, М, Н, П, Р, С, Т. По каждой дороге можно двигаться только в одном направлении, указанном стрелкой.

Сколько существует различных путей из города А в город Т, проходящих через город Н?

16.

В системе счисления с некоторым основанием десятичное число 24 записывается в виде 30. Укажите это основание.

17.

В языке запросов поискового сервера для обозначения логической операции «ИЛИ» используется символ «|», а для логической операции «И» - символ «&».

В таблице приведены запросы и количество найденных по ним страниц некоторого сегмента сети Интернет.

 

ЗапросНайдено страниц
(в тысячах)
Гоголь6000
Башмачкин40
Кряква600
Гоголь & Кряква200
Гоголь & Башмачкин30

 

По запросу Башмачкин & Кряква ни одной страницы найдено не было.

Какое количество страниц (в тысячах) будет найдено по запросу Гоголь | Башмачкин | Кряква? Считается, что все запросы выполнялись практически одновременно, так что набор страниц, содержащих все искомые слова, не изменялся за время выполнения запросов.

18.

Обозначим через m&n поразрядную конъюнкцию неотрицательных целых чисел m и n.

Так, например, 14&5 = 11102&01012 = 01002 = 4.

Для какого наименьшего неотрицательного целого числа А формула

 

 

тождественно истинна (то есть принимает значение 1 при любом неотрицательном целом значении переменной x)?

19.

Ниже представлен записанный на разных языках программирования фрагмент одной и той же программы. В программе описан одномерный целочисленный массив A, в представленном фрагменте программы обрабатываются элементы массива с индексами от 1 до 21.

 

БейсикПаскаль

s = 0

n = 21

FOR i = 2 TO n

    s = s+2*(A(i)-A(i-1))

NEXT i

s:=0;

n:=21;

for i:= 2 to n do begin

    s:=s+2*(A[i]-A[i-1]);

end;

Си++Алгоритмический язык

s = 0;

n = 21;

for (i = 2; i <= n; i++) {

    s=s+2*(A[i]-A[i-1]);

}

s:=0

n:=21

нц для i от 2 до n

    s:= s+2*(A[i]-A[i-1])

кц

Python

s = 0

n = 21

for i in range(2, n+1):

     s=s+2*(A[i]-A[i-1])

 

 

В начале выполнения этого фрагмента в элементе массива с индексом i находилось число i (i = 1, …, 21), т. е. A[1] = 1, A[2] = 2 и т. д. Чему будет равно значение переменной s после выполнения данной программы?

20.

Ниже на пяти языках записан алгоритм. Получив на вход число x, этот алгоритм печатает два числа: a и b. Укажите наименьшее из таких чисел x, при вводе которых алгоритм печатает сначала 2, а потом 9.

 

БейсикПаскаль

DIM X, А, В AS INTEGER

INPUT X

А = 0: В = 0

WHILE X > 0

    A = A + 1

    B = B + (X MOD 10)

    X = X \ 10

WEND

PRINT А

PRINT В

var x, a, b: integer;

begin

    readln(x);

    a := 0; b := 0;

    while x>0 do

        begin

            a := a + 1;

            b := b + (x mod 10);

            x := x div 10;

        end;

    writeln(a); write(b);

end.

Си++Алгоритмический

#include <iostream>

using namespace std;

int main()

{

    int x, a, b;

    cin >> x ;

    a = 0; b = 0;

    while (x>0) {

        a = a + 1;

        b = b +(x%10);

        x = x / 10;

    }

    cout << a << endl << b endl;

}

алг

нач

цел х, а, b

ввод x

а := 0; b := 0

нц пока х>0

    a := a+1

    b := b+mod(x,10)

    x := div(x,10)

кц

вывод а, нc, b

кон

Python

x = int(input())

a = 0

b = 0

while x > 0:

    a += 1

    b += x % 10

    x = x // 10

print(a)

print(b)

21.

Напишите в ответе число, которое будет напечатано в результате выполнения следующего алгоритма (для Вашего удобства алгоритм представлен на четырёх языках).

 

БейсикПаскаль

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+6

FUNCTION F(x)

    F = 2*(x*x-16)*(x*x-16)+5

END FUNCTION

var a,b,t,M,R: integer;

    Function F(x:integer): integer;

        begin

            F := 2*(x*x-16)*(x*x-16)+5

        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+6)

end.

Си++Алгоритмический

#include <iostream>

using namespace std;

int F(int x)

{

return 2*(x*x-16)*(x*x-16)+5;

}

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+6 << 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 + 6

кон

алг цел F(цел x)

нач

знач := 2*(x*x-16)*(x*x-16)+5

кон

Python

def f(x):

    return 2*(x*x-16)*(x*x-16)+5

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+6)

 

22.

У исполнителя Накопитель две команды:

 

1.прибавь 5,

2.прибавь 10.

 

Первая из них увеличивает число на экране на 5, вторая – увеличивает его на 10.

Программа для Накопителя – это последовательность команд.

Сколько различных чисел можно получить из числа 1 с помощью программы, которая содержит ровно 7 команд?

23.

Укажите значения переменных К, L, M, N, при которых логическое выражение

 

(¬(М ∨ L) ∧ К) → (¬К ∧ ¬М ∨ N)

ложно. Ответ запишите в виде строки из 4 символов: значений переменных К, L, М и N (в указанном порядке). Так, например, строка 1101 соответствует тому, что К=1, L=1, M=0, N=1.

24.

На обработку поступает натуральное число, не превышающее 109. Нужно написать программу, которая выводит на экран максимальную цифру числа, кратную 3. Если в числе нет цифр, кратных 3, требуется на экран вывести «NO». Программист написал программу неправильно. Ниже эта программа для Вашего удобства приведена на пяти языках программирования.

Напоминание: 0 делится на любое натуральное число.

 

 

БейсикPython

DIM N, DIGIT, MAXDIGIT AS LONG

INPUT N

MAXDIGIT = N MOD 10

WHILE N > 0

    DIGIT = N MOD 10

    IF DIGIT MOD 3 = 0 THEN

        IF DIGIT > MAXDIGIT THEN

            MAXDIGIT = DIGIT

        END IF

    END IF

    N = N \ 10

WEND

IF MAXDIGIT = 0 THEN

    PRINT "NO"

ELSE

    PRINT MAXDIGIT

END IF

N = int(input())

maxDigit = N % 10

while N > 0:

    digit = N % 10

    if digit % 3 == 0:

        if digit > maxDigit:

            maxDigit = digit

    N = N // 10

if maxDigit == 0:

    print("NO")

else:

    print(maxDigit)

ПаскальАлгоритмический язык

var N,digit,maxDigit: longint;

begin

    readln(N);

    maxDigit := N mod 10;

    while N > 0 do

    begin

        digit := N mod 10;

        if digit mod 3 = 0 then

            if digit > maxDigit then

                maxDigit := digit;

        N := N div 10;

    end;

    if maxDigit = 0 then

        writeln('NO')

    else

        writeln(maxDigit)

end.

алг

нач

    цел N, digit, maxDigit

    ввод N

    maxDigit := mod(N,10)

    нц пока N > 0

        digit := mod(N,10)

            если mod(digit, 3) = 0 то

            если digit > maxDigit то

                maxDigit := digit

            все

        все

        N := div(N,10)

    кц

    если maxDigit = 0 то

        вывод "NO"

    иначе

        вывод maxDigit

    все

кон

Си++

#include <iostream>

using namespace std;

int main()

{

    int N, digit, maxDigit;

    cin >> N;

    maxDigit = N % 10;

    while (N > 0)

    {

        digit = N % 10;

        if (digit % 3 == 0)

            if (digit > maxDigit)

                maxDigit = digit;

        N = N / 10;

    }

    if (maxDigit == 0)

        cout << "NO";

    else

        cout << maxDigit<< endl;

    return 0;

}

 

 

Последовательно выполните следующее.

1. Напишите, что выведет эта программа при вводе числа 134.

2. Приведите пример такого трёхзначного числа, при вводе которого программа выдаёт верный ответ.

3. Найдите все ошибки в этой программе (их может быть одна или несколько). Известно, что каждая ошибка затрагивает только одну строку и может быть исправлена без изменения других строк. Для каждой ошибки:

1) выпишите строку, в которой сделана ошибка;

2) укажите, как исправить ошибку, т.е. приведите правильный вариант строки.

Достаточно указать ошибки и способ их исправления для одного языка программирования.

Обратите внимание, что требуется найти ошибки в имеющейся программе, а не написать свою, возможно, использующую другой алгоритм решения. Исправление ошибки должно затрагивать только строку, в которой находится ошибка.

25.

Опишите на русском языке или на одном из языков программирования алгоритм подсчета произведения всех отрицательных элементов заданного целочисленного массива размером 30 элементов, в предположении, что в массиве есть хотя бы один отрицательный элемент.

26.

Два игрока, Петя и Ваня, играют в следующую игру. Перед ними лежат две кучки камней, в первой из которых 4, а во второй - 3 камня. У каждого игрока неограниченно много камней. Игроки ходят по очереди, первый ход делает Петя. Ход состоит в том, что игрок или утраивает число камней в какой-то куче, или добавляет 1 камень в какую-то кучу. Игра завершается в тот момент, когда общее количество камней в двух кучах становится не менее 20. Если в момент завершения игры общее число камней в двух кучах не менее 35, то выиграл Ваня, в противном случае - Петя. Кто выигрывает при безошибочной игре обоих игроков? Укажите, стратегию выигрывающего игрока - какой ход он должен сделать в каждой из позиций, которые могут ему встретиться при правильной игре. Докажите, что описанная стратегия - выигрышная.

27.

В командных олимпиадах по программированию для решения предлагается не больше 12 задач. Команда может решать предложенные задачи в любом порядке. Подготовленные решения команда посылает в единую проверяющую систему соревнований. Вам предлагается написать эффективную, в том числе по используемой памяти, программу, которая будет статистически обрабатывать пришедшие запросы на проверку, чтобы определить популярность той или иной задачи. Следует учитывать, что количество запросов в списке может быть очень велико, так как многие соревнования проходят с использованием сети Интернет. Перед текстом программы кратко опишите используемый Вами алгоритм решения задачи. На вход программе в первой строке подаётся количество пришедших запросов N. В каждой из последующих N строк записан номер задачи от 1 до 12. Пример входных данных:

 

6

1

2

1

1

5

2

 

Программа должна напечатать сведения о количестве запросов на проверку для каждой задачи. Сведения о каждой задаче выводятся в отдельной строке: сначала выводится номер задачи, потом — соответствующее количество запросов. Сведения о задачах, которые не поступали на проверку, выводить не нужно. Строки должны быть упорядочены по убыванию количества запросов, при равенстве количества запросов — по возрастанию номеров задач. Пример выходных данных для приведённого выше примера входных данных:

 

1 3

2 2

5 1