Тест по теме "Массивы"
методическая разработка по информатике и икт (9, 10 класс)

Анистратенко Ирина Владимировна

Методическая разработка по программированию. Тест по теме "Массивы" с ключами и критериями оценивания

Скачать:

ВложениеРазмер
Microsoft Office document icon metodicheskaya_razrabotka_test_po_teme_massivy.doc65.5 КБ

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

Тест по теме «МАССИВЫ»

 Вариант 1

1.Выберите ошибочное утверждение:        

  1. Если каждый элемент массива определяется с помощью одного номера, то такой массив называется одномерным;
  2. в двумерных массивах первый номер указывает на строку, в торой  -  на положение элемента в строке;
  3. номер элемента в массиве называют индексом;
  4. строки двумерного массива могут иметь неодинаковую длину.

2. Выберите из приведенного списка ошибочные записи одномерных массивов:

  1. Type mas=array [1..n] of byte; var a:mas;
  2. Var a: array [-7..-7] of integer;
  3. Var a: array [10] of integer;
  4. Const n=10; Var a: array [1..n] of integer.


3. Выберите из списка ложное обращение к элементам массива:    a:array [1..3, 1...4] of real;

  1. A [i];
  2. A[1,4];
  3. A[4,3];
  4. A [3,3].


4. Выберите заголовок алгоритма, который определял бы три действительные табличные величины, которые имеют по 50 элементов и элементы которых пронумерованы, начиная соответственно с 1, 10, 105:

a)Var a,b,c: array [1..50] of real;

  1. Var a: array [1..50] of real; b: array [10..59] of real; c: array [105..154] of real;;
  2. Var a: array [1..50] of real; b: array [10..60] of real; c: array [105..155] of real;;
  3. Var a,b,c: array [1..50, 10..59, 105..154] of real;.

5.Пусть нижняя и верхняя границы индексов одномерного массива С равны соответственно -3 и 13. Выберите порядковый номер следующего элемента С[5]:
a) 5; b) 6; c)8; d) 9.

6. Пусть элементы одномерного массива А[1..10]  приобретают значения соответственно -5, -3, -1, 1, 3, 5, 7, 9, 11, 13. Выберите какие значения будут напечатаны в результате выполнения таких операторов:

i:=1; repeat write ( a[i], ‘ ‘); i:=i+1 until a[i]<0;

  1. -5;
  2. -5 -3 -1;
  3. никакие значения не будут напечатаны;
  4. -5 -3.

7. Дана  программа, составленная для решения задачи. Дано натуральное число N и последовательность действительных чисел а1,…an. Определить в этой последовательности количество соседств нулевых чисел. Выберите пропущенную строку:

Type mas=array [1..100] of real;

Var  a: mas;

i, n, k: integer;

Begin

Readln (n);

For i:=1 to n do

Read (a[i]);

k:=0;

For i:=1 to n-1 do

_____________________

Then k:=k+1;

Writeln (‘k=’, k);

End.

  1. If  a[i]*a[i+1]=0;
  2. If  a[i]=a[i+1];
  3. If (a[i]=0) and  (a[i+1]=0);
  4. If  a[i]+a[i+1]=0.

8. Дана  программа, составленная для решения задачи. Даны действительные числа а1, …, а30, в1, …, в30. Вычислить а1в2+а3в4+…+а29в30. Выберите пропущенную строку:

Type mas=array [1..30] of real;

Var a, b: mas;

i: byte; y: real;

Begin

For i:=1 to 30 do read (a[i]);

For i:=1 to 30 do read (b[i]);

y:=0;

______________________

Writeln (‘y=’, y:8:4);

End.

  1. For i:=1 to 29 do for j:=2 to 30 do y:=y+a[i]*b[j];;
  2. i:=1; while i<=29 do begin j:=2; while j<=30 do begin y:=y+a[i]*b[j]; j:=j+2; end; i:=i+2; end;;
  3. i:=1; while i<=29 do begin y:=y+a[i]*b[i+1]; i:=i+2; end;;
  4. y:=(a[1]]*b[2])+ (a[3]*b[4])+… (a[29]]*b[30]);.

9. Дана  программа, составленная для решения задачи. В двумерном массиве A [1..4, 1..4] вычислить сумму положительных элементов, расположенных на главной диагонали. Выберите, какая строка содержит ошибку:

Var a; array [1..4, 1..4] of real;

i, j :byte; s: real;

Begin

For i:=1 to 4 do

For j:=1 to 4 do read (a[i, j]);

s:=0;

For i:= 1 to 4 do For j:=1 to 4 do

If a[i, i]>0 then

s:=s+ a[i, i];

Writeln (s:8:4);

End.

  1. For i:= 1 to 4 do For j:=1 to 4 do  For i:=1 to 4 do;
  2. If a[i, i]>0 then  не требуется;
  3. a[i, i]  a[i, j];;
  4. s: real;  s: byte;.

