СДАМ ГИА: РЕШУ ЕГЭ
Образовательный портал для подготовки к экзаменам
Информатика
≡ информатика
сайты - меню - вход - новости




Вариант № 4433633

При выполнении заданий с кратким ответом впишите в поле для ответа цифру, которая соответствует номеру правильного ответа, или число, слово, последовательность букв (слов) или цифр. Ответ следует записывать без пробелов и каких-либо дополнительных символов. Дробную часть отделяйте от целой десятичной запятой. Единицы измерений писать не нужно.


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


Версия для печати и копирования в MS Word
1
Задание 1 № 105

Переведите число В0С16 в двоичную систему счисления.


Ответ:

2
Задание 2 № 15970

Логическая функция F задаётся выражением (x ∧ ¬y) ∨ (yz ) ∨ w.

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

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

 

Переменная 1Переменная 2Переменная 3Переменная 4Функция
????????????F
10
10000
1100

 

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

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

 

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

 

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


Ответ:

3
Задание 3 № 5825

Между населёнными пунктами А, В, С, D, Е, F построены дороги, протяжённость которых приведена в таблице. (Отсутствие числа в таблице означает, что прямой дороги между пунктами нет.)

 

ABCDEF
A24620
B25
C43
D653412
E46
F20126

 

Определите длину кратчайшего пути между пунктами А и F (при условии, что передвигаться можно только по построенным дорогам).

 


Ответ:

4
Задание 4 № 4679

В фрагменте базы данных представлены сведения о родственных отношениях. На основании приведённых данных определите, сколько всего внуков и внучек есть у Карпец Д. К.

 

Таблица 1
IDФамилия_И.О.Пол
866Карпец Д.К.Ж
867Коротич Б.Ф.М
879Лемешко В.А.Ж
885Месхи К.Г.М
900Сердюк Л.А.Ж
904Петрик А.И.М
911Коротич А.Б.Ж
932Петрик П.А.Ж
938Коротич И.Б.М
949Фоменко Г.Р.Ж
970Сердюк А.П.М
995Кортич Т.И.Ж
1017Кортич П.И.М
1026Мухина Р.Г.Ж
1041Гейко М.А.Ж
1056Сердюк П.А.М

Таблица 2
ID_РодителяID_Ребенка
866911
866938
867911
867938
911879
9111041
904900
938995
9381017
949995
9491017
970879
9701041
904932
1026900
1026932


Ответ:

5
Задание 5 № 14264

По каналу связи передаются сообщения, содержащие только четыре буквы: М, О, Р, Е; для передачи используется двоичный код, удовлетворяющий условию Фано. Для букв О, Р, Е используются такие кодовые слова: О: 111, Р: 0, Е: 100.

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

Примечание. Условие Фано означает, что ни одно кодовое слово не является началом другого кодового слова.


Ответ:

6
Задание 6 № 15818

Автомат обрабатывает натуральное число N по следующему алгоритму:

1. Строится двоичная запись числа N.

2. Складываются все цифры полученной двоичной записи. В конец записи (справа) дописывается остаток от деления суммы на 2.

3. Предыдущий пункт повторяется для записи с добавленной цифрой.

4. Результат переводится в десятичную систему и выводится на экран.

Пример. Дано число N = 13. Алгоритм работает следующим образом:

1. Двоичная запись числа N: 1101.

2. Сумма цифр двоичной записи 3, остаток от деления на 2 равен 1, новая запись 11011.

3. Сумма цифр полученной записи 4, остаток от деления на 2 равен 0, новая запись 110110.

4. На экран выводится число 54.

Какое наименьшее число, большее 93, может появиться на экране в результате работы автомата?


Ответ:

7
Задание 7 № 3493

В 2000 году в РФ создано 7 федеральных округов. Используя представленную таблицу укажите номер округа с наименьшей плотностью населения.

 

НазваниеСоставПлощадь
(тыс.км2)
Население
(2002 г.)
1. Северо-Западный11 регионов −
субъектов РФ,
центр — г. Санкт-Петербург
1677,914158
2. Центральный18 регионов −
субъектов РФ,
центр — г. Москва
650,736482
3. Приволжский15 регионов −
субъектов РФ,
центр — г. Нижний Новгород
103831642
4. Южный13 регионов −
субъектов РФ,
центр — г. Ростов-на-Дону
589,221471
5. Уральский6 регионов −
субъектов РФ,
центр — г. Екатеринбург
1788,912520
6. Сибирский16 регионов −
субъектов РФ,
центр — г. Новосибирск
5114,820542
7. Дальневосточный10 регионов −
субъектов РФ,
центр — г. Хабаровск
6515,97038

