Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:

Егор

.pdf
Скачиваний:
9
Добавлен:
01.03.2016
Размер:
269.65 Кб
Скачать

Образоват ельный порт ал «РЕШУ ЕГЭ» (http://информат ика.решуегэ.рф) 29. C 1 № 5288. Требовалось написат ь программу, при выполнении кот орой с клавиат уры счит ывает ­

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

 

INPUT х

 

IF х<=30 THEN

 

IF х<=2О THEN

 

IF х<=10 THEN

Бейсик

PRINT "не принадлежит "

ELSE

 

PRINT "принадлежит "

 

END IF

 

END IF

 

END IF

 

END

 

var х: real;

 

begin

 

readln(х);

 

if х<=30 then

Паскаль

if x<=20 then

if x<=10 then

 

 

write('не принадлежит ')

 

else

 

write('принадлежит ')

 

end.

 

#include

 

void main()

 

{

 

float x;

Си

scanf("%f", &x);

if (x<=30) if (x<=20)

 

if (x<=10)

 

printf("He принадлежит ");

 

else

 

printf("принадлежит ");

 

}

 

алг

 

нач

 

вещ х

 

ввод х

 

если х<=30 т о

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

если х<=20 т о

если х<=10 т о

язык

вывод ’не принадлежит '

 

иначе

 

вывод 'принадлежит '

 

все

 

все

 

все

 

кон

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

1. Перерисуйт е и заполнит е т аблицу, кот орая показывает , как работ ает программа при аргу­ мент ах, принадлежащих различным област ям (А, В, С, D и Е). Точки, лежащие на границах област ей (т о ест ь, т очки 10, 20, 30 и 40) при заполнении т аблицы не рассмат ривают ся.

 

Условие 1

Условие 2

Условие 3

Программа

Област ь

Област ь

обрабат ывает ся

(x<=30)

(x<=20)

(x<=10)

выведет

 

верно

 

 

 

 

 

 

 

 

 

 

 

A

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

04.05.2014

Ст р. 11 из 13

Образоват ельный порт ал «РЕШУ ЕГЭ» (http://информат ика.решуегэ.рф)

B

C

D

E

В ст олбцах условий укажит е «да», если условие выполнит ся, «нет », если условие не выполнит ся, «—» (прочерк), если условие не будет проверят ься, «не изв.», если программа ведет себя по-разному для разных значений, принадлежащих данной област и. В ст олбце «Программа выведет » укажит е, чт о программа выведет на экран. Если программа ничего не выводит , пост авьт е «—» (прочерк). Если для разных значений, принадлежащих област и, будут выведены разные т екст ы, напишит е «не изв.». В последнем ст олбце укажит е «да» или «нет ».

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

30. C 2 № 5469. Дан целочисленный массив из 20 элемент ов. Элемент ы массива могут принимат ь целые значения от -1000 до 1000 включит ельно. Опишит е на ест ест венном языке или на одном из языков программирования алгорит м, позволяющий найт и и вывест и минимальное значение среди по­ ложит ельных элемент ов массива, не крат ных 6. Если в исходном массиве нет элемент а, значение ко т орого положит ельно и не делит ся на 6, т о вывест и сообщение «Не найдено».

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

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

04.05.2014

Ст р. 12 из 13

Образоват ельный порт ал «РЕШУ ЕГЭ» (http://информат ика.решуегэ.рф) 31. C 3 № 6937. Два игрока, Пет я и Ваня, играют в следующую игру. Перед игроками лежит куча кам

ней. Игроки ходят по очереди, первый ход делает Пет я. За один ход игрок может добавит ь в кучу один или два камня или увеличит ь количест во камней в куче в два раза. Например, имея кучу из 15 камней, за один ход можно получит ь кучу из 16, 17 или 30 камней. У каждого игрока, чт обы делат ь ходы, ест ь неограниченное количест во камней. Игра завершает ся в т от момент , когда количест во камней в куче ст ановит ся не менее 47. Победит елем счит ает ся игрок, сделавший последний ход, т о ест ь первым получивший кучу, в кот орой будет 47 или больше камней. В начальный момент в куче было S камней, 1 ≤ S ≤ 46.

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

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

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

ходе Пет и Ваня может выиграт ь своим первым ходом. Опишит е выигрышную ст рат егию Вани.

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

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

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

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

32. C 4 № 5791. По каналу связи передаёт ся последоват ельност ь положит ельных целых чисел, все числа не превышают 1000. Количест во чисел извест но, но может быт ь очень велико. Зат ем пере­ даёт ся конт рольное значение последоват ельност и — наибольшее число R, удовлет воряющее следу­ ющим условиям:

1 ) R — произведение двух различных переданных элемент ов последоват ельност и («различные» означает , чт о не рассмат ривают ся квадрат ы переданных чисел, произведения различных элемент ов последоват ельност и, равных по величине, допускают ся);

2) R делит ся на 10.

Если т акого числа R нет , т о конт рольное значение полагает ся равным 0. В результ ат е помех при передаче как сами числа, т ак и конт рольное значение могут быт ь искажены.

Напишит е эффект ивную, в т ом числе по используемой памят и, программу (укажит е используемую версию языка программирования, например, Borland Pascal 7.0), кот орая будет проверят ь правиль­ ност ь конт рольного значения. Программа должна напечат ат ь от чёт по следующей форме:

Вычисленное конт рольное значение: ...

Конт роль пройден (или — Конт роль не пройден)

Перед т екст ом программы крат ко опишит е используемый Вами алгорит м решения.

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

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

6

95

17

10

102

957

95

9690

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

Вычисленное конт рольное значение: 9690 Конт роль пройден

04.05.2014

Ст р. 13 из 13