Вариант 2

1.Выберите ошибочное утверждение:        

  1. доступ к какому-либо элементу массива осуществляется по его номеру;
  2. каждый элемент массива определяется по собственному имени;
  3. если в программе несколько массивов одного размера и типа, тои имена можно дать через запятую, а потом после двоеточия указать описание массива;
  4. одномерный массив имеет в описании одну пару индексов.

2. Выберите из приведенного списка ошибочные описи одномерных массивов:

  1. Var a: array [1..20] of real;
  2. Type mas=array [‘a’..’z’];  var a:mas;
  3. Const n=10; Var a: array [1..n] of char;
  4. Var mas=array [-5..-15] of integer;.

3. Выберите из списка ложное обращение к элементам массива:    a:array [-5..5] of integer;

  1. A [-5..5];
  2. A[-5];
  3. A[-5,5];
  4. A [0].

4. Выберите заголовок алгоритма, который определял бы две целочисленные переменные, одну  табличную целочисленную  величину, элементы которой  пронумерованы от 1 до 10:

a)Var a,b: integer; c: array [1..10] of integer;

  1. Var a: array [1..10] of real; b, c: integer;;
  2. Var a: integer; c ,b: array [1..10] of integer;;
  3. Var a,b,c: array [1..10] of integer;.

5.Пусть нижняя и верхняя границы индексов одномерного массива B равны соответственно -5 и 10. Выберите порядковый номер следующего элемента В[8]:
a) 8; b) 14; c)13; d) 15.

6. Пусть элементы одномерного массива А[1..10]  приобретают значения соответственно -5, -3, -1, 1, 3, 5, 7, 9, 11, 13. Выберите какие значения будут напечатаны в результате выполнения таких операторов:

 For i:=1 to 5  write ( a[i+5], ‘ ‘);

  1. -5 -3 -1 1 3;
  2. 0 2 4 6 8;
  3. 5 7 9 11 13;
  4. 10 12 14 16 18.

7. Дана  программа, составленная для решения задачи. Дано натуральное число N и последовательность действительных чисел а1,…an. Определить в этой последовательности количество соседств положительных чисел. Выберите пропущенную строку:

 Соnst n1=100;

Var  a: array [1..n1] of real;

i, n, k: integer;

Begin

Readln (n);

For i:=1 to n do

Read (a[i]);

k:=0;

For i:=1 to n-1 do

_____________________

Then k:=k+1;

Writeln (‘k=’, k);

End.

  1. If  a[i]=a[i+1];
  2. If  a[i]>0 and a[i+1]>0;
  3. If a[i] and  a[i+1]>0;
  4. If  (a[i]>0) and (a[i+1]>0).

8. Дана  программа, составленная для решения задачи. Даны действительные числа а1, …, а30, в1, …, в30. Вычислить (а1+в30)(а2+в29)…(а30+в1). Выберите пропущенную строку:

Type mas=array [1..30] of real;

Var a, b: mas;

i: byte; y: real;

Begin

For i:=1 to 30 do read (a[i]);

For i:=1 to 30 do read (b[i]);

y:=1;

______________________

Writeln (‘y=’, y:8:4);

End.

  1. For i:=1 to 30 do for j:=1to 30 do y:=y*(a[i]+b[j]);;
  2. y:=(a[1]+b[30])*(a[2]+b[29])*..*(a[30]+b[1]);;
  3. for i:=1 to 30 do y:=y*(a[i]+b[31-i]);;
  4. for i:=1 to 30 do y:=y*(a[i]+b[30-i]);.

9. Дана  программа, составленная для решения задачи. В двумерном массиве A [1..10, 2..5] вычислить сумму четных элементов. Выберите, какая строка содержит ошибку:

Var a; array [1..10, 2..5] of real;

i, j :byte; s: real;

Begin

For i:=1 to 10 do

For j:=2 to 5 do read (a[i, j]);

s:=0;

For i:=1 to 10 do For j:=2 to 5 do

If (i mod 2=0) and (j mod 2=0) then

s:=s+ a[i, i];

Writeln (s:8:4);

End.

  1. s: real; s: byte;
  2. If (i mod 2=0) and (j mod 2=0) then if a[i, j] mod 2=0 then;
  3. s:=s+ a[i, j] s:=s+ a[2*i,2* j];;
  4. s:=0;  s:=1;.

Ключи к заданиям:

№ варианта

1

2

3

4

5

6

7

8

9

1

d

a, c

a, c

b

d

a

c

c

a

2

b

b, d

a, c

a

b

c

d

c

b

Каждое правильно решенное  задание оценивается 1 баллом.

9 баллов – оценка «5»;        8-7 баллов – оценка «4»;

6-5 баллов – оценка «3»;     менее 5 баллов – оценка «2».