Демонстрационный вариант 2006 год

Успеха на экзамене!

Часть А

A1

 

 

Считая, что каждый символ кодируется двумя байтами, оцените информационный объем следующего предложения в кодировке Unicode:

Один пуд – около 16,4 килограмм.

 

1)

32 Кбайта

2)

512 бит

3)

64 бита

4)

32 байта

 

 

Решение: Считаем все символы(буквы, цифры, знаки препинания, пробелы) – получаем 32.

32*2 = 64 байта = 64*8 бит = 512 бит.

Верный ответ 2).

 

A2

 

 

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

 

1)

80

2)

120

3)

112

4)

96

 

Решение: Объём одного символа длиной 5 сигналов равен 5 бит, символа длиной 6 сигналов равен 6 бит, значит общее число символов равно 25 + 26 = 32 + 64 = 96.

Верный ответ 4).

 

 

A3

 

 

Сколько мегабайт информации содержит сообщение объемом 223 бит?

 

1)

1

2)

8

3)

3

4)

32

 

Решение: 223 бит = 220 байт = 1 мегабайт.

Верный ответ 1).

 

A4

 

 

Количество значащих нулей в двоичной записи десятичного числа 126 равно

 

1)

1

2)

2

3)

3

4)

0

 

 

Решение: 126 = 26 + 25 + 24 + 23 + 22 + 21 = 11111102.

Верный ответ 1).

 

A5

 

 

Вычислите сумму чисел x и y, при x = 1D16, y = 728.

Результат представьте в двоичной системе счисления.

 

1)

100011112

2)

11001012

3)

1010112

4)

10101112

 

 

Решение: 1D16  + 728 = 000111012 + 1110102 = 10101112.

Верный ответ 4).

 

A6

 

 

Определите значение переменной с после выполнения фрагмента алгоритма:

Примечание: знаком := обозначена операция присваивания.

 

1)

1

2)

45

3)

55

4)

66

 

Решение: После первого прохода b ¹11 => (c:=0+0 b:=0+1)второго b ¹11(c:=0+1 b:=1+1) - (c:=1+2 b:=2+1) - (c:=3+3 b:=3+1) - (c:=6+4 b:=4+1) - (c:=10+5 b:=5+1) - (c:=21 b:=7) - (c:=28 b:=8) - (c:=36 b:=9) – (c:=45 b:=10) - (c:=55 b:=11).

В последнем случае b = 11, c =55.

Верный ответ 3).

 

 

A7

 

 

Определите значение целочисленных переменных a и b после выполнения фрагмента программы:

 

Бейсик

Паскаль

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

a=2468
b=(a MOD 1000)*10

a=a\1000+b

'\ и MOD — операции, вычисляющие результат деления нацело первого аргумента на второй и остаток от деления соответственно

a:=2468;

b:=(a mod 1000)*10;

a:=a div 1000+b;

{div и mod — операции, вычисляющие результат деления нацело первого аргумента на второй и остаток от деления соответственно}

a:=2468

b:=mod(a, 1000)*10

a:=div(a, 1000)+b
|div и mod — функции, вычисляющие результат деления нацело первого аргумента на второй и остаток от деления соответственно|

 

1)

a = 22,  b = 20

2)

a = 4682,  b = 4680

3)

a = 8246,  b = 246

4)

a = 470,  b = 468

 

 

Решение: a:=2468; b:=(2468 mod 1000)*10 = 468*10 = 4680 => a:=2468 div 1000+4680 = 2+ 4680=4682.

Верный ответ: 2).

 

 

A8

 

 

Значения двумерного массива размера 7´7 задаются с помощью вложенного оператора цикла в представленном фрагменте программы

 

Бейсик

Паскаль

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

FOR n=1 TO 7

FOR k=1 TO 7

B(n, k)=k–n

NEXT k

NEXT n

for n:=1 to 7 do

for k:=1 to 7 do

   B[n, k]:=k–n;

