sotrud.ru   1 ... 4 5 6 7 8


Демонстрационный вариант ЕГЭ 2011 г.   ИНФОРМАТИКА и ИКТ, 11 класс. 

(2011 - 23 / 33)
Демонстрационный вариант ЕГЭ 2011 г.   ИНФОРМАТИКА и ИКТ, 11 класс. 
(2011 - 24 / 33) 
 
 
 
 
Указания по оцениванию 
Баллы
 
Содержание верного ответа 
Обратите  внимание!  В  задаче  требовалось  выполнить  три 
 
(допускаются иные формулировки ответа, не искажающие его смысл) 
действия:  указать  пример  входных  данных,  при  которых 
Элементы ответа: 
программа работает неверно, и исправить две ошибки: 
 
1) Пример: x=2, y=2 (Любая пара (x,y), для которой выполняется: y>x или 
1.  Неправильное  использование  условного  оператора,  в 
y>–x.) 
результате  чего  при  невыполнении  первого,  второго  или 
 
2)  Возможная  доработка  (Паскаль,  разбиение  области  на  две  части 
третьего  условия  программа  не  выдавала  ничего  (отсутствуют 
прямой x=0): 
случаи ELSE). 
if (y>=x*x-2) and (y<=x) and (x>=0) or (x<=0) and 
2.  Приведенным  трем  ограничениям  не  удовлетворяют  точки 
(y<=-x) and (y>=x*x-2) then 
плоскости, у которых (y>–x) и (y≥x2–2) и (y≤x), а также точки, у 
  write('принадлежит') 
которых (y>x) и (y≥x2–2) и (y≤–x). 
 else 
Правильно  выполнены  все  три  действия.  Исправлены  обе 

  write('не принадлежит') 
ошибки.  
Возможная доработка (Си, разбиение на две пересекающиеся области): 
В  работе  (во  фрагментах  программ)  допускается  наличие 
if (y>=x*x-2 && (y<=x || y<=-x)) 
отдельных  синтаксических  ошибок,  не  искажающих  замысла 
  printf("принадлежит"); 
автора решения. 
else 
1. Правильно выполнены два действия из трех (исправлены обе 

  printf("не принадлежит"); 
ошибки,  но  не  указан/неправильно  указан  пример  требуемых 
 
Возможная доработка (Бейсик, отбрасывание части от большей области, 

входных  данных,  либо  правильно  указан  пример  входных 

используются вложенные условия): 
данных,  программа  правильно  работает  при  большем  числе 
IF y >= x * x - 2 THEN 
случаев, чем исходная, но не при всех). 
 IF NOT (y > x AND y > -x) THEN 
Например,  выдает  «не  принадлежит»  и  для  всех  точек,  у 
  PRINT "принадлежит" 
которых (y>x) и (y>–x). 
 ELSE 
При  этом  не  допускается,  чтобы  программа  неправильно 
  PRINT "не принадлежит" 
работала  при  тех  входных  данных,  при  которых  раньше 
 ENDIF 
работала правильно. ИСКЛЮЧЕНИЕ! При написании операций 
ELSE 
сравнения  допускается  одно  неправильное  использование 
 PRINT "не принадлежит" 
строгих/нестрогих  неравенств  (считается  несущественной 
ENDIF 
ошибкой,  погрешностью  записи).  Например,  вместо  (y<=x) 
Обратите  внимание,  что  вариантов  доработки  может  быть  достаточно 
используется  (y много, но обычно правильное описание заштрихованных областей в них 
неверно работать при тех входных данных, при которых раньше 
представляет собой  
работала правильно). 
или  объединение  двух  (или  более)  возможно  пересекающихся 
2. Или выполнены все три действия, но при этом в логическом 
областей,  
выражении  неверно  учтены  приоритеты  логических  операций 
или исключение одной области из другой. 
(не  расставлены  или  неправильно  расставлены  скобки  в 
При  разделении  области  вдоль  какой-либо  линии  точки,  которые  лежат 
выражениях). 
на этой линии внутри области, могут быть причислены к одной части, к 
 