Ответ:

8
Задание 8 № 10409

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

 

БейсикPython

DIM S, N AS INTEGER

S = 0

N = 0

WHILE S < 123

  S = S + 12

  N = N + 2

WEND

PRINT N

s = 0

n = 0

while s < 123:

  s = s + 12

  n = n + 2

print(n)

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

var s, n: integer;

begin

  s := 0;

  n := 0;

  while s < 123 do

  begin

    s := s + 12;

    n := n + 2

  end;

  writeln(n)

end.

алг

нач

  цел n, s

  n := 0

  s := 0

  нц пока s < 123

    s := s + 12

    n := n + 2

  кц

  вывод n

кон

Си++

#include <iostream>

using namespace std;

int main()

{

  int s = 0, n = 0;

  while (s < 123) {

    s = s + 12;

    n = n + 2;

  }

  cout « n « endl;

  return 0;

}

 


Ответ:

9
Задание 9 № 6193

Документ объёмом 30 Мбайт можно передать с одного компьютера на другой двумя способами.

 

А. Сжать архиватором, передать архив по каналу связи, распаковать.

Б. Передать по каналу связи без использования архиватора.

 

Какой способ быстрее и насколько, если:

 ·  средняя скорость передачи данных по каналу связи составляет 220 бит в секунду;

 ·  объём сжатого архиватором документа равен 30% исходного;

 ·  время, требуемое на сжатие документа, — 18 секунд, на распаковку — 2 секунды?

 

В ответе напишите букву А, если быстрее способ А, или Б, если быстрее способ Б. Сразу после буквы напишите число, обозначающее, на сколько секунд один способ быстрее другого. Так, например, если способ Б быстрее способа А на 23 секунды, в ответе нужно написать Б23. Единицы измерения «секунд», «сек.», «с.» к ответу добавлять не нужно.


Ответ:

10
Задание 10 № 4556

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


Ответ:

11
Задание 11 № 9195

Ниже на пяти языках программирования записан рекурсивный алгоритм F.

 

 

БейсикPython

FUNCTION F(n)

    IF n > 2 THEN

        F = F(n-1)+F(n-2)+F(n-3)

    ELSE

        F = n

    END IF

END FUNCTION

def F(n):

    if n > 2:

        return F(n-1)+F(n-2)+F(n-3)

    else:

        return n

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

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

нач

    если n > 2

    то

        знач:=F(n-1)+F(n-2)+F(n-3)

    иначе

        знач := n

    все

кон

function F(n: integer): integer;

begin

    if n > 2 then

        F := F(n-1)+F(n-2)+F(n-3)

    else

        F := n;

end;

Си

int F(int n)

{

    if (n > 2)

        return F(n-1)+F(n-2)+F(n-3);

    else return n;

}

 

 

Чему будет равно значение, вычисленное алгоритмом при выполнении вызова F(5)?


Ответ:

12
Задание 12 № 5367

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

 

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

Маска: 255.255.224.0

 

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

 

ABCDEFGH
064128192194208224255

 

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

 

ABCDEFGH
1281682558127017192

 

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


Ответ:

13
Задание 13 № 13409

При регистрации в компьютерной системе каждому пользователю выдаётся пароль, состоящий из 15 символов и содержащий только символы из 8-символьного набора: А, В, C, D, Е, F, G, H. В базе данных для хранения сведений о каждом пользователе отведено одинаковое минимально возможное целое число байт. При этом используют посимвольное кодирование паролей, все символы кодируют одинаковым минимально возможным количеством бит. Кроме собственно пароля для каждого пользователя в системе хранятся дополнительные сведения, для чего выделено целое число байт, одно и то же для всех пользователей. Для хранения сведений о 20 пользователях потребовалось 320 байт. Сколько байт выделено для хранения дополнительных сведений об одном пользователе? В ответе запишите только целое число — количество байт.


Ответ:

14
Задание 14 № 11243

Исполнитель Редактор получает на вход строку цифр и преобразовывает её. Редактор может выполнять две команды, в обеих командах v и w обозначают цепочки цифр.

 

А) заменить (v, w).

Эта команда заменяет в строке первое слева вхождение цепочки v на цепочку w. Например, выполнение команды

заменить (111, 27)

преобразует строку 05111150 в строку 0527150.