нц для n от 1 до 7

нц для k от 1 до 7

   B[n, k]=k–n

кц

кц

Сколько элементов массива будут иметь положительные значения?

 

1)

49

2)

28

3)

21

4)

7

 

Решение: при n = 1 положительные при k = 2,3,4,5,6,7 – 6

               при n = 2  положительные при k = 3,4,5,6,7 – 5

               при n = 3  положительные при k = 4,5,6,7 – 4

    при n = 4  положительные  при k = 5,6,7 – 3

    при n = 5  положительные  при k = 6,7 – 2

    при n = 6  положительные  при k = 7 – 1

               при n = 7  положительных 0.

Положительные значения будут иметь 1+2+3+4+5+6 = 21.

Верный ответ: 3).

 

A9

 

 

Для какого из указанных значений числа X истинно высказывание:

 

(X>4) \/ ((X>1) ->(X>4))?

 

1)

1

2)

2

3)

3

4)

4

 

Решение: Дизъюнкция истинна, когда истинно хотя бы одно из высказываний.

При X=1

(1>4) – ложно.

((1>1)->(1>4)) импликация истинна.

Значит, дизъюнкция истинна.

Верный ответ 1).

 

 

 A10

 

 

Какое логическое выражение равносильно выражению

¬ (¬A \/ B) \/ ¬C?

 

1)

(A /\ ¬B) \/ ¬C

2)

¬A \/ B \/ ¬C

3)

A \/ ¬B \/ ¬C

4)

(¬A /\ B) \/ ¬C

 

Решение: на основании формулы де Моргана – это формула

 ¬ (¬A \/ B) \/ ¬C = (A /\ ¬B) \/ ¬C.

Верный ответ 1).

 

 

A11

 

 

Символом F обозначено одно из указанных ниже логических выражений от трех аргументов: X, Y, Z.

Дан фрагмент таблицы истинности выражения F:

 

X

Y

Z

F

0

0

0

0

1

1

0

1

1

0

0

1

 

Какое выражение соответствует F?

 

1)

¬X \/ ¬Y \/ ¬Z

2)

X /\ ¬Y /\ ¬Z

3)

X \/ Y \/ Z

4)

X /\ Y /\ Z

Решение:

Проверим первое.

1) ¬0 \/ ¬0\/ ¬0 = 1Ù1Ù1=1 не соответствует F.

Проверим второе

2) 0 /\ ¬0 /\ ¬0=0/\1/\1= 0 соответствует F

 1 /\ ¬1 /\ ¬0 = 1/\0/\1=0 не соответствует F.

Проверим третье

3) 0\/ 0 \/ 0 = 0 соответствует F

    1\/ 1 \/ 0 = 1 соответствует F

    1\/ 0 \/ 0 = 1 соответствует F

Верный ответ 3).

 

A12

 

 

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

 

 

A

B

C

D

Е

A

 

1

4

 

1

B

1

 

 

3

 

C

4

 

 

 

2

D

 

3

 

 

Е

1

 

2

 

 

 

 

1)

2)

3)

4)

 

Решение: AB=1 соответствуют все

 АС = 4 соответствуют все, АЕ = 1 соответствуют 2),3),4) BD =3  соответствует 2)

Остальные проверяем для 2) СЕ=2 соответствует.

 

Верный ответ 2).

 

A13

 

 

Для 5 букв русского алфавита заданы их двоичные коды (для некоторых букв ‑ из двух бит, для некоторых – из трех). Эти  коды представлены в таблице:

 

В

К

А

Р

Д

000

11

01

001

10

 

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

 

1)

110100000100110011

2)

111010000010010011

3)

110100001001100111

4)

110110000100110010

 

Решение: Рассмотрим первое - Первая буква может быть только К – 11, вторая А – 01, третья только В – 000, четвёртая однозначно Р – 001, пятая Р – 001, шестая Д – 10, седьмая

А – 01, для кода 1 бит буквы нет. Ошибка.

