Решение задач части В демоверсии ЕГЭ-2013 по информатике Учитель – Богачёва Г.В. Лицей 144 Санкт-Петербурга
Задача B1 из демоверсии 2013 У исполнителя Арифметик две команды, которым присвоены номера: 1. прибавь 2, 2. умножь на 3. Первая из них увеличивает число на экране на 2, вторая утраивает его. Например, – это программа умножь на 3 прибавь 2 умножь на 3 прибавь 2 прибавь 2, которая преобразует число 1 в число 19. Запишите порядок команд в программе преобразования числа 3 в число 69, содержащей не более 5 команд, указывая лишь номера команд. Если таких программ более одной, то запишите любую из них.
Задача B1 из демоверсии 2013 Решение: Решаем задачу с конца. 69 на 3 делится, значит, последняя команда 2. умножь на 3. 69/3= на 3 не делится, значит, предыдущая команда 1. прибавь 2. Вычитаем 23- 2= 21, делится на 3, значит, предыдущая команда 2. умножь на 3. 21/3 = 7, на 3 не делится, значит, предыдущая команда 1. прибавь 2. Вычитаем 7-2 = 5, на 3 не делится, значит, предыдущая команда 1. прибавь 2. Вычитаем 5-2 = 3, это исходное число. Выписываем номера команд в обратном порядке Аналогично (демоверсия 2012) У исполнителя Утроитель две команды, которым присвоены номера: 1. прибавь 1, 2. умножь на 3. Первая из них увеличивает число на экране на 1, вторая – утраивает его. Запишите порядок команд в программе преобразования числа 1 в число 22, содержащей не более 5 команд, указывая лишь номера команд. (Например, – это программа умножь на 3 прибавь 1 умножь на 3 прибавь 1 прибавь 1, которая преобразует число 1 в 14.) (Если таких программ более одной, то запишите любую из них.) Ответ:
Задача B2 из демоверсии 2013 Определите значение переменной c после выполнения следующего фрагмента программы (записанного ниже на разных языках программирования). Ответ запишите в виде целого числа. Бейсик Паскаль a = 30 b = 14 a = a – 2 * b IF a > b THEN c = b + 2 * a ELSE c = b - 2 * a ENDIF a := 30; b := 14; a := a – 2 * b; if a > b then c := b + 2 * a else c := b - 2 * a; Си Алгоритмический a = 30; b = 14; a = a – 2 * b; if (a > b) c = b + 2 * a; else c = b - 2 * a; a := 30 b := 14 a := a – 2 * b если a > b то c := b + 2 * a иначе c := b - 2 * a все
Задача B2 из демоверсии 2013 Решение: Трассируем программу: Ответ: 10 Номер команды abc
Аналогично (демоверсия 2012) Определите, что будет напечатано в результате работы следующего фрагмента программы: Бейсик Паскаль Dim k, s As Integer s = 0 k = 0 While s < 1024 s = s + 10 k = k + 1 End While Console.Write(k) Var k, s : integer; BEGIN s:=0; k:=0; while s
Задача B3 из демоверсии 2013 Дан фрагмент электронной таблицы: ABC 124 2= (B1 - A1) / 2= 2 - A1/2= (C1-A1)*2 - 4 Какое число должно быть записана в ячейке C1, чтобы построенная после выполнения вычислений диаграмма по значениям диапазона ячеек A2:C2 соответствовала рисунку:
Задача B3 из демоверсии 2013 Решение: Рассчитываем A2 = 1; B2= 1. Анализируем диаграмму Отсюда C2 = 2, значит (C1-A1)*2 - 4 =2; подставляем (С1- 2) *2 – 4 = 2, значит С1= 5 Ответ: 5 C2 =2 B2= 1 A2 = 1
Аналогично (демоверсия 2012) Дан фрагмент электронной таблицы: ABCD = (C1 + A1) / 2= C1 - D1= A1 - D1= B1 / 2 Какое число должно быть записана в ячейке B1, чтобы построенная после выполнения вычислений диаграмма по значениям диапазона ячеек A2:D2 соответствовала рисунку: Ответ: 2
Задача B4 из демоверсии 2013 Азбука Морзе позволяет кодировать символы для сообщений по радиосвязи, задавая комбинацию точек и тире. Сколько различных символов (цифр, букв, знаков пунктуации и т. д.) можно закодировать, используя код азбуки Морзе длиной не менее четырёх и не более пяти сигналов (точек и тире)? Ответ: 48. Решение: Так как по условию задачи сигналов только 2 (точка и тире), то это – двоичная система счисления. Четыре сигнала – 2 4 =16, пять сигналов – 2 5 =32, всего можно закодировать 16+32=48 сигналов Ответ: 48
Аналогично (демоверсия 2012)
Задача B5 из демоверсии 2013 Определите, что будет напечатано в результате выполнения программы (записанной ниже на разных языках программирования). Бейсик Паскаль DIM N, S AS INTEGER N = 0 S = 0 WHILE S
Задача B5 из демоверсии 2013 Решение: ns 00 s
Аналогично (демоверсия 2012) Определите значение переменной c после выполнения следующего фрагмента программы (записанного ниже на разных языках программирования): Бейсик Паскаль a = 40 b = 10 b = - a / 2 * b If a < b Then c = b - a Else c = a - 2 * b End If a := 40; b := 10; b := - a / 2 * b; if a < b then c := b - a else c := a - 2 * b; Си Алгоритмический a = 40; b = 10; b = - a / 2 * b; if (a < b) c = b – a; else c = a - 2 * b; a := 40 b := 10 b := - a / 2 * b если a < b то c := b - a иначе c := a - 2 * b все Ответ: 440
Задача B6 из демоверсии 2013 Алгоритм вычисления значения функции F(n), где n – натуральное число, задан следующими соотношениями: F(1) = 1 F(n) = F(n–1) * n, при n >1 Чему равно значение функции F(5)? В ответе запишите только натуральное число. Решение: F(1) = 1; F(2) = F(1) * 2 =1*2=2; F(3) = F(2) * 3 =2*3=6; F(4) = F(3) * 4 =6*4=24; F(5) = F(4) * 5 =24*5=120; Ответ: 120
Задача B7 из демоверсии 2013 Запись десятичного числа в системах счисления с основаниями 3 и 5 в обоих случаях имеет последней цифрой 0. Какое минимальное натуральное десятичное число удовлетворяет этому требованию? Решение: Так как последняя цифра 0, то при переводе этого числа из 10 с.с. в 3 с.с. и 5 с.с. первый остаток от деления равен 0, т.е. число кратно 3 и 5. (Напоминаю правило перевода - при переводе из 10 с.с. в любую другую делим число (частное) последовательно на основание с.с. (в которую переводим) до тех пор, пока частное не окажется меньше основания с.с. Цифры получившегося числа – остатки от деления, записанные в обратном порядке.) Наименьшее натуральное десятичное число, которое без остатка делится на 3 и на 5, это 15. Ответ: 15 Аналогично (демоверсия 2012) Запись числа в системе счисления с основанием N оканчивается на 1 и содержит 4 цифры. Чему равно основание этой системы счисления N? Ответ: 3
Задача B8 из демоверсии 2013 Бейсик Паскаль DIM X, A, B AS INTEGER INPUT X A=0: B=1 WHILE X > 0 A = A+1 B = B*(X MOD 10) X = X \ 10 WEND 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 10); x:= x div 10 end; writeln(a); write(b); end. Ниже на четырёх языках записан алгоритм. Получив на вход число x, этот алгоритм печатает два числа: a и b. Укажите наименьшее из таких чисел x, при вводе которых алгоритм печатает сначала 2, а потом 21.
Задача B8 из демоверсии 2013 Си Алгоритмический #include void main() { int x, a, b; scanf("%d", &x); a=0; b=1; while (x>0){ a=a+1; b=b*(x%10); x= x/10; } printf("%d\n%d", a, b); } алг нач цел x, a, b ввод x a:=0; b:=1 нц пока x>0 a:=a+1 b:=b*mod(x,10) x:=div(x,10) кц вывод a, нс, b кон
Задача B8 из демоверсии 2013 Решение: Анализируем алгоритм – на экран сначала выведется a = 2 (значит, команды в цикле будут повторены 2 раза), затем b = 21. Команда b := b*(x mod 10) находит произведение b и последней цифры числа x (mod – остаток от деления на 10). Команда x := x div 10 отбрасывает последнюю цифру от числа x (div – деление нацело). Так как цикл повторяется до тех пор, пока x > 0 (то есть выходим из цикла, как только х = 0) и мы знаем, что он будет повторён 2 раза (a = 2), то отсюда x – двузначное число. Множители числа , 7. Наименьшее двузначное число, которое из них можно составить, 37. Ответ: 37
Аналогично (демоверсия 2012) Ниже на 4-х языках записан алгоритм. Получив на вход число x, этот алгоритм печатает два числа L и M. Укажите наибольшее из таких чисел x, при вводе которых алгоритм печатает сначала 3, а потом 7. Бейсик Паскаль DIM X, L, M AS INTEGER INPUT X L=0: M=0 WHILE X > 0 L = L+1 IF M < (X MOD 10) THEN M = X MOD 10 ENDIF X = X \ 10 WEND PRINT L PRINT M var x, L, M: integer; begin readln(x); L := 0; M := 0; while x>0 do begin L := L+1; if M < (x mod 10) then begin M := x mod 10; end; x := x div 10; end; writeln(L); write(M); end.
Си Алгоритмический #include void main() { int x, L, M; scanf("%d", &x); L=0; M=0; while (x>0){ L=L+1; if M < x % 10 { M = x % 10 } x= x/10; } printf("%d\n%d", L, M); } нач цел x, L, M ввод x L := 0; M := 0 нц пока x>0 L := L+1 если M < mod(x,10) то M := mod(x,10) все x := div(x,10) кц вывод L, нс, M кон Ответ: 777
Задача B9 из демоверсии 2013 На рисунке – схема дорог, связывающих города А, Б, В, Г, Д, Е, Ж, И, К,Л. По каждой дороге можно двигаться только в одном направлении, указанном стрелкой. Сколько существует различных путей из города А в город Л?
Задача B9 из демоверсии = 13 Решение: = =8 4 Цифры у каждой вершины показывают количество дорог, которые ведут к этой вершине. Подробнее: из А в Б ведёт одна дорога, пишем 1. Аналогично - из А-Г 1 дорога, из А в В ведут 3 дороги, пишем 3. В пункт Д ведут одна дорога из Б + одна дорога из В, но, так как в В можно попасть тремя дорогами, значит, из А в Д можно проехать = 4 дорогами.
Задача B9 из демоверсии 2013 Если между пунктами одна дорога, то цифра повторяет предыдущую, если дорог несколько, складываем количество дорог, ведущих в каждый предыдущий пункт. Например, из Д в И ведёт одна дорога, но, так как в Д можно попасть 4 путями, то и в И можно приехать 4 дорогами. В Ж можно попасть из Е (1 дорога), и из В (3 дороги), и из Д (4 дороги), значит, в Ж всего ведут 8 дорог. Продолжаем до пункта Л ( К - 1 дорога, Ж – 8 дорог, И - 4 дороги), всего = 13 дорог. Ответ : 13
Аналогично (демоверсия 2012) На рисунке – схема дорог, связывающих города А, Б, В, Г, Д, Е, Ж, И, К. По каждой дороге можно двигаться только в одном направлении, указанном стрелкой. Сколько существует различных путей из города А в город К? Ответ: 13
Задача B10 из демоверсии 2013 Документ объёмом 20 Мбайт можно передать с одного компьютера на другой двумя способами. А. Сжать архиватором, передать архив по каналу связи, распаковать. Б. Передать по каналу связи без использования архиватора. Какой способ быстрее и насколько, если: средняя скорость передачи данных по каналу связи составляет 220 бит в секунду; объём сжатого архиватором документа равен 20% исходного; время, требуемое на сжатие документа, – 5 секунд, на распаковку – 1 секунда?
Задача B10 из демоверсии 2013 В ответе напишите букву А, если быстрее способ А, или Б, если быстрее способ Б. Сразу после буквы напишите число, обозначающее, на сколько секунд один способ быстрее другого. Так, например, если способ Б быстрее способа А на 23 секунды, в ответе нужно написать Б23. Единиц измерения «секунд», «сек.», «с.» к ответу добавлять не нужно. Решение: Рассчитываем объем сжатого архиватором документа, решаем пропорцию: 20 Мб – 100% x Мб – 20% Отсюда x= (20*20)/100 = 400/100= 4 Мб = 4* 2 10 Кбайт = 4*2 20 байт = 4*2 23 бит
Задача B10 из демоверсии 2013 Рассчитываем время на передачу архива по каналу связи: Решаем пропорцию 1 с – 2 20 бит x с – 4*2 23 бит x= 4*2 23 / 2 20 = 2 5 = 32 с Добавляем время на сжатие документа и на распаковку, получаем, что при способе А требуется 32 с + 5 с +1 с = 38 с. Рассчитываем время передачи файла по каналу связи без сжатия (способ Б): 1 с – 2 20 бит x с – 20*2 23 бит Отсюда x= 20*2 23 / 2 20 = 20 * 2 3 =160 с Разница 160 с – 38 с = 122 с Ответ: А122
Аналогично (демоверсия 2012) У Кати есть доступ в Интернет по высокоскоростному одностороннему радиоканалу, обеспечивающему скорость получения информации 2 20 бит в секунду. У Сергея нет скоростного доступа в Интернет, но есть возможность получать информацию от Кати по телефонному каналу со средней скоростью 2 13 бит в секунду. Сергей договорился с Катей, что она скачает для него данные объёмом 9 Мбайт по высокоскоростному каналу и ретранслирует их Сергею по низкоскоростному каналу. Компьютер Кати может начать ретрансляцию данных не раньше, чем им будут получены первые 1024 Кбайт этих данных. Каков минимально возможный промежуток времени (в секундах) с момента начала скачивания Катей данных до полного их получения Сергеем? В ответе укажите только число, слово «секунд» или букву «с» добавлять не нужно. Ответ: 9224
Задача B11 из демоверсии 2013 В терминологии сетей TCP/IP маской сети называется двоичное число, определяющее, какая часть IP-адреса узла сети относится к адресу сети, а какая к адресу самого узла в этой сети. Обычно маска записывается по тем же правилам, что и IP-адрес. Адрес сети получается в результате применения поразрядной конъюнкции к заданному IP-адресу узла и маске. По заданным IP-адресу узла и маске определите адрес сети. IP –адрес узла: Маска: При записи ответа выберите из приведенных в таблице чисел четыре элемента IP-адреса и запишите в нужном порядке соответствующие им буквы, без использования точек. ABCDEFGH
Задача B11 из демоверсии 2013 Пример. Пусть искомый IP-адрес , и дана таблица ABCDEFGH В этом случае правильный ответ будет записан в виде: HBAF Решение: В маске 1 и 2 байт – максимальное число (2 8 =256, возможные значения от 0 до 255), то есть в двоичном коде - все единицы. Так как A & 1 = A, то первые два байта маски сети совпадают с IP-адресом узла. Последний байт адреса сети будет равен 0, так как A & 0 = 0, а последний байт маски равен 0. Осталось найти 3 байт адреса сети. Переводим в 2 с.с. 3 байт из IP-адреса узла =200 8 = Переводим в 2 с.с =300 8 = Поразрядная конъюнкция даёт = = Ответ: HCEA
Аналогично (демоверсия 2012) В терминологии сетей TCP/IP маской сети называется двоичное число, определяющее, какая часть IP-адреса узла сети относится к адресу сети, а какая к адресу самого узла в этой сети. Обычно маска записывается по тем же правилам, что и IP-адрес. Адрес сети получается в результате применения поразрядной конъюнкции к заданному IP-адресу узла и маске. По заданным IP- адресу узла и маске определите адрес сети. IP –адрес узла: Маска: При записи ответа выберите из приведенных в таблице чисел четыре элемента IP-адреса и запишите в нужном порядке соответствующие им буквы. Точки писать не нужно. ABCDEFGH Пример. Пусть искомый IP-адрес , и дана таблица ABCDEFGH В этом случае правильный ответ будет записан в виде: HBAF Ответ: CDEA
Задача B12 из демоверсии 2013 В языке запросов поискового сервера для обозначения логической операции «ИЛИ» используется символ «|», а для логической операции «И» – символ «&». В таблице приведены запросы и количество найденных по ним страниц некоторого сегмента сети Интернет. Запрос Найдено страниц (в тысячах) Фрегат | Эсминец 3400 Фрегат & Эсминец 900 Фрегат 2100 Какое количество страниц (в тысячах) будет найдено по запросу Эсминец? Считается, что все запросы выполнялись практически одновременно, так что набор страниц, содержащих все искомые слова, не изменялся за время выполнения запросов.
Задача B12 из демоверсии 2013 Решение xya Вводим обозначения a = 900 (и фрегат, и эсминец одновременно – по определению конъюнкции) x + a = 2100 (фрегат) По условию задачи x + a + y = 3400 (по запросу «или фрегат, или эсминец, или то и другое одновременно» - по определению дизъюнкции) Подставляем y = 3400, y = 1300 Тогда эсминец y + a = = 2200 Ответ: 2200
Аналогично (демоверсия 2012) В языке запросов поискового сервера для обозначения логической операции «ИЛИ» используется символ «|», а для логической операции «И» – символ «&». В таблице приведены запросы и количество найденных по ним страниц некоторого сегмента сети Интернет. Запрос Найдено страниц (в тысячах) Шахматы | Теннис 7770 Теннис 5500 Шахматы & Теннис 1000 Какое количество страниц (в тысячах) будет найдено по запросу Шахматы? Считается, что все запросы выполнялись практически одновременно, так что набор страниц, содержащих все искомые слова, не изменялся за время выполнения запросов. Ответ: 3270
Задача B13 из демоверсии 2013 У исполнителя Удвоитель две команды, которым присвоены номера: 1. прибавь 1, 2. умножь на 2. Первая из них увеличивает на 1 число на экране, вторая удваивает его. Программа для Удвоителя – это последовательность команд. Сколько есть программ, которые число 3 преобразуют в число 23? Решение:
Задача B13 из демоверсии 2013 Нарисуем частичный граф для решения этой задачи от 3 до 11 (ясно, что начиная с 12, команду 2 применять нельзя – 12*2=24 >23). Используя граф, попробуем проверить следующие программы (* - обозначено любое кол-во команд 1). Каждую программу начинаем проверять с числа 3 (программы 7 и 8 могут быть выполнены только для 3), затем для 4 (* перед программой в этом случае равна одной команде 1), затем для 5 (* перед программой в этом случае равна двум командам 1), и так далее. По графу доводим до числа, удвоение которого приводит к превышению 23, считаем, что далее число 23 достигается повторением команды 1. Считаем количество таких программ, для удобства сводим в таблицу – это поможет не пропустить варианты программ (увеличивается кол-во команд 1 между двумя командами 2).
Задача B13 из демоверсии 2013 Номер ПрограммаЧисло программ 1* * (все команды 1)1 2* 2* (с одной командой 2)9 3*2211*3 4*2121*3 5*2112*2 6*21112*2 7*211112*1 8* *1 Считаем общее кол-во =22 программы Ответ: 22
Задача B14 из демоверсии 2013 Определите, какое число будет напечатано в результате выполнения следующего алгоритма (для Вашего удобства алгоритм представлен на четырех языках): Бейсик Паскаль DIM A, B, T, M, R AS INTEGER A = -20: B = 20 M = A: R = F(A) FOR T = A TO B IF F(T) < R THEN M = T R = F(T) ENDIF NEXT T PRINT M FUNCTION F(x) F = 3*(x-8)*(x-8) END FUNCTION Function F(x:integer):integer; begin F := 3*(x-8)*(x-8) end; begin a := -20; b := 20; M := a; R := F(a); for t := a to b do begin if (F(t)
Задача B14 из демоверсии 2013 Си Алгоритмический #include int F(int x) { return 3*(x-8)*(x-8); } void main() { int a, b, t, M, R; a = -20; b = 20; M = a; R = F(a); for (t=a; t
Задача B14 из демоверсии 2013 Решение: Анализируем алгоритм – аргумент функции меняется от – 20 до 20, в каждой точке с помощью функции определяется значение квадратичной функции (F:= 3*(x-8)*(x-8)), сравнивается с предыдущим значением функции и, если оно оказывается меньше предыдущего значения функции, то в R записывается текущее значение, а в M – значение аргумента. Значит, необходимо определить точку, в которой условие перестаёт выполняться, то есть следующее значение оказывается больше предыдущего. Функция – парабола (F:= 3*(x-8)*(x-8)), анализируем уравнение, минимальное значение при t=8. Ответ: 8
Аналогично (демоверсия 2012) Определите, какое число будет напечатано в результате выполнения следующего алгоритма (для Вашего удобства алгоритм представлен на четырех языках): Бейсик Паскаль DIM A, B, T, M, R AS INTEGER A = -20: B = 20 M = A: R = F(A) FOR T = A TO B IF F(T) < R THEN M = T R = F(T) END IF NEXT T PRINT M FUNCTION F (x) F = 4 * (x - 1) * (x - 3) END FUNCTION var a,b,t,M,R : integer; Function F(x:integer): integer; begin F := 4*(x-1)*(x-3); end; BEGIN a := -20; b := 20; M := a; R := F(a); for t := a to b do begin if (F(t) < R) then begin M := t; R := F(t); end; write (M); END.
Си Алгоритмический int F(int x) { return 4*(x-1)*(x-3); } void main() { int a, b, t, M, R; a = -20; b = 20; M = a; R = F(a); for (t=a; t
Задача B15 из демоверсии 2013 Сколько существует различных наборов значений логических переменных x1, x2, x3, x4, y1, y2 y3, y4, которые удовлетворяют всем перечисленным ниже условиям? (x1 x2) /\ (x2 x3) /\ (x3 x4) = 1 (¬y1 \/ y2) /\ (¬y2 \/ y3) /\ (¬y3 \/ y4) = 1 (y1 x1) /\ (y2 x2) /\ (y3 x3) /\ (y4 x4) = 1 В ответе не нужно перечислять все различные наборы значений переменных x1, x2, x3, x4, y1, y2 y3, y4, при которых выполнена данная система равенств. В качестве ответа Вам нужно указать количество таких наборов.
Задача B15 из демоверсии 2013 Решение: Решаем первое уравнение – так как дана конъюнкция импликаций, то, по определению конъюнкции, каждая из этих импликаций должна быть равна 1. Но, если х 1 = 1, тогда х 2 тоже 1 (если из 1 следует 0, то импликация равна 0), х 3 = 1 и х 4 = 1. Первый набор – Если х 1 = 0, то х 2 может быть или 0, или 1. Второй набор – Третий – 0011, четвертый – 0001, пятый – Переводим второе уравнение (¬y1 \/ y2) /\ (¬y2 \/ y3) /\ (¬y3 \/ y4) = (y1 y2) /\ (y2 y3) /\ (y3 y4). Рассуждая аналогично, получаем 5 наборов решений 2-го уравнения. y1y2y3y
Задача B15 из демоверсии 2013 Анализируем 3-ие уравнение. Так как если из 1 следует 0, то импликация равна 0, то для каждого набора у-ков отмечаем соответствующее количество наборов х. y1y2y3y4 Наборы решений 1-го уравнения, не превращающие 3 уравнение в – 1 набор , 0111 – 2 набора , 0111, 0011 – 3 набора , 0111, 0011, 0001 – 4 набора , 0111, 0011, 0001, наборов Складываем = 15 наборов Ответ: 15 наборов
Аналогично (демоверсия 2012) Сколько различных решений имеет система уравнений ((x1 x2) \/ (x3 x4)) /\ (¬(x1 x2) \/ ¬(x3 x4)) =1 ((x3 x4) \/ (x5 x6)) /\ (¬(x3 x4) \/ ¬(x5 x6)) =1... ((x7 x8) \/ (x9 x10)) /\ (¬(x7 x8) \/ ¬(x9 x10)) =1 где x1, x2,..., x10 – логические переменные? В ответе не нужно перечислять все различные наборы значений x1, x2,..., x10, при которых выполнена данная система равенств. В качестве ответа вам нужно указать количество таких наборов. Ответ: 64
Источники: Демоверсия ЕГЭ по информатике html html Демоверсия ЕГЭ по информатике ege/informatika/721-demo-ege informatika ege/informatika/721-demo-ege informatika Блог