×
  • 1 Вариант ЕГЭ
  • 2 Вариант ЕГЭ
  • 3 Вариант ЕГЭ
  • 4 Вариант ЕГЭ
  • 5 Вариант ЕГЭ
  • 6 Вариант ЕГЭ
  • 7 Вариант ЕГЭ
  • 8 Вариант ЕГЭ
  • 9 Вариант ЕГЭ
  • 10 Вариант ЕГЭ
  • 11 Вариант ЕГЭ
  • 12 Вариант ЕГЭ
  • Спасибо за внимание
  • Вариант ЕГЭ по информатике № 9

    1) Сколько значащих нулей в двоичной записи шестнадцатеричного числа 3BC16?

    2) Миша заполнял таблицу истинности функции (¬x ∧ ¬y) ∨ (y≡z) ∨ ¬w, но успел заполнить лишь фрагмент из трёх различных её строк, даже не указав, какому столбцу таблицы соответствует каждая из переменных w, x, y, z.

                        F
    0       0 1 0
          0       1 0
    0 1 1       0

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

    3) Между населёнными пунктами A, B, C, D, E, F, Z построены дороги с односторонним движением. В таблице указана протяжённость каждой дороги. Отсутствие числа в таблице означает, что прямой дороги между пунктами нет. Например, из A в B есть дорога длиной 4 км, а из B в A дороги нет.

         А B C D E F Z
    A       4 6                   30
    B             3 8                  
    C                   11 10       27
    D                         4 3 10
    E                               4 1
    F                                     2
    Z 29                                    

    Курьеру требуется проехать из A в Z, посетив не менее 6 населённых пунктов. Пункты A и Z при подсчёте учитываются, два раза проходить через один пункт нельзя. Какова наименьшая возможная длина маршрута курьера? В ответе запишите натуральное число – длину минимального маршрута.

    4) В фрагменте базы данных представлены сведения о родственных отношениях. Определите на основании приведенных данных идентификатор сестры Куинджи П.А.

    ID Фамилия И.О. Пол
    2011 Косач-Квитка Л.П. Ж
    2012 Левитан И.И. М
    2024 Шерер А.Ф. Ж
    2045 Блок А.А. М
    2056 Врубель М.А. Ж
    2083 Левитан Б.И. М
    2094 Левитан В.И. Ж
    2115 Куинджи А.П. М
    2140 Левитан Р.Б. Ж
    2162 Левитан Л.Б. М
    2171 Гиппиус З.Н. Ж
    2186 Молчалина С.А. Ж
    2201 Куинджи П.А. М
    ID_Родителя ID_Ребенка
    2011 2083
    2011 2094
    2012 2083
    2012 2094
    2024 2115
    2056 2140
    2056 2162
    2083 2140
    2083 2162
    2094 2186
    2094 2201
    2115 2186
    2115 2201

    5) По каналу связи передаются сообщения, содержащие только четыре буквы: П, О, С, Т; для передачи используется двоичный код, допускающий однозначное декодирование. Для букв Т, О, П используются такие кодовые слова: Т: 111, О: 0, П: 100. Укажите кратчайшее кодовое слово для буквы С, при котором код будет допускать однозначное декодирование. Если таких кодов несколько, укажите код с наименьшим числовым значением

    6) На вход алгоритма подаётся натуральное число N. Алгоритм строит по нему новое число R следующим образом:

    • Строится двоичная запись числа N.
    • К этой записи дописываются справа ещё два разряда по следующему правилу:
      • складываются все цифры двоичной записи, и остаток от деления суммы на 2 дописывается в конец числа (справа). Например, запись 11100 преобразуется в запись 111001;
      • над этой записью производятся те же действия – справа дописывается остаток от деления суммы цифр на 2

    Полученная таким образом запись (в ней на два разряда больше, чем в записи исходного числа N) является двоичной записью искомого числа R.

    Укажите такое наименьшее число N, для которого результат работы алгоритма больше 125. В ответе это число запишите в десятичной системе счисления.

    7) Дан фрагмент электронной таблицы.

         А B C
    1 20 ??? 48
    2 =C1-B1*B1*5 =2*(B1*B1*B1+3)/A1 =C1-15*B1

    Какое целое число должно быть записано в ячейке B1, чтобы диаграмма, построенная по значениям ячеек диапазона A2:С2, соответствовала рисунку? Известно, что все значения ячеек из рассматриваемого диапазона неотрицательны.

    8) Укажите число, которое будет напечатано в результате выполнения следующей программы.

    s = 301
    n = 0
    while s > 0:
       s = s - 10
       n = n + 2
    print(n)
    var s, n: integer;
    begin
      s := 301;
      n := 0;
      while s > 0 do begin
        s := s - 10;
        n := n + 2;
      end;
      writeln(n);
    end.
    #include <iostream>
    using namespace std;
    void main()
    {
    	int s = 301;
    	int n = 0;
    	while (s>0) {
    		s = s -10;
    		n = n + 2;
    	}
    	cout << n << endl;
    }

    9) Найдите объем графического изображения, имеющего размер 800×640 пикселей, и состоящего из 256 цветов. Ответ укажите в килобайтах

    10) Все 5-буквенные слова, составленные из букв Р, О, К, записаны в алфавитном порядке и пронумерованы. Вот начало списка:

    • ККККК
    • ККККО
    • ККККР
    • КККОК
    • КККОО
    • КККОР

    Укажите номер первого слова, которое начинается с буквы Р.

    11) Ниже представлена реализация рекурсивной процедуры на трех языках программирования:

    def F(n):
       if n==4:
          return 1
       elif n==0:
          return F(n+1)
       else:
          return n*F(n+1)
    function F(n:integer):integer;
    begin
      if n=4 then 
        F:=1
      else if n=0 then
        F:=F(n+1)
      else
        F:=n*F(n+1);
    end;
    int F(int n) {
    	if (n == 4)
    		return 1;
    	else if (n == 0)
    		return F(n + 1);
    	else
    		return n*F(n + 1);
    }

    Чему будет равна переменная n, если ей присвоить результат вызова F(-4) ?

    12) Два узла, находящиеся в одной сети, имеют IP-адреса 11.156.152.142 и 11.156.157.39. Укажите наибольшее возможное значение третьего слева байта маски сети. Ответ запишите в виде десятичного числа.

    13) Автомобильный номер состоит из нескольких букв (количество букв одинаковое во всех номерах), за которыми следуют три цифры. При этом используются 10 цифр и только 5 букв: Н, О, М, Е и Р. Нужно иметь не менее 200 тысяч различных номеров. Какое наименьшее количество букв должно быть в автомобильном номере?

    14) Дана программа для исполнителя Редактор:

    НАЧАЛО
      ПОКА нашлось (444) ИЛИ нашлось (777)
       ЕСЛИ нашлось (444)
         ТО заменить (444, 7)
       ИНАЧЕ 
         заменить (777, 4)
       КОНЕЦ ЕСЛИ
      КОНЕЦ ПОКА
    КОНЕЦ

    Какая строка получится в результате применения приведённой ниже программы к строке,состоящей из 71 идущих подряд цифр 7?

    15) На рисунке представлена схема дорог, связывающих города А, Б, В, Г, Д, Е, Ж, З, И, К, Л, М.

    По каждой дороге можно двигаться только в одном направлении, указанном стрелкой.

    Сколько существует способов добраться из пункта А в пункт М?

    16) Результат выражения 745 - 4914 + 191 записали в семеричной системе счисления. Подсчитайте сколько раз встретилась цифра "6"

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

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

    Запрос Найдено страниц
    Шелдон | Леонард | Говард 1000
    Шелдон | Леонард 740
    Говард & (Шелдон | Леонард) 400

    Укажите, какое количество страниц будет найдено по запросу:

    Говард

    Считается, что все запросы выполнялись практически одновременно, так что набор страниц, содержащих все искомые слова, не изменялся за время выполнения запросов.

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

    Так, например, 12 & 6 = 11002 & 01102 = 01002 = 4.

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

    (х & А ≠ 0) → ((х & 10 = 0) → (х & 3 ≠ 0))

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

    19) В программе описан одномерный целочисленный массив с индексами от 0 до 10. Ниже представлен фрагмент программы, записанный на трех языках программирования.

    s = 27
    n = 10
    for i in range(n):
        s = s+A[i]-A[i+1]+2
    s := 27;
    n := 10;
    for i := 0 to n-1 do
      s := s+A[i]-A[i+1]+2;
    s = 27;
    n = 10;
    for (i = 0; i < n; i++) {
       s = s +A[i]-A[i + 1]+ 2;
    }

    Известно, что в начале выполнения этого фрагмента в массиве находилась возрастающая последовательность натуральных чисел, то есть A[0] < A[1] < … < A[10]. Какое наибольшее значение может иметь переменная s после выполнения данной программы?

    20) Ниже на трех языках программирования записан алгоритм. Получив на вход число x, эта программа печатает два числа a и b. Укажите наименьшее из таких чисел x, при вводе которых алгоритм печатает сначала 2, а потом 3, при условии, что число должно состоять из цифр, больших 5

    x = int(input())
    a = 0 
    b = 0
    while x > 0: 
       c =  x % 2
       if c == 0: 
          a =  a + 1
       else:
          b =  b + 1
       x =  x // 10  
    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;
    void 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;
    	cout<<b;
    }

    21) Укажите наименьшее значение входной переменной t, при котором программа выдаёт тот же ответ, что и при входном значении t=24.

    def f(n):
      return n*n
    def g(k):
      return 4*k + 3
    
    t = int(input())
    i = 1
    while f(i) < g(t):
      i+=1
    print(i)
    var t, i : longint;
    function f(n: longint): longint;
    begin
       f := n * n;
    end;
    function g(k: longint): longint;
    begin
       g := 4*k + 3;
    end;
    begin
     readln(t);
     i := 1;
     while f(i) < g(t) do
        i := i + 1;
     writeln(i);
    end.
    #include <iostream>
    using namespace std;
    long int f(long int n) {
    	return n*n;
    }
    long int g(long int k) {
    	return 4*k+3;
    }
    void main()
    {
    	int i, t;
    	cin >> t;
    	i = 1;
    	while (f(i) < g(t))
    		i = i + 1;
    	cout << i << endl;
    }

    22) Исполнитель СдамЕГЭ преобразует число на экране. У исполнителя есть две команды, которым присвоены номера:

    • Прибавить 1
    • Прибавить 2

    Первая команда увеличивает число на экране на 1, вторая увеличивает его на 2.

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

    23) Сколько всего различных наборов значений логических перемененных x1 ... x6, y1 ... y6, которые удовлетворяют системе уравнений?

    (x1 ∨ y1) → (x2 ∧ y2) = 0

    (x2 ∨ y2) → (x3 ∧ y3) = 0

    (x3 ∨ y3) → (x4 ∧ y4) = 0

    (x4 ∨ y4) → (x5 ∧ y5) = 0

    (x5 ∨ y5) → (x6 ∧ y6) = 0

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

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

    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:longint;
    digit, maxDigit: integer;
    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.
    #include <iostream>
    using namespace std;
    int main() {
      long N;
      int 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" << endl;
      else 
        cout << maxDigit << endl;
    }

    Последовательно выполните следующее:
    1. Напишите, что выведет эта программа при вводе числа 134.
    2. Приведите пример такого трёхзначного числа, что, несмотря на ошибки, программа печатает правильный ответ.
    3. Найдите в программе все ошибки




    25) Дан массив, содержащий 1000 положительных целых чисел. Симметричной парой называются два элемента, которые находятся на равном расстоянии от концов массива. Например, 1-й и 1000-й элементы, 2-й и 999-й и т. д. Порядок элементов в симметричной паре не учитывается: элементы на 1 и 2014 местах – это та же самая пара, что и элементы на 2014 и 1 местах.

    Напишите на одном из языков программирования программу, которая подсчитывает в массиве количество симметричных пар, у которых сумма элементов больше 20. Программа должна вывести одно число – количество отобранных симметричных пар.

    # допускается также  
    # использовать две 
    # целочисленные переменные j и k
    a = [ ] 
    n = 1000
    for i in range(0, n): 
       a.append(int(input()))
    ...
    const     
    N = 1000; 
    var     
    a: array [1..N] of integer;    
    i, j, k: integer;
    begin  
       for i := 1 to N do    
          readln(a[i]);   
       ...  
    end.
    #include <iostream> 
    using namespace std;
    const int N = 1000;
    int main() {    
       int a[N];  
       int i, j, k;  
       for (i = 0; i < N; i++)   
          cin >>  a[i];  
       ...   
       return 0; 
    }



    Задания взяты из базы данных ФИПИ, сайта К.Полякова или придуманы мною