Рассмотрим второе -  Первая буква может быть только К – 11, вторая Д – 10, третья только Д – 10, четвёртая В – 000, пятая А – 01, шестая Р – 001, седьмая Р – 001, для кода 1 бит буквы нет. Ошибка.

Рассмотрим третье - Первая буква может быть только К – 11, вторая А – 01, третья  В – 000,

четвёртая А – 01, пятая Р – 001, шестая Д – 10, седьмая А  – 01,  восьмая К – 11. Ошибки нет.

Верный ответ 3).

 

 

 

 

A14

 

 

Для составления цепочек используются бусины, помеченные буквами: M, N, O, P, S.  В середине цепочки стоит одна из бусин M, O, S. На третьем – любая гласная, если первая буква согласная, и любая согласная, если первая гласная. На первом месте – одна из бусин O, P, S, не стоящая в цепочке в середине.

Какая из перечисленных цепочек создана по этому правилу?

 

1)

SMP

2)

MSO

3)

SNO

4)

OSN

Решение:

Для первой буквы подходят варианты 1), 3), 4) Вариант 2) отклоняем сразу.

На третьем гласная, если первая согласная – вариант 3) и любая согласная, если первая гласная вариант 4) – первый вариант исключается.

В середине M, O, S – это соответствует варианту 4).

Венный ответ 4).

 

A15

 

 

В некотором каталоге хранился файл Дневник.txt. После того, как в этом каталоге создали подкаталог и переместили в созданный подкаталог файл Дневник.txt, полное имя файла стало

A:\SCHOOL\USER\TXT\MAY\Дневник.txt. Каково полное имя каталога, в котором хранился файл до перемещения?

 

1)

MAY

2)

A:\SCHOOL\USER\TXT

3)

TXT

4)

A:\SCHOOL\USER\TXT\MAY

 

Решение:

Добавили подкаталог MAY и получили A:\SCHOOL\USER\TXT\MAY\Дневник.txt.

Значит вначале было A:\SCHOOL\USER\TXT.

Верный ответ 2).

 

A16

 

 

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

 

Фамилия

Пол

Математика

Русский язык

Химия

Информатика

Биология

Аганян

ж

82

56

46

32

70

Воронин

м

43

62

45

74

23

Григорчук

м

54

74

68

75

83

Роднина

ж

71

63

56

82

79

Сергеенко

ж

33

25

74

38

46

Черепанова

ж

18

92

83

28

61

 

Сколько записей в данном фрагменте удовлетворяют условию

«Пол=’м’ ИЛИ Химия>Биология»?

 

1)

5

2)

2

3)

3

4)

4

Решение:

Пол=’м= { Воронин, Григорчук}

Химия =   {46,45,68,56,74,83}

Биология={70,23,83,79,46,61}

Химия> Биология ={ Воронин,  Сергеенко,  Черепанова}

Пол=’м’ = { Воронин, Григорчук}

Пол=’м’ ИЛИ Химия>Биология ={ Воронин,  Сергеенко,  Черепанова, Григорчук }.

Верный ответ 4).

 

A17

 

 

Укажите минимальный объем памяти (в килобайтах), достаточный для хранения любого растрового изображения размером 64´64 пикселя, если известно, что в изображении используется палитра из 256 цветов. Саму палитру хранить не нужно.

 

1)

128

2)

2

3)

256

4)

4

 

Решение: Найдём глубину цвета из 256 цветов. 256 = 2I , I = 8.

Найдём объём изображения

Ii = 64*64*8 бит = 32768 бит = 4096 байт =4 килобайт.

Верный ответ 4).

 

A18

 

 

При работе с электронной таблицей в ячейке A1 записана формула
= D1-$D2. Какой вид приобретет формула, после того как ячейку A1 скопируют в ячейку B1?

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

 

1)

= E1-$E2

2)

= E1-$D2

3)

= E2-$D2

4)

= D1-$E2

 

 

 

 

 

