Меню
Разработки
Разработки  /  Информатика  /  Тесты  /  11 класс  /  Тест по информатике

Тест по информатике

Данный тест помогает учащимся при подготовке к ЕГЭ.
12.09.2012

Описание разработки

Тест подготовлен для учителей. Можно использовать материал для подготовки к ЕГЭ по информатике и для контроля знаний учащихся.

Тест по информатике

Содержимое разработки

МБОУ Кубянская сош Атнинского муниципального района РТ

Учитель математики и информатики Хакимзянова Нурания Идерисовна


Тест по информатике


А1. Сколько единиц в двоичной записи числа 173?

1) 7 2) 5 3) 6 4) 4


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


A

B

C

D

A


3


1

B

3


2

1

C


2


4

D

1

1

4








1)

2)

3)

4)


















X

Y

Z

F

0

0

0

1

0

0

1

0

0

1

0

1

А3. Символом F обозначено одно из указанных ниже логических выражений от трех аргументов: X, Y, Z. Дан фрагмент таблицы истинности выражения F. Какое выражение соответствует F?




1) ¬X ¬Y Z 2) ¬X ¬Y Z 3) X Y ¬Z 4) X Y Z


А4. В некотором каталоге хранится файл Формулы.tхt. В этом каталоге создали подкаталог и переместили в него файл Формулы.tхt. После этого полное имя файла стало
D:\Документы\Математика\Контрольная\Формулы.txt
Каково полное имя файла до перемещения?

1) D:\Документы\Контрольная\Формулы.txt

2) D:\Математика\Формулы.txt

3) D:\Документы\Математика\Формулы.txt

4) D:\Математика\Контрольная\Формулы.txt


А5. Предлагается некоторая операция над двумя произвольными трехзначными десятичными числами:

  1. Записывается результат сложения старших разрядов этих чисел.

  2. К нему дописывается результат значений средних разрядов по такому правилу: если он меньше первой суммы, то полученное число приписывается к первому слева, иначе – справа.

  3. Итоговое число получают приписыванием справа к числу, полученному после второго шага, сумму значений младших разрядов исходных чисел.

Какое из перечисленных чисел могло быть построено по этому правилу?

1) 141819 2) 171814 3) 171418 4) 141802

А6. На городской тур олимпиады по информатике проходят те учащиеся, которые набрали на районном туре не менее 10 баллов или решили полностью одну из самых сложных задач 6 или 7. За полное решение задач 1-4 дается 2 балла, задач 5-6 – 3 балла, задачи 7 – 4 балла. Дана таблица результатов районной олимпиады:


Фамилия

Пол

Баллы за задачи

1

2

3

4

5

6

7

Алексеева М.

ж

1

0

2

1

0

1

3

Васильев А.

м

2

2

2

2

2

1

4

Григоьев Б.

м

2

0

0

0

1

1

4

Михайлов С.

м

1

1

1

1

1

2

3

Петров В.

м

2

0

0

1

0

3

0

Сидоров Н.

м

2

2

2

0

3

0

1

Федорова А.

ж

1

1

0

0

0

2

3

Яковлева Е.

ж

2

2

0

0

1

1

3

Сколько человек прошли на городской тур?

1) 5 2) 6 3) 7 4) 4

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

1) =E1-$E2 2) =E1-$D2 3) =E2-$D2 4) =D1-$E2

А8. Производится одноканальная (моно) звукозапись с частотой дискретизации 22 кГц и глубиной кодирования 16 бит. Запись длится 2 минуты, ее результаты записываются в файл, сжатие данных не производится. Какое из приведенных ниже чисел наиболее близко к размеру полученного файла, выраженному в мегабайтах?

1) 1 2) 2 3) 5 4) 10


А9. Для кодирования сообщения, состоящего только из букв А, Б, В и Г, используется неравномерный по длине двоичный код:

А Б В Г

00 11 010 011

Если таким способом закодировать последовательность символов ВГАГБВ и записать результат в шестнадцатеричном коде, то получится:

1) CDADBC16 2) A7C416 3) 41271016 4) 4С7А16

А10. Для какого имени истинно высказывание:

(Вторая буква гласная Первая буква гласная) Последняя буква согласная?

1) ИРИНА 2) МАКСИМ 3) МАРИЯ 4) СТЕПАН


А11. Световое табло состоит из цветных индикаторов. Каждый индикатор может окрашиваться в четыре цвета: белый, черный, желтый и красный. Какое наименьшее количество лампочек должно находиться на табло, чтобы с его помощью можно было передать 300 различных сигналов?

1) 4 2) 5 3) 6 4) 7