другой или к обеим (то есть, например, в приведенном решении на языке 
Паскаль одно из условий (x>=0) или (x<=0) может быть строгим). 
Могут быть и другие верные способы доработки. 
 
© 2011 Федеральная служба по надзору в сфере образования и науки РФ 

© 2011 Федеральная служба по надзору в сфере образования и науки РФ 


Демонстрационный вариант ЕГЭ 2011 г.   ИНФОРМАТИКА и ИКТ, 11 класс. 
(2011 - 25 / 33)
Демонстрационный вариант ЕГЭ 2011 г.   ИНФОРМАТИКА и ИКТ, 11 класс. 
(2011 - 26 / 33) 
 
 
 
В  качестве  ответа  Вам  необходимо  привести  фрагмент  программы  (или 
Правильно выполнено только одно действие из трех. 

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

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

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

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

x:=0; 
X = 0 
 
y:=0; 
Y = 0 
 
 
 
 

C2 

for i:=1 to N do  
FOR I = 1 TO N 
if (a[i] mod 2=1) then begin 
IF A(I) MOD 2 = 1 THEN  
 
Дан  целочисленный  массив  из 30 элементов.  Элементы  массива  могут 
принимать значения от 0 до 1000. Опишите на русском языке или на одном 
  x:=x+a[i]; 
X = X + A(I) 
из  языков  программирования  алгоритм,  который  позволяет  подсчитать  и 
  y:=y+1; 
Y = Y + 1 
вывести  среднее  арифметическое  элементов  массива,  имеющих  нечетное 
end; 
ENDIF 
s:=x/y; 
NEXT I 
значение.  Гарантируется,  что  в  исходном  массиве  хотя  бы  один  элемент 
writeln(s); 
S = X / Y 
имеет нечетное значение. 
PRINT S 
Исходные  данные  объявлены  так,  как  показано  ниже.  Запрещается 
На языке Си 

На естественном языке 

использовать  переменные,  не  описанные  ниже,  но  разрешается  не 
x=0; 
Записываем  в  переменные X и Y начальное 
y=0; 
использовать часть из них. 
значение,  равное  нулю.  В  цикле  от  первого 
for (i=0; i элемента  до  тридцатого  находим  остаток  от 
 
Паскаль 

Бейсик 

  if (a[i]%2==1) 
деления  элемента  исходного  массива  на  два. 
   { x=x+a[i]; 
const 
N=30 
Если  этот  остаток  равен  единице,  то 
    y++; 
  N=30; 
DIM A(N) AS INTEGER 
   } 
увеличиваем  счетчик  суммы X на  значение 
var 
DIM I, X, Y AS INTEGER 
s=(float)x/y; 
текущего  элемента  массива,  а  счетчик 
  a: array [1..N] of integer; 
DIM S AS SINGLE 
количества Y на 1. Переходим  к  следующему 
  i, x, y: integer; 
FOR I = 1 TO N  
printf("%f", s); 
 
элементу. 
  s: real; 
INPUT A(I) 
После  цикла  производим  деление  счетчика 
begin 
NEXT I 
  for i:=1 to N do readln(a[i]); 
 

суммы X на  счетчик  количества Y и 

  … 
… 
записываем  результат  в  переменную S. 
 
 
Выводим значение переменной S. 
end. 
END 
 
Си 

Естественный язык 

#include  
Объявляем массив A из 30 элементов. 
#define N 30 
Объявляем  целочисленные  переменные 
void main(void) 
I, X, Y. 
{int a[N]; 
Объявляем  вещественную  переменную 
int i, x, y; 
S. 
float s; 
for (i=0; i В  цикле  от 1 до 30 вводим  элементы 
  scanf("%d", &a[i]); 
массива A с 1-го по 30-й. 
… 
 
 
… 

© 2011 Федеральная служба по надзору в сфере образования и науки РФ 
© 2011 Федеральная служба по надзору в сфере образования и науки РФ 



<< предыдущая страница   следующая страница >>