Решение: При копировании A1 в B1; D1 меняется на E1 – ссылка относительная.

$D2 меняется на $D2 – ссылка абсолютная.

Верный ответ 2).

 

A19

 

 

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

 

 

А

В

1

=B1+1

1

2

=A1+2

2

3

=B2–1

 

4

=A3

 

 

После выполнения вычислений, была построена диаграмма  по значениям диапазона ячеек A1:A4. Укажите получившуюся диаграмму.

 

1)

2)

3)

4)

 

Решения: Значения A 2,4,1,1

Верный ответ  2).

 

A20

 

 

Исполнитель Черепашка перемещается на экране компьютера, оставляя след в виде линии. В каждый конкретный момент известно положение исполнителя и направление его движения. У исполнителя существуют две команды:

Вперед n, вызывающая передвижение Черепашки на n шагов в направлении движения.

Направо m, вызывающая изменение направления движения на m градусов по часовой стрелке.

(Вместо  n  и  m  должны стоять целые числа).

 

Запись:
Повтори 5 [Команда1 Команда2]
означает, что последовательность команд в квадратных скобках повторится 5 раз.

 

Какое число необходимо записать вместо n в следующем алгоритме:

Повтори 7 [Вперед 40 Направо n],

чтобы на экране появился правильный шестиугольник?

 

1)

30

2)

45

3)

50

4)

60

 

 

Решение:

                             40

                                                       60°

 

 

 

 

 

 

                                                                                            

 

 

 

Правильный шестиугольник получится, если поворачивать вправо на 60°.

Верный ответ 4).

 

Часть B.

 

B1

 

 

 

 

В системе счисления с некоторым основанием число 17 записывается в виде 101. Укажите это основание.

Решение:

 Составим уравнение 1*x2 + 0*x + 1 =17 => x2 = 16 => x=4.

Основание системы счисления 4.

Записать ответ 4.

 

B2

 

 

Укажите значения логических переменных K, L, M, N, при которых логическое выражение

(K \/ M)->(M \/  ¬L \/ N)

ложно.

Ответ запишите в виде строки из четырех символов: значений переменных K, L, M и N (в указанном порядке). Так, например, строка 0101 соответствует тому, что K=0, L=1, M=0, N=1.

 

Решение: Импликация ложна, когда посылка истинна, а следствие ложно.

Дизъюнкция K \/ M истинна, когда истинно хотя бы одно из высказываний, т.е. (K=1; M=0); (K=0; M=1); (K=1;M=1);

Проверим истинность M \/  ¬L \/ N для трёх пар логических переменных.

Для первой пары. Получим О\/  ¬L \/ N . Чтобы высказывание было ложно нужно, ¬L=0 и N=0 =>L=1, N=0.

Получим строчку переменных 1100.

Для второй пары. Получим 1\/  ¬L \/ N .Это высказывание ложным не будет. Вариант не подходит.

Для третьей пары. Получим 1\/  ¬L \/ N. Это высказывание ложным не будет. Вариант не подходит.

 

Записать ответ 1100.

 

 

B3

 

 

Исполнитель Робот действует на клетчатой доске, между соседними клетками которой могут стоять стены. Робот передвигается по клеткам доски  и может выполнять команды 1 (вверх), 2 (вниз), 3 (вправо), 4 (влево), переходя на соседнюю клетку в направлении, указанном в скобках. Если в этом направлении между клетками стоит стена, то Робот разрушается. Робот успешно выполнил программу

 

3233241.

 

Какую последовательность из трех команд должен выполнить Робот, чтобы вернуться в ту клетку, где он был перед началом выполнения программы, и не разрушиться вне зависимости от того, какие стены стоят на поле?

 

Решение: Роботу необходимо вернуться по прежнему маршруту, т.е. заменить низ на верх, вправо на влево и наоборот.

Построим маршрут.

                     3 

                O          2                                              

                              3  А 3                     

                                            2                                                                             

                               1     4                                                                                                                                                      

 

