Контрольный тест по теме «Введение в программирование»
1. Линейный алгоритм – это алгоритм...
А) В котором команды выполняются последовательно.
Б) В котором есть повторение одной или более команд.
В) В котором выполнение команд зависит от условия или нескольких условий.
2. Алгоритм, в котором его выполнение определяется проверкой каких-либо условий, называется...
А) Разветвляющимся. Б) Циклическим. В) Линейным.
3. Алгоритм называют циклическими, если в нем...
А) Реализуется многократно повторяемая последовательность действий.
Б) Используются повторяющиеся параметры.
В) Многократно повторяется одно и то же вычисление.
4. Свойство алгоритма, показывающее то, что команды алгоритма входят в систему команд исполнителя, называется...
А) Понятность алгоритма. Б) Конечность алгоритма. В) Однозначность алгоритма.
5.Существуют три основных типа величин в программировании. Их точное название – это...
А) Числовой, символьный, логический. Б) Буквенный, цифровой, логический.
В) Звуковой, графический, буквенный.
6. Переменная в программировании – это...
А) Величина, имеющая имя и возможность принимать разные значения в программе.
Б) Величина, имеющая имя и только одно значение.
В) Величина, не имеющая ни имени, ни значения.
7. Раздел описания переменных в программе начинается со слова...
А) Var. Б) Const. В) Вegin.
8. Раздел описания переменных в программе находится...
А) После Program и перед begin. Б) В теле программы после begin.
В) Может находиться в любом месте программы.
9. В программе используется целочисленная переменная x. Выберите ПРАВИЛЬНОЕ описание этой переменной:
А) Var x:integer; Б) Var x:Real; В) Var x:integer
10. Дана строчка: Var i,j:Real; Какую функцию она выполняет?
А) Описывает две переменные вещественного типа (не целые числа).
Б) Описывает две переменные целого типа. В) Описывает две константы вещественного типа.
11. Оператор присваивания в программе на Pascal:
А) := Б) -= В) =
12. Дана команда: writeln(`Это моя программа`); Что она выполняет?
А) Выводит на экран строчку "Это моя программа".
Б) Запрашивает ввод слов "Это моя программа". В) Выводит на экран значение переменной.
13. Дан фрагмент программы:
a:=8;
b:=16;
c:=b/a;
Writeln(c);
Что происходит при его выполнении?
А) На экран выводится число 2.
Б) Программа запрашивает ввод с клавиатуры значения переменной c.
В) На экран выводится буква "с".
14. Команда: Readln(b);
А) Приостанавливает программу и запрашивает ввод значения b с клавиатуры.
Б) Выводит на экран значение переменной b. В) Выводит на экран букву b.
15. Дана программа: В какой строчке ошибка?
Program User;
var a:integer;
b:real;
begin
b:=1.5;
a:=b;
end. А) В первой.
Б) Во второй.
В) В третьей.
Г) В четвертой.
Д) В пятой.
Е) В шестой.
Ж) В седьмой.
16. Дано несколько команд языка Pascal, осуществляющие вывод на экран информации.
1) Writeln(a);
2) Writeln(`x равно:`,x);
3) Writeln(`Результат равен , Res);
4) Writeln(`Привет!`);
Отметьте все правильно написанные команды:
А) Первая. Б) Вторая. В) Третья. Г) Четвертая.
Д) Нет правильно написанной команды. Е) Все команды правильно написаны.
17. Полный оператор ветвления IF … THEN … ELSE переводится как...
А) Если … то … иначе. Б) Если … тогда … условие. В) Пока … тогда … иначе.
18. Оператором цикла не является оператор:
А) Repeat... Б) While... В) For... Г) Case... Д) Нет верного ответа
19.Запишите на языке Pascal: задан массив из 12 элементов.
20. Запишите, какое число выводится на экран после выполнения фрагмента программы:
a:=32;
b:=16;
c:=(a + b)/2;
d:=a + b – c/4;
writeln(d);
m & 1 - это битовая конъюнкция. Результатом будет 1, если m нечетное, и 0, если m - четное (то есть, содержит или не содержит соответствующий разряд)
Выражение вида T ? X : Y, где T - логическое высказывание, принимает значение X, если T истинно, и Y, если T ложно.
Соответственно, i = (m & 1) == 1 ? m : m + 1 означает, что
если m нечетное, то i = m
если четное, i = m+1 (то есть, первое нечетное число после m)
i += 2 означает, что цикл идет с шагом, соответственно, рассматриваются только нечетные числа.
n = 20;
var
pos,neg: integer;
i,k,x: integer;
ev,un: integer;
a,b: array [1..n] of integer;
begin
for i := 1 to n do
read(a[i]);
k := 0;
pos := 0;
neg := 0;
for i := 1 to n do
begin
ev := 0;
un := 0;
x := a[i];
if x <> 0 then
if x > 0 then
if (x < pos) or (pos = 0) then
pos := x
else
else
if (x > neg) or (neg = 0) then
neg := x;
x := abs(x);
while x <> 0 do
begin
if odd(x) then
un := un + 1
else
ev := ev + 1;
x := x div 10
end;
if un = ev then
begin
k := k + 1;
b[k] := a[i]
end
end;
writeln(pos,' ',neg);
for i := 1 to k do
write(b[i],' ')
end.