Если в строке нет вхождений цепочки v, то выполнение команды заменить (v, w) не меняет эту строку.

Б) нашлось (v).

Эта команда проверяет, встречается ли цепочка v в строке исполнителя Редактор. Если она встречается, то команда возвращает логическое значение «истина», в противном случае возвращает значение «ложь». Строка исполнителя при этом не изменяется.

  Цикл

  ПОКА условие

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

  КОНЕЦ ПОКА

  выполняется, пока условие истинно.

  В конструкции

  ЕСЛИ условие

      ТО команда1

      ИНАЧЕ команда2

  КОНЕЦ ЕСЛИ

  выполняется команда1 (если условие истинно) или команда2 (если условие ложно).

 

Ниже приведена программа для исполнителя Редактор.

 

НАЧАЛО

  ПОКА нашлось (19) ИЛИ нашлось (299) ИЛИ нашлось (3999)

    заменить (19, 2)

    заменить (299, 3)

    заменить (3999, 1)

  КОНЕЦ ПОКА

КОНЕЦ

 

На вход этой программе подаётся строка длины 99, состоящая из цифры 1, за которой следуют 98 идущих подряд цифр 9. Какая строка получится в результате применения программы к этой строке? В ответе запишите полученную строку.


Ответ:

15
Задание 15 № 11271

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

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

 


Ответ:

16
Задание 16 № 2308

Укажите через запятую в порядке возрастания все десятичные числа, не превосходящие 30, запись которых в системе счисления с основанием 5 начинается на 3?


Ответ:

17
Задание 17 № 4984

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

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

 

ЗапросНайдено страниц
(в тысячах)
Москва & (Париж | Лондон)427
Москва & Париж222
Москва & Париж & Лондон50

 

Какое количество страниц (в тысячах) будет найдено по запросу Москва & Лондон?

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


Ответ:

18
Задание 18 № 9653

На числовой прямой даны два отрезка: P = [10, 29] и Q = [13, 18].

Укажите наибольшую возможную длину отрезка A, для которого выражение

 

((xA) → (xP)) ∨ (xQ)

 

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


Ответ:

19
Задание 19 № 11275

В программе используется одномерный целочисленный массив A с индексами от 0 до 10. Значения элементов равны 4, 3, 6, 8, 4, 8, 2, 10, 9, 14, 4 соответственно, т. е. A[0] = 4, A[1] = 3 и т. д. Определите значение переменной c после выполнения следующего фрагмента программы (записанного ниже на пяти языках программирования).

 

БейсикPython

c = 0

FOR i = 1 TO 9

  IF A(i) = A(0) THEN

    c = c + 1

    t = A(i+1)

    A(i+1) = A(i)

    A(i) = t

  END IF

NEXT i

c = 0

for i in range(1,10):

  if A[i] == A[0]:

    c = c + 1

    t = A[i+1]

    A[i+1] = A[i]

    A[i] = t

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

c := 0

нц для i от 1 до 9

  если A[i] = A[0] то

    c := c + 1

    t := A[i+1]

    A[i+1] := A[i]

    A[i] := t

  все

кц

c := 0;

for i := 1 to 9 do begin

  if A[i] = A[0] then begin

    c := c + 1;

    t := A[i+1];

    A[i+1] := A[i];

    A[i] := t;

  end;

end;

Си++

c = 0;

for (i = 1; i < 10; i++) {

  if (A[i] == A[0]) {

    c++;

    t = A[i+1];

    A[i+1] = A[i];

    A[i] = t;

  }

}

 


Ответ:

20
Задание 20 № 7677

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

 

БейсикPython

DIM X, A, B AS INTEGER

INPUT X

A = 0: B = 0

WHILE X > 0

    A = A+1

    B = B + (X MOD 100)

    X = X/100

WEND

PRINT A

PRINT B

x = int(input())

a, b = 0, 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.

алг

нач

цел x, a, b

ввод x

a:=0; b:=0

нц пока x > 0

    a := a+1

    b := b+mod(x,100)

    x := div(x,100)

кц

вывод a, нс, b

кон

Си++

#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%100);

        x = x/100;

    }

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

}

 


Ответ:

21
Задание 21 № 5370

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

 

 

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

DIM A, B, T, M, R AS INTEGER

A = -10: B = 27

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

FUNCTION F(x)

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

END FUNCTION

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

    Function

    F(x:integer):integer;

        begin

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

        end;

begin

    a := -10; b := 27;

    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)

end.

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

#include <iostream>