Робот находится в конце маршрута в точке А. Теперь, чтобы вернуться в начало маршрута т.е. точку О за три команды ему необходимо выполнить три команды противоположные 323 – 414.

Записать ответ. 414.

 

 

                     

          B4

 

 

Три школьника, Миша (М), Коля (К) и Сергей (С), остававшиеся в классе на перемене, были вызваны к директору по поводу разбитого в это время окна в кабинете. На вопрос директора о том, кто это сделал, мальчики ответили следующее:

Миша: «Я не бил окно, и Коля тоже…»

Коля: «Миша не разбивал окно, это Сергей разбил футбольным мячом!»

Сергей: «Я не делал этого, стекло разбил Миша».

Стало известно, что один из ребят сказал чистую правду, второй в одной части заявления соврал, а другое его высказывание истинно, а третий оба факта исказил. Зная это, директор смог докопаться до истины.

Кто разбил стекло в классе? В ответе запишите только первую букву имени.

            

 Решение: Попробуем решить методом рассуждений. Разберём высказывание Миши. Пусть он сказал чистую правду. Значит выходит:  Миша на бил окно, Коля не бил окно. Получаем, что окно разбил Сергей. Теперь, если Коля сказал только половину правды, то получим из его высказывания: Сергей разбил стекло – истина, Миша не разбивал окно – ложь, т.е. Миша разбил стекло – истина, но такого быть не может чтобы два мальчика разбили стекло - по условию задачи.  Рассмотрим вариант, Сергей сказал половину правды. Такого тоже не может быть, потому что из его высказывания получим: Я не делал этого – ложь, Миша разбил стекло – истина, т.е. снова Сергей разбил и Миша разбил.

Пусть полную правду сказал Коля: Миша не разбивал, Сергей разбил, но случай с Сергеем уже рассмотрен. Значит полную правду мог сказать только Сергей. Из этого получаем, стекло разбил Миша.

Записать ответ. М.

 

           B5

 

 

 

 

Известно, что длительность непрерывного подключения к сети Интернет с помощью модема для некоторых АТС не превышает 10 минут. Определите максимальный размер файла (в Килобайтах), который может быть передан за время такого подключения, если модем передает информацию в среднем со скоростью 32 Килобит/с? (впишите в бланк только число)  

 

 

Решение: I = 32 Килобит/с*10*60= 19200 Килобит = 19200/8 Килобайт = 2400 Килобайт.

Записать ответ 2400.

 

B6

 

 

Цепочки символов (строки) создаются по следующему правилу.

Первая строка состоит из одного символа – цифры «1».

Каждая из последующих цепочек создается такими действиями: в очередную строку дважды записывается цепочка цифр из предыдущей строки (одна за другой, подряд), а в конец приписывается еще одно число – номер строки по порядку (на i-м шаге дописывается число «i»).

Вот первые 4 строки, созданные по этому правилу:

(1)       1

(2)       112

(3)       1121123

(4)       112112311211234

 

Какая цифра стоит в седьмой строке на 120-м месте (считая слева направо)?

Решение:

В первой 1 цифра

Во второй 1*2+1=3

В третьей 3*2+1=7

В четвёртой 7*2+1=15

В пятой 15*2+1=31

В шестой 31*2+1 = 63

В седьмой 63*2+1=127

Седьмая строка оканчивается 11234567, значит 120 цифра имеет значение 1.

Записать ответ 1.

 

B7

 

 

Доступ к файлу www.txt, находящемуся на сервере ftp.net, осуществляется по протоколу http. В таблице фрагменты адреса файла закодированы буквами от А  до Ж. Запишите последовательность этих букв, кодирующую адрес указанного файла.

 

A

.txt

Б

http

В

/

Г

://

Д

.net

Е

www

Ж

ftp

 

Решение:  Доступ к файлу http:// ftp.net/www.txt

Записать ответ: БГЖДВЕА.

 

