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

    1) Найти сумму чисел 3578 и D916. Ответ запишите в шестнадцатеричной системе.

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

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

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

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

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

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

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

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

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

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

    • opis.doc
    • zapis.docx
    • propiska.docx
    • zapiska.dot
    • podpis.docx
    • podpiska.doc

    Определите, какое количество файлов будет отобрано по маске: *o*a**.doc*. В ответе запишите только целое число.

    5) Для кодирования некоторой последовательности, состоящей из букв А, Б, В, Г, Д и Е, решили использовать неравномерный двоичный код, допускающий однозначное декодирование. Использовали код: А — 0; Б — 1101; В — 11001; Г — 11000; Д — 10. Укажите кратчайшее кодовое слово для буквы Е, при котором код будет допускать однозначное декодирование. Если таких кодов несколько, укажите код с наименьшим числовым значением

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

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

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

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

         А B C D E
    1                              
    2 30 20 30 60 =E$4 + $B4
    3 40 50 40 70 60
    4 80 30 50 50 60

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

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

    s = 0
    for k in range(1,51):
        if k % 5 == 0:
            s = 2*k + s
    print(s)
    var s, k: integer;
    begin
     s := 0;
     for k := 1 to 50 do
       if k mod 5 = 0 then s := 2*k + s;
     writeln(s);
    end.
    #include <iostream>
    using namespace std;
    void main()
    {
       int s = 0;
       for (int k = 1; k < 51; k++) {
    	if (k % 5 == 0)  s = 2 * k + s;
       }
       cout << s << endl;
    }

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

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

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

    def F(n):
      print(n)
      if n < 6:    
        F(n+2)
        F(n*3)
    procedure F(n: integer);
    begin
      writeln(n);
      if n < 6 then begin
        F(n+2);
        F(n*3)
      end
    end;
    void  F(int n) {
    	cout << n;
    	if (n < 6) {
    		F(n + 2);
    		F(n * 3);
    	}
    }

    Найдите сумму чисел, которые будут выведены при вызове F(1).

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

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

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

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

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

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

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

    16) Значение выражения 814 + 39 - 105 записали в троичной системе счисления. Запишите последние пять цифр результата

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

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

    Запрос Найдено страниц
    Гомер & Илиада 200
    Гомер & (Одиссея | Илиада) 470
    Гомер & Одиссея 355

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

    Гомер & Одиссея & Илиада

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

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

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

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

    (x & A ≠ 0) → ((X & 30 = 0) → (X & 20 ≠ 0))

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

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

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

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

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

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

    21) Определите, количество чисел K, для которых следующая программа выведет такой же результат, что и для K = 45.

    def F(n):
      if n < 2:
         return 1
      else:
         return 2*F(n-1)+F(n-2)
    
    i = 0
    k = int(input())
    while F(i) < k:
        i += 1
    print(i)
    var i, k: integer;
    function F(n:integer):integer;
    begin
      if n < 2 then
          F:= 1
      else F:= 2*F(n-1) + F(n-2);
    end;
    begin
       i := 0;
       readln(k);
       while F(i) < k do 
          i:= i + 1;
       writeln(i);  
    end.
    #include <iostream>
    using namespace std;
    int F(int n) {
    	if (n < 2)
    		return 1;
    	else
    		return 2*F(n - 1) + F(n - 2);
    }
    void main()
    {
    	int i, k;
    	i = 0;
    	cin >> k;
    	while (F(i) < k)
    		i = i + 1;
    	cout << i << endl;
    }

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

    • Прибавить 1
    • Умножить на 2
    • Умножить на 3

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

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

    (x1 v x2) ∧ (x1 ∧ x2 → x3) ∧ (¬x1 v y1) = 1

    (x2 v x3) ∧ (x2 ∧ x3 → x4) ∧ (¬x2 v y2) = 1

    .................

    (x6 v x7) ∧ (x6 ∧ x7 → x8) ∧ (¬x6 v y6) = 1

    (x7 v x8) ∧ (¬x7 v y7) = 1

    (¬x8 v y8) = 1

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

    24) На обработку поступает последовательность из четырёх неотрицательных целых чисел (некоторые числа могут быть одинаковыми). Нужно написать программу, которая выводит на экран количество делящихся нацело на 4 чисел в исходной последовательности и максимальное делящееся нацело на 4 число. Если делящихся нацело на 4 чисел нет, требуется на экран вывести «NO». Известно, что вводимые числа не превышают 1000. Программист написал программу неправильно.

    n = 4
    count = 0 
    maximum = 1000 
    for i in range (1, n+1):
      x = int(input())
      if x % 4 == 0: 
        count += 1
        if x < maximum:
          maximum = x
    if count > 0: 
      print (count)
      print (maximum) 
    else:  
      print ("NO")
    const n = 4; 
    var i, x: integer; 
    maximum, count: integer; 
    begin   
     count := 0; 
     maximum := 1000; 
     for i := 1 to n do begin
      read(x); 
      if x mod 4 = 0 then begin 
       count := count + 1;
       if x < maximum then
         maximum := x;
      end;
     end;
     if count > 0 then begin
      writeln(count);
      writeln(maximum);
     end
     else  
       writeln('NO');
    end.
    #include <iostream>
    using namespace std;  
    int main() {
      const int n = 4;
      int x, maximum, count;
      count = 0;
      maximum = 1000;
      for (int i = 1; i <= n; i++) {
       cin >> x;
       if (x % 4 == 0) {
         count++;
         if (x < maximum) 
           maximum = x;
       }
      }
      if (count > 0) {
       cout << count << endl;
       cout << maximum << endl;
      }   
      else
       cout << "NO" << endl;
      return 0;
     }

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




    25) Дан целочисленный массив из 1000 элементов. Элементы массива могут принимать положительные значения до 10000 включительно. Опишите на одном из языков программирования алгоритм, который уменьшает все четные значения массива на одно и то же значение, при этом минимальный из них должен стать равным 2.

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

    Например, для массива из шести элементов: 37 86 57 14 45 58

    программа должна вывести числа 37 74 57 2 45 46

    # допускается также  
    # использовать две 
    # целочисленные переменные 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; 
    }



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