using namespace std;

int F(int x)

{

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

}

void main()

{

    int a, b, t, M, R;

    a = -10; b = 27;

    M = a; R = F(a);

    for (t = a; t <= b; t++) {

        if (F(t) > R) {

            M = t; R = F(t);

        }

    }

    cout « M « endl;

}

алг

нач

цел a, b, t, M, R

a := -10; b := 27

M := a; R := F(a)

нц для t от a до b

если F(t) > R

то M := t; R := F(t)

все

кц

вывод M

кон

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

нач

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

кон

Python

def f(x):

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

a = -10

b = 27

M = a

R = f(a)

for t in range(a, b+1):

    if (f(t) > R):

        M = t

        R = f(t);

print(M)

 


Ответ:

22
Задания Д22 № 4590

Определите значение переменной c после выполнения следующего фрагмента программы
(записанного ниже на разных языках программирования):

 

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

a = 60

b = 20

a = a / b * 2

IF a > b THEN

    c = a - 4 * b

ELSE

    c = a + 4 * b

ENDIF

a : = 60;

b : = 20;

a : = a / b * 2;

if a > b then

c : = a - 4 * b

else

c := a + 4 * b;

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

a = 60;

b = 20;

a = a / b * 2;

if (a > b)

    c = a - 4 * b;

else

    c = a + 4 * b;

a : = 60

b : = 20

a : = a / b * 2

если a > b

    то c : = a - 4 * b

иначе c : = a + 4 * b

все

Python

a = 60

b = 20

a = a / b * 2

if a > b:

    c = a - 4 * b

else:

    c = a + 4 * b

 


Ответ:

23
Задание 23 № 9207

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

(x1 → x2) ∧ (x2 → x3) ∧ (x3 → x4) = 1

(y1 → y2) ∧ (y2 → y3) ∧ (y3 → y4) = 1

(z1 → z2) ∧ (z2→ z3) ∧ (z3 → z4) = 1

    x4 ∧ y4 ∧ z4 = 0

В ответе не нужно перечислять все различные наборы значений переменных x1, ..., x4, y1, ..., y4, z1, ..., z4, при которых выполнена данная система равенств.

В качестве ответа Вам нужно указать количество таких наборов.


Ответ:

24
Задание 24 № 5884

Требовалось написать программу, при выполнении которой с клавиатуры считывается натуральное число N, не превосходящее 109, и выводится минимальная цифра этого числа. Программист торопился и написал программу неправильно. (Ниже для Вашего удобства программа представлена на четырёх языках программирования.)

 

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

DIM N AS LONG

INPUT N

min_digit = 9

WHILE N >= 10

    digit = N MOD 10

    IF digit < min_digit THEN

        digit = min_digit

    END IF

    N = N \ 10

WEND

PRINT min_digit

END

var N: longint;

    digit, min_digit: integer;

begin

    readln(N);

    min_digit := 9;

    while N >= 10 do

    begin

        digit := N mod 10;

        if digit < min_digit then

            digit := min_digit;

        N := N div 10;

    end;

    writeln(min_digit);

end.

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

#include <iostream>

using namespace std;

int main()

{

    long int N;

    int digit, min_digit;

    cin >> N;

    min_digit = 9;

    while (N >= 10)

    {

        digit = N % 10;

        if (digit < min_digit)

            digit = min_digit;

        N = N / 10;

    }

    cout << min_digit << endl;

}

алг

нач

    цел N, digit, min_digit

    ввод N

    min_digit := 9

    нц пока N >= 10

        digit := mod(N, 10)

        если digit < min_digit то

            digit := min_digit

        все

        N := div(N, 10)

    кц

    вывод min_digit

кон

Python

n = int(input())

min_digit = 9

while n >= 10:

    digit = N % 10

    if digit < min_digit:

        digit = min_digit

    N //= 10

print(min_digit)

 

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

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

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

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

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

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


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

25
Задание 25 № 11254

Дан массив, содержащий 2016 положительных целых чисел, не превышающих 1000. Необходимо найти и вывести максимальный из тех элементов этого массива, чётность которых совпадает с чётностью произведения всех элементов.

Например, в массиве из шести элементов, равных соответственно 2, 3, 1, 5, 6, 4, произведение всех элементов чётно, значит, ответом будет максимальный чётный элемент, то есть 6.

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

 

 

БейсикPython

CONST N=2016

DIM A(N) AS INTEGER

DIM I, M, K AS INTEGER