B8

 

 

 

 

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

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

 

А

разведение & содержание & меченосцы & сомики 

 

Б

содержание & меченосцы

 

В

(содержание & меченосцы) | сомики

 

Г

содержание & меченосцы & сомики 

 

 

Решение: А(разведение & содержание & меченосцы & сомики ) Г(содержание & меченосцы & сомики )Б(содержание & меченосцы)В((содержание & меченосцы) | сомики).

Записать ответ. АГБВ.

 

Часть С.

C1

 

 

Требовалось написать программу, в которой нужно было проверить, лежит ли число x на числовой оси между числами a и b ("между" понимается в строгом смысле, т.е. случай x=a или x=b недопустим). Числа x, a, b являются натуральными, и известно, что a отлично от b (но неизвестно: a>b или b>a). Входная информация вводится с клавиатуры, а на выходе должно быть сообщение вида "x между a и b" (если это действительно так), в противном случае никакой выходной информации не выдается.

Программист торопился и написал программу некорректно.

 

 

ПРОГРАММА НА ПАСКАЛЕ

ПРОГРАММА НА БЕЙСИКЕ

VAR a,b,x: integer;

        p: integer;

BEGIN

 readln(a,b,x);

 if (a>x) AND (x>b) then

     writeln('x между a,b');

END.

CLS

INPUT a, b, x

IF (a>x) AND (x>b) THEN

         PRINT “x между a, b”

END

 

Последовательно выполните три задания:

1) Приведите пример таких чисел a, b, x, при которых программа работает неправильно.

2) Укажите, как нужно доработать программу, чтобы не было случаев ее неправильной работы. (Это можно сделать несколькими способами, поэтому можно указать любой способ доработки исходной программы).

3) Укажите, как можно доработать программу, соблюдая дополнительное условие: доработанная программа не должна использовать логических операций AND или OR.

 

Элементы ответа:

 

1) Пример: a=1   x=2   b=3

 

2) Возможная доработка:

if a<b then begin p:=a; a:=b; b:=p end;

 if (a>x) AND (x>b) then 

writeln(' x между a,b');

(могут быть и другие правильные способы доработки).

 

3) Возможная доработка без использования логических операций AND, OR:

p:=(x-a)*(x-b);  if p<0 then 

writeln(' x между a,b');

(могут быть и другие способы доработки с соблюдением дополнительного условия).

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

 

 

 

 

C2

 

 

 

Опишите на русском языке или на одном из языков программирования алгоритм поиска второго по величине (т.е. следующего по величине за максимальным) элемента в числовом массиве из 30 различных элементов.

 

Содержание верного ответа и указания по оцениванию

(допускаются иные формулировки ответа, не искажающие его смысла)

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

Указания по оцениванию

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

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

В качестве примера правильного и эффективного алгоритма приведен фрагмент программы:

На языке Паскаль

На языке Бейсик

const N=30;

var a:array[1..N] of real;

    Max1, Max2, i: real;

begin

 Max1:=a[1];

 Max2:=a[1];

 if a[2]>Max1 then Max1:=a[2]

            else Max2:=a[2];

 for i:=3 to N do

  begin

   if a[i]>Max1 then

      begin Max2:=Max1;

            Max1:=a[i];

      end

      else if a[i]>Max2 then

            Max2:=a[i];

  end;

  writeln(Max2);

end.

N=30

DIM i, Max1, Max2, a(N) AS REAL

Max1=a(1)

Max2=a(1)

IF a(2)>Max1 THEN Max1=a(2)

ELSE Max2=a(2)

FOR i = 3 TO N

IF a(i)>Max1 THEN      

                Max2=Max1  

                 Max1=a(i)

              ELSE

              IF a(i)>Max2 THEN

                   Max2=a(i)

              ENDIF

  ENDIF

NEXT i

PRINT Max2

END

 

 

 

 

C3

 

 

