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

    1) Найти сумму чисел 4326 и 5356. Ответ запишите также в шестеричной системе.

    2) Логическая функция F задаётся выражением (a ∧ ¬c) ∨ (¬b ∧ ¬c). Определите какому столбцу таблицы истинности функции F соответсвует каждая из переменных a, b, c?

    ? ? ? F
    0 0 0 1
    0 0 1 0
    0 1 0 0
    0 1 1 0
    1 0 0 1
    1 0 1 0
    1 1 0 1
    1 1 1 0

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

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

         П1 П2 П3 П4 П5 П6 П7
    П1       20                         15
    П2 20       10 5             20
    П3       10             10 25      
    П4       5                   15      
    П5             10             20      
    П6             25 15 20            
    П7 15 20                              

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

    4) Для групповых операций с файлами используются маски имён файлов. Маска представляет собой последовательность букв, цифр и прочих допустимых в именах файлов символов, в которых также могут встречаться следующие символы:

    Символ «?» (вопросительный знак) означает ровно один произвольный символ.

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

    В каталоге находится 6 файлов:

    • maveric.map
    • maveric.mp3
    • taverna.mp4
    • revolver.mp4
    • vera.mp3
    • zveri.mp3

    Ниже представлено восемь масок. Сколько из них таких, которым соответствуют ровно четыре файла из данного каталога?

    *ver*.mp* *?ver?*.mp? ?*ver*.mp?* *v*r*?.m?p*
    ???*???.mp* ???*???.m* *a*.*a* *a*.*p*

    5) Для кодирования некоторой последовательности, состоящей из букв A, B, C, D и E, решили использовать неравномерный двоичный код, допускающий однозначное декодирование. Использовали код: A — 100; B — 0; C — 110; D — 111. Укажите кратчайшее кодовое слово для буквы E, при котором код будет допускать однозначное декодирование. Если таких кодов несколько, укажите код с наименьшим числовым значением

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

    • вычти 2;
    • разделить на 3.

    Запишите порядок команд в программе, которая преобразует число 37 в число 3 и содержит не более 5 команд. Указывайте лишь номера команд.

    7) Дан фрагмент электронной таблицы. Из ячейки E4 в ячейку D3 была скопирована формула. При копировании адреса ячеек в формуле автоматически изменились. Каким стало числовое значение формулыв ячейке D3?

         А B C D E
    1 40 4 400 70 7
    2 30 3 300 60 6
    3 20 2 200       5
    4 10 1 100 40 =$B2 * C$3

    Примечание: знак $ обозначает абсолютную адресацию.

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

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

    9) Музыкальный фрагмент был оцифрован и записан в виде файла без использования сжатия данных. Получившийся файл был передан в город А по каналу связи за 96 секунд. Затем тот же музыкальный фрагмент был оцифрован повторно с разрешением в 4 раза выше и частотой дискретизации в 3 раза ниже, чем в первый раз. Сжатие данных не производилось. Полученный файл был передан в город Б за 16 секунд. Во сколько раз скорость пропускная способность канала в город Б больше пропускной способности канала в город А?

    10) Вася составляет 5-буквенные слова, в которых есть только буквы З, И, М, А, причём в каждом слове есть ровно одна гласная буква и она встречается ровно 1 раз. Каждая из допустимых согласных букв может встречаться в слове любое количество раз или не встречаться совсем. Словом считается любая допустимая последовательность букв, не обязательно осмысленная. Сколько существует таких слов, которые может написать Вася?

    11) Ниже записаны две рекурсивные функции: F и G. Чему будет равно значение, вычисленное при выполнении вызова F(6)?

    def F(n):
      if n > 2: 
        return F(n-1) + G(n-2)
      else:
        return n
    def G(n):
      if n > 2: 
        return G(n-1) + F(n-2)
      else:
        return n+1
    function F(n: integer): integer;
    begin
      if n > 2 then F := F(n-1) + G(n-2)
      else F := n;
    end;
    function G(n: integer): integer;
    begin
      if n > 2 then G := G(n-1) + F(n-2)
      else G := n+1;
    end;
    int F(int n) {
      if (n > 2) 
        return F(n-1) + G(n-2);
      else 
        return n; 
    }
    void G(int n) {
      if (n > 2)
        return G(n-1) + F(n-2);
      else
        return n+1;
    }

    12) Для узла с IP-адресом 48.95.137.38 адрес сети равен 48.95.128.0. Найдите наименьшее возможное количество единиц в двоичной записи маски подсети.

    13) В некоторой стране автомобильный номер длиной 5 символов составляется из заглавных букв (всего используется 30 букв) и десятичных цифр в любом порядке. Каждый символ кодируется одинаковым и минимально возможным количеством бит, а каждый номер – одинаковым и минимально возможным целым количеством байт. Определите объем памяти в байтах, необходимый для хранения 50 автомобильных номеров.

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

    НАЧАЛО
      ПОКА нашлось (555) ИЛИ нашлось (888)
       ЕСЛИ нашлось (555)
         ТО заменить (555, 8)
       КОНЕЦ ЕСЛИ
       ПОКА нашлось (888)
         заменить (888, 5)
       КОНЕЦ ПОКА
       ЕСЛИ нашлось (555)
         ТО заменить (555, 8)
       КОНЕЦ ЕСЛИ
      КОНЕЦ ПОКА
    КОНЕЦ

    Дана строка, состоящая из 21 цифры, причем первые 18 цифр — восьмерки, а остальные — пятерки. Какая строка получится в результате применения программы к данной строке?

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

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

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

    16) Результат выражения (47+168) * (416 - 47) записали в четверичной системе счисления. Сколько значащих разрядов получилось?

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

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

    Запрос Найдено страниц
    Леонардо & Донателло & Микеланджело 140
    Леонардо & Донателло 260
    Леонардо & Микеланджело 525

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

    (Донателло | Микеланджело) & Леонардо

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

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

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

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

    (x & A ≠ 0) → ((X & 44 = 0) → (X & 76 ≠ 0))

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

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

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

    В начале выполнения этого фрагмента в массиве находились двухзначные натуральные числа. Какое наибольшее значение может иметь переменная s после выполнения данной программы?

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

    x = int(input())
    a = 0
    b = 0
    while x > 0:
      a = a + 1
      b = b + (x % 100)
      x = x // 100
    print(a)
    print(b)
    var x, a, b: integer;
    begin
      readln(x);
      a := 0; 
      b := 0;
      while x > 0 do begin
        a := a + 1;
        b := b + (x mod 100);
        x := x div 100;
      end;
      writeln(a); write(b);
    end.
    #include <iostream>
    using namespace std;
    void main()
    {
    	int x, a, b;
    	cin >> x;
    	a = 0;
    	b = 0;
    	while (x > 0) {
    		a = a + 1;
    		b = b + (x % 100);
    		x = x / 100;
    	}
    	cout << a;
    	cout << b;
    }

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

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

    22) У исполнителя СдамЕГЭ три команды, которым присвоены номера:

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

    Сколько есть программ, которые число 14 преобразуют в число 23?

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

    x1 → x2 → x3 → x4 = 0

    y1 → y2 → y3 → y4 → y5 = 1

    z1 → z2 → z3 → z4 = 0

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

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

    N = int(input())
    m = N % 10
    while N > 0:
      d = N % 10
      if d < 5:
        if d > m:
          m = d
      N = N // 10
    if m == 0:
       print('NO')
    else:
       print(m)
    var 
     N: longint;
     d, m:integer;
    begin
     readln(N);
     m := N mod 10;
     while N > 0 do begin
       d := N mod 10;
       if d < 5 then
         if d > m then m := d;
       N := N div 10;
     end;
     if m = 0 then 
        writeln('NO')
     else 
        writeln( m )
    end.
    #include <iostream>
    using namespace std;
    int main() {
      long N;
      int d, m;
      cin >> N;
      m = N % 10;
      while (N > 0) {
        d = N % 10;
        if (d<5) {
          if (d>m) m=d;
        }
        N = N / 10;
      }
      if (m==0) 
        cout << "NO" << endl;
      else
        cout << m << endl;
    }

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




    25) Дан целочисленный массив из 30 элементов. Элементы массива могут принимать натуральные значения от 1 до 10 000 включительно. Опишите на одном из языков программирования алгоритм, который находит минимум среди элементов массива, не делящихся нацело на 6, а затем заменяет каждый элемент, не делящийся нацело на 6, на число, равное найденному минимуму. Гарантируется, что хотя бы один такой элемент в массиве есть. В качестве результата необходимо вывести изменённый массив, каждый элемент выводится с новой строчки.

    Например, для исходного массива из шести элементов: 14 6 11 18 9 24

    программа должна вывести следующий массив 9 6 9 18 9 24

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



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