FOR I = 1 TO N

INPUT A(I)

NEXT I

END

# допускается также использо-

# вание целочисленных

# переменных m, k

a = []

N = 2016

for i in range(0, N):

a.append(int(input()))

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

алг

нач

    цел N=2016

    целтаб a[1:N]

    цел i, m, k

    нц для i от 1 до N

        ввод a[i]

    кц

    …

кон

const

    N=2016;

var

    a: array [1..N] of integer;

    i, m, k: integer;

begin

    for i:=1 to N do

        readln(a[i]);

    …

end.

Си++

#include <iostream>

using namespace std;

#define N 2016

int main(){

    int a[N];

    int i, m, k;

    for (i=0; i        cin >> a[i];

    …

    return 0;

}

 

 

В качестве ответа Вам необходимо привести фрагмент программы, который должен находиться на месте многоточия. Вы можете записать решение также на другом языке программирования (укажите название и используемую версию языка программирования, например Free Pascal 2.4). В этом случае Вы должны использовать те же самые исходные данные и переменные, какие были предложены в условии.


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

26
Задание 26 № 6970

Два игрока, Петя и Ваня, играют в следующую игру. Перед игроками лежит куча камней. Игроки ходят по очереди, первый ход делает Петя. За один ход игрок может добавить в кучу один или пять камней или увеличить количество камней в куче в три раза. Например, имея кучу из 15 камней, за один ход можно получить кучу из 16, 20 или 45 камней. У каждого игрока, чтобы делать ходы, есть неограниченное количество камней.

Игра завершается в тот момент, когда количество камней в куче становится не менее 41.

Победителем считается игрок, сделавший последний ход, то есть первым получивший кучу, в которой будет 41 или больше камней. В начальный момент в куче было S камней; 1 ≤ S ≤ 40.

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

встретиться при различной игре противника.

Выполните следующие задания. Во всех случаях обосновывайте свой ответ.

Задание 1.

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

б) Укажите такое значение S, при котором Петя не может выиграть за один ход, но при любом ходе Пети Ваня может выиграть своим первым ходом. Опишите выигрышную стратегию Вани.

Задание 2.

Укажите два таких значения S, при которых у Пети есть выигрышная

стратегия, причём одновременно выполняются два условия:

- Петя не может выиграть за один ход;

- Петя может выиграть своим вторым ходом независимо от того, как будет ходить Ваня.

Для каждого указанного значения S опишите выигрышную стратегию Пети.

Задание 3.

Укажите значение S, при котором одновременно выполняются два условия:

- у Вани есть выигрышная стратегия, позволяющая ему выиграть первым или вторым ходом при любой игре Пети;

- у Вани нет стратегии, которая позволит ему гарантированно выиграть первым ходом.

Для указанного значения S опишите выигрышную стратегию Вани. Постройте дерево всех партий, возможных при этой выигрышной стратегии Вани (в виде рисунка или таблицы). На рёбрах дерева указывайте, кто делает ход, в узлах — количество камней в позиции.


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

27
Задание 27 № 6202

По каналу связи передаются данные в виде последовательности положительных целых чисел. Количество чисел заранее неизвестно, но не менее двух, признаком конца данных считается число 0. После данных передаётся контрольное значение. Оно равно такому максимально возможному произведению двух чисел из переданного набора, которое делится на 7, но не делится на 49. Если такое произведение получить нельзя, контрольное значение считается равным 1.

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

 

Вам предлагаются два задания, связанные с этой задачей: задание А и задание Б. Вы можете решать оба задания А и Б или одно из них по своему выбору.

Итоговая оценка выставляется как максимальная из оценок за задания А и Б. Если решение одного из заданий не представлено, то считается, что оценка за это задание составляет 0 баллов.

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

 

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

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

Максимальная оценка за выполнение задания А – 2 балла.

Б. Напишите программу для решения поставленной задачи, которая будет эффективна как по времени, так и по памяти (или хотя бы по одной из этих характеристик).

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

 

Описание входных данных.

 

В каждой строке исходных данных содержится одно целое число. Сначала идут строки с основными данными — положительными числами, затем число 0 (признак окончания данных), в последней строке — контрольное значение.

 

Программа должна вывести отчёт по форме, приведённой ниже в примере.

 

Пример входных данных:

 

6

7

8

9

0

64

 

Пример выходных данных для приведённого выше примера входных данных:

 

Введено чисел: 4

Контрольное значение: 64

Вычисленное значение: 63

Значения не совпали


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