Два игрока играют в следующую игру. Перед ними лежат две кучки камней, в первой из которых 5, а во второй – 3  камня.  У каждого игрока неограниченно много камней. Игроки ходят по очереди. Ход состоит в том, что игрок или удваивает число камней в какой-то куче, или добавляет 4 камня в какую-то кучу. Выигрывает игрок, после хода которого в одной из куч становится не менее 22 камней. Кто выигрывает при безошибочной игре обоих игроков – игрок, делающий первый ход, или игрок, делающий второй ход? Как должен ходить выигрывающий  игрок? Ответ обоснуйте.

Содержание верного ответа и указания по оцениванию

(допускаются иные формулировки ответа, не искажающие его смысла)

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

 

Позиция после первого хода

1-й ход второго игрока

Выигрывающий ход первого игрока

Пояснение

 

 

 

 

 

10,6

10,10

 

Первый игрок выиг­ры­­вает после любого от­вета второго игрока, удвоив число камней в самой большой куче

 

 

 

 

5,6

9,6

9,10

 

 -"-

 

 

 

 

 

5,10

9,10 или 10,10

-"-

 

 

 

 

 

5,12

5,24

Выигрыш первого игрока

 

Из таблицы видно, что при первом ходе (5,3)->(5,6) первый игрок выигрывает не позже, чем на третьем ходу при любом ответе второго игрока.

Правильное указание игрока и его ходов со строгим доказательством правильности с помощью или без помощи дерева игры

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

При наличии в представленном решении одного из пунктов:

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

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

Задание не выполнено или в представленном решении полностью отсутствует описание элементов выигрышной стратегии, и отсутствует анализ вариантов первого и второго ходов играющих.

Максимальный балл

 

 

C4

 

 

Вступительные испытания в некоторый вуз состоят из трех экзаменов: математика (максимальный балл – 9), информатика (максимальный балл – 9), литература (максимальный балл – 5). На вход программе подаются сведения о сдаче этих экзаменов абитуриентами. В первой строке вводится количество абитуриентов N, во второй – количество мест K (K < N) на которые эти абитуриенты претендуют. Каждая из следующих N строк имеет следующий формат: <Фамилия> <оценка1> <оценка2> <оценка3>, где <Фамилия> – строка, состоящая не более, чем из 20 символов, оценки – числа от 0 до максимальной оценки по предмету соответственно. (Ноль ставится в случае, если экзамен не сдавался, например, после полученной на предыдущем экзамене двойки. Все баллы, большие 2, считаются удовлетворительными). Пример входных строк:

Иванов 8 9 3

Петров 2 0 0

Требуется написать программу на языке Паскаль или Бейсик, которая определяла бы по имеющимся данным количество абитуриентов, набравших полупроходной балл в данный вуз или сообщала, что такой балл отсутствует. (Полупроходным называется такой балл, что лишь часть абитуриентов, набравших такой балл и не получивших ни одной неудовлетворительной оценки, попадает в K лучших, которые должны быть зачислены на 1 курс) Считается, что абитуриенты, получившие только удовлетворительные оценки, обязательно присутствуют.

 

Содержание верного ответа и указания по оцениванию

(допускаются иные формулировки ответа, не искажающие его смысла)

Баллы

Программа верно читает входные данные, не запоминая их все, а сразу подсчитывая в массиве, хранящем 24 целых числа, количество абитуриентов, набравших тот или иной балл (от 0 до 23). Если при этом абитуриент получил хотя бы одну двойку, то удобно считать, что его общий балл равен 0. Затем вычисляется сумма элементов этого массива, начиная с 23-го, до тех пор пока она не превосходит K. Индекс первого элемента массива, который не войдет в эту сумму и будет искомым полупроходным баллом. Если проходной балл набрали ровно K абитуриентов, то программа сообщает, что полупроходной балл отсутствует. Баллы начисляются только за программу, которая решает задачу хотя бы для частного случая (например, проходной балл набрали строго меньше K абитуриентов).

 