А12. В программе описан одномерный целочисленный массив A с индексами от 0 до 10. Ниже представлен фрагмент этой программы, в котором значения элементов массива сначала задаются, а затем меняются.

for i:=0 to 10 do

A[i]:=i;

t:=A[0];

for i:=1 to 10 do

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

A[10]:=t;

Чему будут равны элементы этого массива?

1) 10 10 10 10 10 10 10 10 10 10

2) 1 2 3 4 5 6 7 8 9 10 0

3) 0 0 0 0 0 0 0 0 0 0

4) 1 2 3 4 5 6 7 8 9 10 1

А13.

Система команд исполнителя РОБОТ, «живущего» в прямоугольном лабиринте на клетчатой плоскости:

вверх вниз влево вправо.

При выполнении любой из этих команд РОБОТ перемещается на одну клетку соответственно: вверх ↑, вниз ↓, влево ←, вправо →. Четыре команды проверяют истинность условия отсутствия стены у каждой стороны той клетки, где находится РОБОТ:

сверху свободно снизу свободно

слева свободно справа свободно

Цикл ПОКА команда выполняется, пока условие истинно, иначе происходит переход на следующую строку.

Если РОБОТ начнет движение в сторону стены, он разрушится и программа прервется.

Сколько клеток приведенного лабиринта соответствуют требованию, что, выполнив предложенную ниже программу, РОБОТ уцелеет и остановится в той же клетке, с которой он начал движение?

1) 1 2) 2 3) 3 4) 4

НАЧАЛО

ПОКА вверх

ПОКА вправо

ПОКА вниз

ПОКА влево

КОНЕЦ









7








6








5








4








3








2








1

A

B

C

D

E

F

G





В1. Считая, что каждый символ кодируется одним байтом, определите, чему равен информационный объем следующего высказывания Рене Декарта в битах:

Я мыслю, следовательно, существую.



В2. Исполнитель КАЛЬКУЛЯТОР имеет только две команды, которым присвоены номера:

  1. Вычти 1

  2. Умножь на 2

Выполняя команду номер 1, КАЛЬКУЛЯТОР вычитает из числа на экране 1, а выполняя

команду номер 2, умножает число на экране на 2. Напишите программу, содержащую не

более 4 команд, которая из числа 13 получает число 100. Укажите лишь номера команд.

Например, программа 21211 – это программа:

Умножь на 2

Вычти 1

Умножь на 2

Вычти 1

Вычти 1

которая преобразует число 2 в число 4.



В3. Определите, что будет напечатано в результате работы следующего фрагмента программы:

var k, s: integer;

begin

s:=0;

k:=0;

while k

k:=k+3;

s:=s+k;

end;

write(s);

end.



В4. Все 5-буквенные слова, составленные из букв А, О, У, записаны в алфавитном порядке. Вот начало списка:

1. ААААА

2. ААААО

3. ААААУ

4. АААОА

……

Запишите слово, которое стоит на 125-м месте от начала списка.



В5. В магазине продаются головные уборы трех видов (шляпы, панамы и бейсболки), сделанные из четырех материалов (брезент, хлопок, шелк и соломка). На диаграмме 1 показано количество головных уборов каждого вида, а на диаграмме 2 – распределение головных уборов по материалам.

Диаграмма 1

Диаграмма 2

Какое из этих утверждений следует из анализа обеих диаграмм?

1) Все соломенные изделия могут быть бейсболками.

2) Все панамки могут быть из хлопка или брезентовыми.

3) Среди изделий из шелка может не быть ни одной шляпы.

4) Среди изделий, сделанных не из соломки, может не быть ни одной панамы.


В6. Определите значение переменной b после выполнения следующего фрагмента программы, где a и b – вещественные (действительные) переменные:

a := -5;

b := 5 + 7 * a;

b := b / 2 * a;


В7. Ниже записана программа. Получив на вход число , эта программа печатает два числа, и . Укажите наибольшее из таких чисел , при вводе которых алгоритм печатает сначала 3, а потом 0.

var x, L, M: integer;

begin

readln(x);

L:=0; M:=0;

while x 0 do begin

L:= L + 1;

if x mod 2 = 0 then

M:= M + x mod 10;

x:= x div 10;

end;

writeln(L); write(M);

end.



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


В9.

На рисунке – схема дорог, связывающих города А, Б, В, Г, Д, Е, Ж, З, И, К. По каждой дороге можно двигаться только в одном направлении, указанном стрелкой. Сколько существует различных путей из города А в город К?

В10. Модем передает данные со скоростью 7680 бит/с. Передача текстового файла заняла 1,5 мин. Определите, сколько страниц содержал переданный текст, если известно, что он был представлен в 16-битной кодировке Unicode, а на одной странице – 400 символов.



В11.

Петя записал IP-адрес школьного сервера на листке бумаги и положил его в карман куртки. Петина мама случайно постирала куртку вместе с запиской. После стирки Петя обнаружил в кармане четыре обрывка с фрагментами IP-адреса. Эти фрагменты обозначены буквами А, Б, В и Г. Восстановите IP-адрес. В ответе укажите последовательность букв, обозначающих фрагменты, в порядке, соответствующем IP-адресу.







В12.

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

А) реферат | математика | Пифагор

Б) реферат | математика | Пифагор | теорема

В) реферат | математика

Г) реферат & математика & Пифагор





В13. У исполнителя Калькулятор две команды:

1. прибавь 2

2. умножь на 3.

Первая из них увеличивает число на экране на 2, вторая – утраивает его. Сколько различных чисел можно получить из числа 2 с помощью программы, которая содержит ровно 3 команды?



В14.

Определите, какое число будет напечатано в результате выполнения следующего алгоритма:

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

Function F(x:integer):integer;

begin

F:=-(x+4)*(x+2);

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;

end;

write(M);

END.



В15. Каково наименьшее натуральное число X, при котором высказывание

¬(X·X (X (X + 2))

будет ложным?









Ответы к заданиям с выбором ответа


№ задания

ответ

А1

2

А2

4

А3

3

А4

3

А5

2

А6

1

А7

2

А8

3

А9

4

А10

4

А11

2

А12

2

А13

2


Ответы к заданиям с кратким ответом


№ задания

ответ

В1

272

В2

2122

В3

165

В4

ОООУО

В5

3

В6

75

В7

999

В8

3

В9

18

В10

108

В11

БВАГ

В12

ГВАБ

В13

8

В14

-3

В15

3















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


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

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

ПРОГРАММА НА СИ

var х, у: real;

begin

readln(x, у) ;

if ух then

if y

if y=x*x-2 then write('принадлежит 1) else

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

INPUT x, у

IF уTHEN

IF уTHEN

IF y=x*x-2 THEN PRINT "принадлежит" ELSE

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

END IF

END IF

END IF

END

void main(void)

{ float x,у;

Scanf( "&f&f", &x, &у) ;

if (y

if (y

if (y=x*x-2)

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

else

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

}


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

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

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


Ответ: (Максимальный балл 3)


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

    1. Пример: х=2, у=2 (Любая пара (х,у), для которой выполняется: ух или у-х)

    2. Возможная доработка (Паскаль, разбиение области на две части прямой х=0):

if (у=х*х-2) and (уand (х=0) or (хand (уand (у=х*х-2) then

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

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

Возможная доработка (Си, разбиение на две пересекающиеся области):

if (у=х*х-2 && (у

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

else

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

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

IF у = х * х - 2 THEN

IF NOT (у х AND у -х) THEN

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

ELSE

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

ENDIF

ELSE

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

ENDIF




С2. Дан целочисленный массив из 30 элементов. Элементы массива могут принимать значения от --I000 до 1000. Опишите на русском языке или на одном из языков программирования алгоритм, который позволяет подсчитать и вывести среднее арифметическое элементов массива, оканчивающихся нулем. Гарантируется, что в исходном массиве есть хотя бы один такой элемент.

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



Паскаль

Бейсик

const

N=30;

var

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

i, x, у: integer;

s: real;

begin

for i:=l to N do readln(a[i]);

N = 30

DIM A(N) AS INTEGER

DIM I, X, Y AS INTEGER

DIM S AS SINGLE

FOR I = 1 TO N

INPUT A(I)

NEXT I

end.

END

Си

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

#include

#define N 30

void main(void)

(int a IN] ;

int i, x, у;

float s;

for (i=0; i

scanf("%d", &a [i]);

)

Объявляем массив А из 30 элементов Объявляем целочисленные переменные I.

X, Y

Объявляем вещественную переменную S .

В цикле от 1 до 30 вводим элементы массива А с 1-го по 30-й.


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


Ответ: (Максимальный балл 2)


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

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

х : =0;

у:=0;

for i:=1 to N do

if (a [ i] mod 10=0) then begin

x:=x + a [ l];

у:=y+1;

end;

s:=x/y;

writeln(s);

X = 0 Y = 0

FOR I = 1 TO N

IF A(I) MOD 10 = 0 THEN

X = X + All)

У = Y + 1

ENDIF

NEXT I

S = X / Y

PRINT S

На языке Си

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

X=0;

У = 0;

for (1 = 0; i

if (a[i]%10==0)

( x=x+a[i];

У++;

)

s=(float)x/y;

printf("%f", s);


Записываем в переменные X Y начальное значение, равное нулю. В цикле от первого элемента до тридцатого находим остаток от деления элемента исходного массива на десять. Если значение этого остатка равно нулю, то увеличиваем счетчик суммы X на значение текущего элемента массива, а счетчик количества Y на I . Переходим к следующему элементу

После цикла производим деление счетчика суммы X на счетчик количества Y и записываем результат в переменную S. Выводим значение переменной S




С3.

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



Ответ:(Максимальный балл 3)

Выигрывает второй игрок.

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




I ход

2 ход

3 ход

4 ход


Стар­товая пози­ция

1-й пгрок

(все варианты хода)

П-й игрок

(выиг­рышный ход)

1-й игрок (все варианты хода, кроме непосред­ственно проигрыш­ных)

П-й игрок (выигрыш­ные ходы)

Пояснение

6, 8

10,8

10, 16

14, 16

18, 16

Любой следующий ход первого игрока

является непосредственн о

проигрышным

6, 16

10, 16

Те же варианты 3-4 хода

12. 8

12,12

16, 12

16, 16

12, 16

16, 16

6, 12

12, 12

Те же варианты 3-4 хода



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



С4.

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

Например, пусть на вход подаются следующие символы: Do not 911 to 09 do 1.

В данном случае программа должна вывести

91 119


Ответ: (Максимальный балл 4)


Программа читает все входные символы до точки один раз, подсчитывая в массиве, хранящем 10 целых чисел, количество каждой из цифр. Сами входные символы при этом не запоминаются. Затем проверяется, есть ли в этом массиве нечетные элементы, и из них запоминается максимальный по номеру. Сначала печатается половина имеющихся цифр 9 (если таковые имеются, в случае нечетного числа цифр - меньшая половина), затем 8 и т. д. до 0. потом печатается максимальная цифра, которая встречается во входных данных нечетное

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

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


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


var а:array['0'..'9'] of integer;

с, с odd: char;

i: integer;

f: boolean;

begin

for c:='0' to '9' do a[c]:=0;

read(c);

while с' . ' do

begin

if с in ['0'..'9'] then a[c) := a[c] + 1;

read(c);

end;

f := false;

for с : = ' 1' to ' 9' do

if а[с] 0 then f := true;

if not f then writeln(O) else

begin

f := false;

c_odd := #0;

for с := '0' to '9' do

begin

if a[c] mod 2=1 then

c_odd := c;

if (a[c] 1) and (c '0') then f := true;

end;

if not f then a['0'] := 0; (нули не печатать}

for с := '9' downto '0' do

for i := 1 to a[c] div 2 do

write(c);

if c_odd #0 then

write(c_odd);

for с := '0' to '9' do

for i := 1 to a[c] div 2 do

write (c);

end

end.


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


DIM f, i, j, iodd, a(9) AS INTEGER

FOR i = 0 TO 9

a (i) = 0

NEXT

INPUT cS

DO WHILE NOT (c? = ".")

IF c$ = "0" AND c5 THEN

a(ASC(с$) - ASC("0")) = a(ASC(с$) - ASC("0")) + 1

ENDIF

I INPUT с $

LOOP

f = о

FOR i = 1 TO 9

IF a(i) 0 THEN f = 1

NEXT

IF f = 0 THEN PRINT 0: END

f = 0

iodd = - 1

for i = 0 TO 9

IF a(i) MOD 2=1 THEN iodd = i

IF a(i] 1 AND i 0 THEN f = 1

NEXT

IF f = 0 THEN a(0) = 0

FOR i = 9 TO 0 STEP -1

FOR j = 1 TO a (i) \ 2

PRINT i;

NEXT

NEXT

IF iodd = 0 THEN PRINT iodd;

FOR i = 0 TO 9

FOR j = 1 TO a(i) \ 2

PRINT i;

NEXT

NEXT

END






-75%
Курсы повышения квалификации

Современные педагогические технологии в образовательном процессе

Продолжительность 72 часа
Документ: Удостоверение о повышении квалификации
4000 руб.
1000 руб.
Подробнее
Скачать разработку
Сохранить у себя:
Тест по информатике (0.39 MB)

Комментарии 2

Чтобы добавить комментарий зарегистрируйтесь или на сайт

Бакыт, 15.11.2012 14:08
OK
Сергей, 25.10.2012 15:00
Проба пера

Вы смотрели

© 2008-2024, ООО «Мультиурок», ИНН 6732109381, ОГРН 1156733012732

Учителю!
Огромная база учебных материалов на каждый урок с возможностью удаленного управления
Тесты, видеоуроки, электронные тетради