Указания по оцениванию

 

Программа работает верно, т.е. корректно выделяет из входных данных оценки абитуриентов, верно учитывает результаты абитуриентов, получивших двойки, не содержит вложенных циклов (от 1 до N и от 0 до 23). Допускается наличие в тексте программы одной пунктуационной ошибки.

 

4

 

 

Пример правильной и эффективной программы на языке Паскаль:

var m:array[0..23] of integer;

    c:char;

    i, K, N, S, m1, m2, m3:integer;

begin

  readln(N); readln(K);

  for i:=0 to 23 do m[i]:=0;

  for i:=1 to N do

  begin

    repeat

      read(c)

    until c=’ ’; {считана фамилия абитуриента}

    readln(m1, m2, m3);

    if (m1<3)or(m2<3)or(m3<3) then s:=0

    else s:=m1+m2+m3;

    m[s]:=m[s]+1 {учитываем абитуриента в элементе массива, соответствующем его баллам}

  end;

  s:=m[23]; i:=23;

  while s+m[i-1]<=K and

        (i>9) {9 - минимально возможный балл} do

  begin

    i:=i-1;

    s:=s+m[i]

  end;

  if (s<K)and(i>9) then

       writeln(’полупроходной балл набрали’, m[i-1],

               ’ человек’)

  else writeln(’полупроходной балл отсутствует’);

  readln

end.

 

 


 

Пример правильной программы на языке Бейсик:

DIM i, j, k, n, m1, m2, m3, s, m(23) AS INTEGER

DIM ss AS STRING

FOR i = 1 TO 23

    m(i) = 0

NEXT i

INPUT n

INPUT k

FOR j = 1 TO n

LINE INPUT ss

i = 1

c$ = MID$(ss, i, 1)

WHILE NOT (c$ = " ")

 i = i + 1

 c$ = MID$(ss, i, 1)

WEND

ss = MID$(ss, i + 1, 5)

m1 = ASC(MID$(ss, 1, 1)) - ASC("0")

m2 = ASC(MID$(ss, 3, 1)) - ASC("0")

m3 = ASC(MID$(ss, 5, 1)) - ASC("0")

IF (m1 < 3) OR (m2 < 3) OR (m3 < 3) THEN

  s = 1

  ELSE s = m1 + m2 + m3

END IF

m(s) = m(s) + 1

NEXT j

s = m(23): i = 23

WHILE (s + m(i - 1) <= k) AND (i > 9)

 i = i - 1

 s = s + m(i)

WEND

IF (s < k) AND (i > 9) THEN

PRINT "Полупроходной балл набрали"; m(i - 1);” человек”

ELSE PRINT "Полупроходной балл отсутствует"

END IF

END

 

Программа работает верно, но содержит вложенные циклы (oт 0 до 23 и от 1 до N) или несколько операторов IF (по количеству возможных баллов у абитуриента) или оператор CASE, обрабатывающий различные варианты количества баллов абитуриента. Возможно, сохраняет все входные данные в массиве абитуриентов. Допускается наличие от одной до трех различных синтаксических ошибок: пропущен или неверно указан знак пунктуации, неверно написано зарезервированное слово языка программирования, не описана или неверно описана переменная, применяется операция, недопустимая для соответствующего типа данных.

3


 

Программа не учитывает случай, когда ровно K абитуриентов набрали проходной балл или что количество абитуриентов, получивших удовлетворительные оценки, может оказаться меньше K. Возможно, в реализации алгоритма содержатся 1–2 ошибки (используется знак “<” вместо “<=”, “or” вместо “and”, выражение на 1 отличается от верного и т.п.). Допускается наличие от одной до пяти различных синтаксических ошибок.

2

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

1

Задание выполнено неверно

0

Максимальный балл

4

 

 

 

 

 

 

Задания части С выполнены как и в варианте. По остальным при обнаружении ошибки пишите progmat@list.ru

 

 

 

На главную

Используются технологии uCoz