Сертификат "Программирование на языке Pascal"
  • Сертификат "Программирование на языке Pascal"
  • Сертификат "Программирование на языке Pascal"
Сертификат "Программирование на языке Pascal"
  • Сертификат "Программирование на языке Pascal"
  • Сертификат "Программирование на языке Pascal"

Программирование на языке Pascal

700,00 руб.
В течение часа!
Экзамен "Программирование на языке Pascal" для пользователей и системных администраторов.
Количество
Есть в наличии!

Форма сдачи теста: Экстерн
Количество вопросов: 30
Проходной балл: 90% и выше
Срок действия сертификата: неограничен

Сертификат появляется в профиле ресурса INTUIT, и Вы можете заказать его бумажную версию на сайте INTUIT.
12554 шт.
Внимание !
Вопросы к тесту выложены исключительно в ознакомительных целях: количество вопросов может не совпадать с действительным, актуальность не поддерживается,- за решением теста Welcome to the cashier!

Какой раздел модуля содержит описания тех подпрограмм, которые были объявлены как доступные другим модулям?

секция реализации (implementation)
секция внешних связей (interface)
секция инициализации (begin)


Какой раздел модуля содержит объявления всех констант, переменных, типов данных и подпрограмм, которыми могут пользоваться остальные модули программы?

секция инициализации (begin)
секция реализации (implementation)
секция внешних связей (interface)


Какой раздел модуля содержит операторы, которые будут выполнены перед стартом основной программы?

секция реализации (implementation)
секция инициализации (begin)
секция внешних связей (interface)


Какое значение будет храниться в переменной а:integer после выполнения следующего программного отрывка?

{b: string; p: ^integer}
b:= ‘БББ’;
p:= addr(b[1]);
a:= p^;

33153
–32383
‘ББ’
‘бб’



Какое значение будет храниться в переменной а:integer после выполнения следующего программного отрывка?

{b: string; p: ^word}
b:= ‘ААББВВГГДД’;
p:= addr(b[7]);
a:= p^;

‘гг’
33667
‘ГГ’
–31869


Какое значение будет храниться в переменной а:shortint после выполнения следующего программного отрывка?

{b: char; p: ^shortint}
b:= ‘Б’;
p:= addr(b);
a:= p^;

'Б'
-127
129
'б'


Для работы с типизированными указателями предназначены процедуры

getmem()
freemem()
new()
addr()
dispose()


Для освобождения памяти в процессе работы программы предназначены процедуры

getmem()
freemem()
new()
dispose()
addr()



Для выделения памяти в процессе работы программы предназначены процедуры

dispose()
new()
addr()
getmem()
freemem()


На сколько компонент связности распадается граф, содержащий семь вершин, если он задан таким списком ребер?

a g
a d
b c
c h
f b
f c

3
2
5
1
4


На сколько компонент связности распадается граф, содержащий семь вершин, если он задан таким списком ребер?

a b
a c
b c
c h
f d

2
5
3
1
4


Какие вершины орграфа, заданного этим списком смежности, принадлежат ко второму уровню относительно вершины a?

a: d f g
b: d
d: c f
g: h
h: f

g
h
d
b
f
a
c


Какие вершины орграфа, заданного этим списком смежности, принадлежат ко второму уровню относительно вершины a?

a: b c
b: c
c: g
d: c g
f: d
h: b

a
h
f
g
d
c
b


Какие вершины орграфа, заданного этим списком смежности, принадлежат к третьему уровню относительно вершины b?

a: d
b: a c f
c: d
d: h g
f: d

f
g
h
a
b
c
d


Какие вершины взвешенного графа, заданного этой матрицей смежности, принадлежат к 10-периферии относительно вершины c?

    a    b    c    d    f
a    0    12    5    12    3
b    12    0    15    0    7
c    5    15    0    10    20
d    12    0    10    0    2
f    3    7    20    2    0

a
c
f
d
b


Какие вершины взвешенного графа, заданного этой матрицей смежности, принадлежат к 10-периферии относительно вершины a?
   
    a    b    c    d    f
a    0    3    10    0    0
b    3    0    5    0    0
c    10    5    0    2    4
d    0    0    2    0    2
f    0    0    4    2    0

c
a
d
f
b


Какие вершины взвешенного графа, заданного этой матрицей смежности, принадлежат к 10-периферии относительно вершины a?
   
    a    b    c    d    f
a    0    5    0    7    0
b    5    0    8    4    0
c    0    8    0    6    0
d    7    4    6    0    3
f    0    0    0    3    0

b
f
c
d
a


В несвязном графе, каждая компонента связности которого является деревом, содержится 15 вершин и 10 ребер. Сколько в нем компонент связности?

4
6
5


В дереве 10 ребер. Сколько в нем вершин?

11
9
10


В дереве 15 вершин. Сколько в нем ребер?

14
15
16


Сколько нетерминальных вершин содержится в полном бинарном дереве высоты 3?

9
6
8


Сколько листьев содержится в полном бинарном дереве высоты 2?

3
4
6


Сколько терминальных вершин содержится в полном бинарном дереве высоты 3?

6
9
8


Какую высоту будет иметь дерево синтаксического анализа для выражения
(a-b)*(c+(x-y)/d)+(k*m-(n/s+t))

3
10
4
5
8


Какую высоту будет иметь дерево синтаксического анализа для выражения
(a+b)*(c*d-k)-((m+n)/s*(t+y)*(z-x))

10
4
12
6
5


Какую высоту будет иметь дерево синтаксического анализа для выражения
x*(a+b*c–g)+((m-n)*t*d/(s-y))*z

6
8
3
11
5


Постройте дерево бинарного поиска (дерево сортировки) для входной последовательности чисел 7 2 5 1 8 3 6 4 9 13 11 10 12, а затем распечатайте вершины этого дерева в порядке прямого обхода. Какая последовательность чисел получится?

10 12 7 2 5 1 8 4 9 13 11 3 6
13 12 11 10 9 8 7 6 5 4 3 2 1
7 2 5 1 8 3 6 4 9 13 11 10 12
7 2 1 5 3 4 6 8 9 13 11 10 12
1 2 3 4 5 6 7 8 9 10 11 12 13
7 2 8 1 5 9 3 6 13 4 11 10 12
1 4 3 6 5 2 10 12 11 13 9 8 7


Постройте дерево бинарного поиска (дерево сортировки) для входной последовательности чисел 7 2 5 1 8 3 6 4 9 13 11 10 12, а затем распечатайте вершины этого дерева в порядке обхода в ширину. Какая последовательность чисел получится?

10 12 7 2 5 1 8 4 9 13 11 3 6
7 2 1 5 3 4 6 8 9 13 11 10 12
1 4 3 6 5 2 10 12 11 13 9 8 7
1 2 3 4 5 6 7 8 9 10 11 12 13
13 12 11 10 9 8 7 6 5 4 3 2 1
7 2 5 1 8 3 6 4 9 13 11 10 12
7 2 8 1 5 9 3 6 13 4 11 10 12


Постройте дерево бинарного поиска (дерево сортировки) для входной последовательности чисел 7 2 5 1 8 3 6 4 9 13 11 10 12, а затем распечатайте вершины этого дерева в порядке обратного обхода. Какая последовательность чисел получится

7 2 5 1 8 3 6 4 9 13 11 10 12
7 2 1 5 3 4 6 8 9 13 11 10 12
1 4 3 6 5 2 10 12 11 13 9 8 7
10 12 7 2 5 1 8 4 9 13 11 3 6
13 12 11 10 9 8 7 6 5 4 3 2 1
7 2 8 1 5 9 3 6 13 4 11 10 12
1 2 3 4 5 6 7 8 9 10 11 12 13


В какой последовательности распечатает вершины графа, заданного этим списком смежности, процедура обратного обхода? (Обход начинается с вершины a, производится в алфавитном порядке.)

a: b d
b: d f
f: c d g
d: h g
h: g

c h g f d b a
a b d f g h c
h g f d c b a
a b d f c g h
a b c d f g h


В какой последовательности распечатает вершины графа, заданного этим списком смежности, процедура прямого обхода? (Обход начинается с вершины a, производится в алфавитном порядке.)

a: b d
b: d f
f: c d g
d: h g
h: g

a b d f g h c
a b c d f g h
c h g f d b a
a b d f c g h
h g f d c b a


В какой последовательности распечатает вершины графа, заданного этим списком смежности, процедура обхода в ширину? (Обход начинается с вершины a, производится в алфавитном порядке.)

a: b d
b: d f
f: c d g
d: h g
h: g

a b d f g h c
a b d f c g h
a b c d f g h
c h g f d b a
h g f d c b a


Для того, чтобы скомпилировать только текст одного модуля, нужно воспользоваться командой:
Compile | Build
Compile | Make
Compile | Compile


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

Compile | Build
Compile | Make
Compile | Compile


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

Compile | Make
Compile | Build
Compile | Compile


Какие процедуры и функции стандартного модуля Crt отвечают за позиционирование курсора в активной области ввода/вывода?

window()
wherey
insline
delline
sound()
wherex
nosound
clrscr
gotoxy()
textcolor()
clreol
textbackground()


Какие процедуры и функции стандартного модуля Crt отвечают за очистку строк и областей ввода/вывода?

clrscr
sound()
textbackground()
textcolor()
gotoxy()
delline
nosound
window()
wherex
clreol
insline
wherey



Какие процедуры и функции стандартного модуля Crt отвечают за цвета и звуки?

clreol
textbackground()
gotoxy()
wherex
insline
nosound
textcolor()
sound()
clrscr
delline
window()
wherey


Какой цвет текста получится на экране, если использовать
brown * lightcyan + blue

lightgray
magenta
brown
cyan
black
blue
red
green


Какой цвет текста получится на экране, если использовать
lightmagenta * blue - brown

cyan
blue
lightgray
red
black
green
magenta
brown


Какой цвет текста получится на экране, если использовать
lightgreen * brown + magenta

lightgray
red
magenta
green
black
blue
cyan
brown


Заставка – это:

предоставление пользователю информации о формате ожидаемых данных
предоставление пользователю возможности выбора из предложенных вариантов
предоставление пользователю информации о программе в целом


Меню – это:

предоставление пользователю возможности выбора из предложенных вариантов
предоставление пользователю информации о программе в целом
предоставление пользователю информации о формате ожидаемых данных


Приглашение – это:

предоставление пользователю информации о формате ожидаемых данных
предоставление пользователю возможности выбора из предложенных вариантов
предоставление пользователю информации о программе в целом


Какое из приведенных ниже подтверждений прерывания работы программы лучше всего подходит для организации дружественного интерфейса?

вы уверены, что хотите завершить работу программы? Все не сохраненные данные будут потеряны. Нажмите Y или Д, чтобы все-таки завершить или любую другую клавишу, чтобы продолжить работу
завершить работу? Y/N
до новых встреч!
хочешь выйти? Да или нет?


Какое из приведенных ниже приглашений к вводу лучше всего подходит для организации дружественного интерфейса?

пора ввести размерности нашего массива!
напечатайте значения размерностей:
введите горизонтальную и вертикальную размерности массива (целые числа из диапазона [1..100], разделенные пробелом):
введите m и n:


Какое из приведенных ниже сообщений о неправильном вводе лучше всего подходит для организации дружественного интерфейса?

повторите ввод
количество заявок не должно быть дробным. Пожалуйста, введите целое число
хочу целое число!
i = ?


Какие имена переменных являются наиболее предпочтительными с точки зрения надежного программирования?

rasst, cena1
z1, z2
rasstojanie, cena_za_1_kilometr


Какие имена переменных являются наиболее предпочтительными с точки зрения надежного программирования?

dlina_priamougolnika, shirina_priamougolnika
dl, sh
dlina, shirina


Какие имена переменных являются наиболее предпочтительными с точки зрения надежного программирования?

kol, ves
k,v
kolichestvo, obshij_ves


Полный тестовый набор для переменной вещественного типа, значение которой по условиям решаемой задачи лежит в диапазоне [0..100], может включать тесты со следующими значениями этой переменной:

‘c’
50
10.54
100.0
-1.09
0.0
1000


Полный тестовый набор для переменной целого типа, значение которой по условию решаемой задачи лежит в диапазоне [0..100], может включать тесты со следующими значениями этой переменной:

10.0
-1
1000
0
20
‘c’
100


Процесс поиска и исправления синтаксических и логических ошибок в программе называется

отладкой
оптимизацией
тестированием


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

оптимизацией
отладкой
тестированием


Процесс выполнения программы на специально подобранных входных данных и сравнения полученных результатов с эталонными называется

отладкой
тестированием
оптимизацией


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

результативностью
определенностью
массовостью


Свойство алгоритма, позволяющее ему решать множество однотипных задач, различающихся лишь входными данными, называется:

результативность
определенность
массовость


Свойство алгоритма, обязывающее его в той или иной форме сообщать итоги своей работы, называется:

определенностью
результативностью
массовостью


Какие последовательности символов являются правильными идентификаторами (с точки зрения компилятора языка Pascal)?

i'm_ident!
i am an identifier
_zzz
ja_identifikator
я-идентификатор
123zyx
x1y2z3
NewIdent
Record
result-of-count


Какие последовательности символов являются правильными идентификаторами (с точки зрения компилятора языка Pascal)?

99xxx66
vse my tut peremennye
ja-peremennaja
i_ja_peremennaja
shirina+dlina
peremennaja
переменная
NikomuNeNuzhnajaPeremennaja


Какие последовательности символов являются правильными идентификаторами (с точки зрения компилятора языка Pascal)?

12_34_56
Address
pointer
vysota*10
MyOwnIdentifier
_
_9876543210_
я переменная!
name for variable
new_variable


Идентификатор, описанный после ключевого слова label, является именем:

переменной
метки
константы


Идентификатор, описанный после ключевого слова const, является именем:

переменной
метки
константы


Идентификатор, описанный после ключевого слова var, является именем:

константы
метки
переменной


Строка, начинающаяся символами {$, является:

комментарием
директивой компилятора
оператором
ключевым словом


Строка, начинающаяся символoм {, может являться:

оператором
комментарием
ключевым словом


Строка, начинающаяся символами {*, является:

оператором
комментарием
ключевым словом
директивой компилятора


К каким типам относится описанная ниже константа?
const a = 100000000000

именованная константа
нетипизированная константа
неименованная константа
типизированная константа


К каким типам относится описанная ниже константа?
const a: real = 10.00

неименованная константа
типизированная константа
нетипизированная константа


К каким типам относится описанная ниже константа?
const a: integer = 1000

неименованная константа
типизированная константа
нетипизированная константа


Тип данных real является

Структурированным
конструируемым
арифметическим
базовым
порядковым


Тип данных integer является

структурированным
конструируемым
базовым
арифметическим
порядковым


Тип данных boolean является

конструируемым
структурированным
базовым
арифметическим


Типы данных double и real являются:

совместимыми по присваиванию
эквивалентными
совместимыми


Типы данных byte и shortint являются:

совместимыми по присваиванию
совместимыми
эквивалентными


Типы данных real и integer являются:

несовместимыми
совместимыми по присваиванию
эквивалентными


Какой тип будет иметь результат выражения a+b при a:word, b:integer?

shortint
word
byte
integer
longint


Какой тип будет иметь результат выражения a+b при a:shortint, b:word?

integer
shortint
byte
word
longint


Какой тип будет иметь результат выражения a+b при a:byte, b:shortint?

integer
shortint
word
byte
longint


Какой из вариантов расстановки скобок в выражении
a + b or c shl a * c - a mod b > a
не меняет порядок выполнения операций?

(a+b or c shl a*c-a mod b)>a
a+(b or((c shl a)*c))-a mod(b>a)
a+(((b or c)shl a)*c)-(a mod b)>a
a+(b or((c shl a)*c))-(a mod b)>a
(a+b or c shl a*c(-a)mod b)>a


Какие из вариантов расстановки скобок в выражении
a and b shr c mod a + c * a shl - b div a
не меняют порядок выполнения операций?

((a and b)shr c)mod a+c*(a shl -b div a)
a and b shr c mod a +(((c*a)shl(-b))div a)
a and b shr c mod a+(c*(a shl((-b)div a)))
a and b shr c mod a+((c*a) shl(-(b div a)))
(((a and b)shr c)mod a)+(c*((a shl(-b))div a))
(a and(b shr(c mod a)))+(c*(a shl(-(b div a))))


Какие из вариантов расстановки скобок в выражении
a * b + not c > a mod c * a shl b xor a
не меняют порядок выполнения операций?

((((a*(b+not c)>a)mod c)*a)shl b)xor a
(a*b)+(not c)>(a mod (c*(a shl(b xor a))))
a*b+(not c)>(a mod((c*a)shl b))xor a
(a*b)+(not c)>(a mod c)*(a shl b)xor a
a*b+(not c)>(((a mod c)*a)shl b)xor a
(a*b+not c)>(a mod c*a shl b)xor a


Какие значения будет принимать переменная z, в зависимости от значений переменной а?

z:= 0;
if a>10
  then if a>100
         then if a>1000
                then z:= 1
         else z:= -1
  else z:= 10;

a <= 10     : 10
10 < a <= 100    : 0
100 < a <= 1000    : -1
1000 < a    : 1

a <= 10     : 10
10 < a <= 100    : -1
100 < a <= 1000    : 1
1000 < a    : 0

a <= 10     : 0
10 < a <= 100    : 10
100 < a <= 1000    : -1
1000 < a    : 1


Какие значения будет принимать переменная z, в зависимости от значений переменной а?

z:= -10;
if a>0
  then if a>100
         then if a>200
                then z:=0
         else z:= 20
  else z:=100;

a <= 0         : 100
0 < a <= 100    : 0
100 < a <= 200    : -10
200 < a        : 20

a <= 0         : -10
0 < a <= 100    : 100
100 < a <= 200    : 20
200 < a            : 0

a <= 0         : 100
0 < a <= 100    : 20
100 < a <= 200    : 0
200 < a            : -10


Какие значения будет принимать переменная z, в зависимости от значений переменной а?

z:= -1;
if a<100
  then if a<10
         then if a<1
                then z:=0
         else z:= 10
  else z:= 100;

1)    a < 1     : 0
1 <= a < 10    : 10
10 <= a < 100    : -1
100 <= a    : 100

2)    a < 1     : 0
1 <= a < 10    : -1
10 <= a < 100    : 10
100 <= a    : 100

3)    a < 1     : 0
1 <= a < 10    : 10
10 <= a < 100    : 100
100 <= a    : -1


К каким типам данных может относиться переменная-переключатель, служащая для выбора одной из ветвей оператора case?

byte
array
word
string
text
longint
double
boolean


К каким типам данных может относиться переменная-переключатель, служащая для выбора одной из ветвей оператора case?

string[2]
longint
file of integer
extended
set
word
byte
boolean


К каким типам данных может относиться переменная-переключатель, служащая для выбора одной из ветвей оператора case?

Integer
shortint
char
file
record
real


Какие описания массивов являются правильными с точки зрения компилятора языка Pascal?

var a8: array[integer] of -1..1,10
var a9: array[1.0..20.0] of byte
var a2: array[100..-100] of real
const n: byte = 200;
var a5: array[1..n] of word/2
const m1 = 20; m2 = m1 - 100;
var a6: array[m2..m1] of 'A'..'z'
type mass = array[1..100] of boolean;
var a7: array[1..100] of mass


Какие описания массивов являются правильными с точки зрения компилятора языка Pascal?

var a9: array[-100.0..20.0] of char
var a1: array[-1..-5000] of integer
const n: byte = -10;
var a5: array[1..-2*n] of byte
var a2: array[-100..0] of char
type mass = array[-10..10] of double;
var a7: array[-10..10] of mass
var a3: array[char,4..5,boolean] of word
var a8: array[longint] of -1..1,10
const m1:= -10; m2:= m1 + 10;       
var a6: array[m2..m1] of 'A'..'z'


Какие описания массивов являются правильными с точки зрения компилятора языка Pascal?

type mass = array[1..100] of char;
var a7: array[0..99] of mass;

const m1 = 20; m2 = m1*100;
var a6: array[m1..m2] of -200..200;

const n: byte = 0;
var a5: array[-1000..n] of word;

var a9: array[0.0..20000.0] of byte;

var a1: array[-1000..50] of integer;

var a2: array[200..-111] of real


Сколько операций умножения будет произведено при выполнении этого цикла, если k = 10?
for i:= 2*k to 5*k do a:= a*2

32
61
63
33


Сколько операций сложения будет произведено при выполнении этого цикла, если k = 10?
for i:= k to k+10 do a:= a+2

34
12
11
23


Какие циклы будут работать "бесконечно"?

k:=1; while k>=0 do k:=k+1; {k:shortint}
k:=0; repeat k:=k+1 until k<0; {k:byte}
k:=0; repeat k:=k+1 until k<0; {k:integer}
k:=1; while k>=0 do k:=k+1; {k:word}
for i:='x' downto 'z' do dec(i)
while true do k:=k+1
repeat k:=k+1 until true
while false do k:=k+1
for i:=1 to i+1 do k:=k+1
repeat k:=k+1 until false

Какие циклы будут работать "бесконечно"?

k:=0; repeat k:=k-10 until k<0; {k:byte}
for i:=1 to 10*n do n:=n+1
k:=0; repeat k:=k-10 until k<0; {k:longint}
repeat k:=k-10 until true
while true do k:=k-10
k:=100; while k>=0 do k:=k-10; {k:word}
while false do k:=k-10
repeat k:=k-10 until false
k:=100; while k>=0 do k:=k-10; {k:shortint}


Какие циклы будут работать "бесконечно"?

repeat k:=k*2 until false
while true do k:=k*2
repeat k:=k*2 until true
while false do k:=k*2
c:='h'; for i:='a' to 'c' do inc(c,2)

Внимание !
Вопросы к тесту выложены исключительно в ознакомительных целях: количество вопросов может не совпадать с действительным, актуальность не поддерживается,- за решением теста Welcome to the cashier!

Метод сортировки бинарными вставками является:

внешней сортировкой
внутренней сортировкой
сортировкой, имеющей эффективность порядка N*log N
сортировкой, имеющей эффективность порядка N3
простой сортировкой
улучшенной сортировкой
сортировкой, имеющей эффективность порядка N2


Метод сортировки простыми вставками с барьером является:

сортировкой, имеющей эффективность порядка N3
внешней сортировкой
сортировкой, имеющей эффективность порядка N2
сортировкой, имеющей эффективность порядка N*log N
внутренней сортировкой
улучшенной сортировкой
простой сортировкой


Метод сортировки простым выбором является:

сортировкой, имеющей эффективность порядка N*log N
сортировкой, имеющей эффективность порядка N3
внутренней сортировкой
улучшенной сортировкой
сортировкой, имеющей эффективность порядка N2
внешней сортировкой
простой сортировкой


Метод быстрой сортировки является:

сортировкой, имеющей эффективность порядка N*log N
сортировкой, имеющей эффективность порядка N2
сортировкой, имеющей эффективность порядка N3
простой сортировкой
улучшенной сортировкой
внутренней сортировкой
внешней сортировкой


Метод сортировки Шелла является:

улучшенной сортировкой
внешней сортировкой
сортировкой, имеющей эффективность порядка N2
простой сортировкой
сортировкой, имеющей эффективность порядка N*log N
сортировкой, имеющей эффективность порядка N3/2
внутренней сортировкой


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

внешней сортировкой
сортировкой, имеющей эффективность порядка N3/2
сортировкой, имеющей эффективность порядка N*log N
простой сортировкой
внутренней сортировкой
сортировкой, имеющей эффективность порядка N2
улучшенной сортировкой


Какой метод сортировки реализует этот фрагмент программы?

for i:= 1 to n-1 do
  begin x:= a[i+1];
        l:= 1;
        r:= i;
        while l<=r do
         begin
          s:= (l+r)div 2;
          if a[s]<x then l:= s+1
                    else r:= s-1;
         end;
        for j:= i downto 0 do a[j]:= a[j+1];
        a[l]:= x;
  end;

сортировка бинарными вставками
сортировка простыми вставками
сортировка простым выбором
сортировка простыми вставками с барьером


Какой метод сортировки реализует этот фрагмент программы?

for i:= 2 to N do
  begin x:= a[i]
        for j:= i-1 downto 1 do
          if a[j]>x then a[j+1]:= a[j]
                      else break
        a[j+1]:= x;
  end;

сортировка простыми вставками с барьером
сортировка простыми вставками
сортировка простым выбором
сортировка бинарными вставками


Метод сортировки простым выбором является:

сортировкой, имеющей эффективность порядка N2
внутренней сортировкой
улучшенной сортировкой
простой сортировкой
внешней сортировкой


Какой метод сортировки реализует этот фрагмент программы?

for i:= 2 to n do
  begin min:= a[i-1];
        for j:= i to n do
          if a[j]<= min
           then begin min:= a[j];
                      k:=j
                end;
        x:= a[i-1];
        a[i-1]:= a[k];
        a[k]:= x;
  end;

сортировка бинарными вставками
сортировка простыми вставками с барьером
сортировка простыми вставками
сортировка простым выбором


Какой стандартной функции или процедуре обработки строк эквивалентен следующий программный отрывок?

{s: string; i,k,t: byte}
res:= '';    
t:= byte(s[0]);
if k+i > t+1 then k:= t-i;
if i <= t
  then for j:= i to i+k do res:= res + s[j];

copy(s,i,k)
insert(s1,s2,i)
delete(s,i,k)


Какой стандартной функции или процедуре обработки строк эквивалентен следующий программный отрывок?

{s: string; i,k,t: byte}
res:= '';
t:= length(s);
if i > t then i:= t+1;
for j:= 1 to i-1 do res:= res + s[j];
for j:= i+k-1 to t do res:= res + s[j];

insert(s1,s2,i)
delete(s,i,k)
copy(s,i,k)


Какой стандартной функции или процедуре обработки строк эквивалентен следующий программный отрывок?

{s1,s2: string; i,j,t1,t2: byte}
i:=0;
res:= '';   
t1:= byte(s1[0]);
t2:= byte(s2[0]);
if i > t2 then i:= t2+1;
for j:= 1 to i-1 do res:= res + s2[j];
for j:= 1 to t1 do res:= res + s1[j];
for j:= i to t2 do res:= res + s2[j];

copy(s,i,k)
insert(s1,s2,i)
delete(s,i,k)


Какие из приведенных ниже последовательностей строк и символов упорядочены по убыванию?

'Шекспир', 'пьеса', 'Гамлет'
'season', 'sea', 'Son'
'99', '52', '8'
'Анна', 'АННА', 'anna', 'Anna', 'ANNA'
'9', '82', '4569', '135'


Какие из приведенных ниже последовательностей строк и символов упорядочены по возрастанию?

'12', '125', '234', '48'
'ZZzz', 'zZzZ', 'zzZZ'
'Россия', 'родина', 'слонов'
'мама', 'мыла', 'раму'
'1', '5', '10', '15'


Какие из приведенных ниже описаний констант являются правильными с точки зрения Pascal-компилятора?

c1 = 'f'
s1 = [0..128, -128..0]
s2 = ['a'..'t','z','0..9']
c2: char = ''
c3 = #-100
st2 = ''
st1 = #67+'''муся'


Какие из приведенных ниже описаний констант являются правильными с точки зрения Pascal-компилятора?

с1 = #67
c2 = #(2*13)
st2 = ''
st1 = ''''+'Сhar'+''''
s2 = [1..10,5..15]
s5 = [-128..128]
c3 = 't'
s3 = ['a'..'z',0..9]



Какие из приведенных ниже описаний констант являются правильными с точки зрения Pascal-компилятора?

st2 = ''fgh''
c3 = #1000
st1 = #56+'xyz'


Какую операцию реализует приведенный ниже программный отрывок?

for i:= 1 to N do
  set_res[i]:= set1[i] and set2[i]

разность двух множеств, заданных битовым массивом
объединение двух множеств, заданных битовым массивом
пересечение двух множеств, заданных битовым массивом


Какую операцию реализует приведенный ниже программный отрывок?

for i:= 1 to N do
  set_res[i]:= (set1[i] or set2[i])and not set2[i]

пересечение двух множеств, заданных битовым массивом
объединение двух множеств, заданных битовым массивом
разность двух множеств, заданных битовым массивом


Какую операцию реализует приведенный ниже программный отрывок?

for i:= 1 to N do
  set_res[i]:= set1[i] or set2[i]

объединение двух множеств, заданных битовым массивом
разность двух множеств, заданных битовым массивом
пересечение двух множеств, заданных битовым массивом


Чтобы иметь возможность добавлять информацию в конец текстового файла, его нужно открыть при помощи команды

append(f)
close(f)
reset(f)
rewrite(f)


Чтобы иметь возможность считывать информацию из текстового файла, его нужно открыть при помощи команды

reset(f)
close(f)
append(f)
rewrite(f)


Чтобы иметь возможность записывать информацию в текстовый файл, его нужно открыть при помощи команд

append(f)
rewrite(f)
reset(f)
close(f)


Какие значения будут храниться в переменных s и k после считывания из текстового файла f строки 'Олегов Олег Олегович 1962' при помощи команды

readln(f,s,k); {s: string[22], k:byte =0}

s = 'Олегов Олег Олегович 1', k = 962
s = 'Олегов Олег Олегович ', k = 1962
s = 'Олегов Олег Олегович 1962', k = 0
s = 'Олегов Олег Олегович', k = 1962
s = 'Олегов Олег Олегович 1', k = 194


Какие значения будут храниться в переменных s и k после считывания из текстового файла f строки 'Иванов Иван Иванович 1945' при помощи команды

readln(f,s,k); {s: string[22], k:byte =0}

s = 'Иванов Иван Иванович 1', k = 945
s = 'Иванов Иван Иванович ', k = 1945
s = 'Иванов Иван Иванович', k = 1945
s = 'Иванов Иван Иванович 1', k = 177
s = 'Иванов Иван Иванович 1945', k = 0


Какие значения будут храниться в переменных s и k после считывания из текстового файла f строки 'Петров Петр Петрович 1956' при помощи команды

readln(f,s,k); {s: string[22], k:shortint =0}

s = 'Петров Петр Петрович 1', k = -68
s = 'Петров Петр Петрович 1', k = 956
s = 'Петров Петр Петрович ', k = 1956
s = 'Петров Петр Петрович', k = 1956
s = 'Петров Петр Петрович 1956', k = 0


Переменные каких типов можно выводить в текстовый файл при помощи команд write() или writeln()

Символьные
множества
порядковые
строковые
логические


Переменные каких типов можно выводить в текстовый файл при помощи команд write() или writeln()

массивы
символьные
целые
логические
вещественные
порядковые


Переменные каких типов можно выводить в текстовый файл при помощи команд write() или writeln()

вещественные
целые
строковые
логические
файлы
перечисляемые


В текстовом файле f указатель находится перед концевым пробелом в предпоследней строке, а последняя строка - пустая. Какие из перечисленных ниже функций вернут FALSE в этой ситуации?

eof(f)
seekeof(f)
eoln(f)
seekeoln(f)


В текстовом файле f указатель находится в самом конце предпоследней строки, а последняя строка - пустая. Какие из перечисленных ниже функций вернут TRUE в этой ситуации?

eof(f)
seekeof(f)
eoln(f)
seekeoln(f)


В текстовом файле f указатель находится в начале последней строки, состоящей только из пробельных символов. Какие из перечисленных ниже функций вернут TRUE в этой ситуации?

seekeoln(f)
seekeof(f)
eof(f)
eoln(f)


Сколько полей содержится в записи employee?

type data = record day: 1..31;
                         month: 1..12;
                         year: 1900.. 2100;
                  end;
           employee = record name: string[20];
                             date_entering: data;
                           case trade_union: boolean of
                                       true: (date_enter: data;
                                              leader: boolean);
                                      false: (manager: boolean);
                      end;

5 или 8, в зависимости от значения trade_union
10
3 или 4, в зависимости от значения trade_union
4 или 5, в зависимости от значения trade_union
3
4


Сколько полей содержится в записи man?

type data = record day: 1..31;
                         month: 1..12;
                         year: 1900.. 2100;
                  end;
           man = record name: string[20];
                        date_birth: data;
                        case citizen: boolean of
                                true: (birth_place: string[20]);
                               false: (country: string[20];
                                       date_came: data);
                 end;

3 или 4, в зависимости от значения citizen
10
6 или 9, в зависимости от значения citizen
6
5
4 или 5, в зависимости от значения citizen


Сколько полей содержится в записи person?

type data = record day: 1..31;
                         month: 1..12;
                         year: 1900.. 2100;
                  end;
           person = record name: string[20];
                           date_birth: data;
                         case family_status: char of
                                  'm': (wedding_date: data;
                                        spouse_name: string[20]);
                                  's': (church_celibate: boolean);
                                  'd': (date_divorce: data;);
                                  'w': (date_of_spouse_death: data);
                     end;

5
8 или 9, в зависимости от значения family_status
8
4
4 или 5, в зависимости от значения family_status
3 или 4, в зависимости от значения family_status


Какое значение будет храниться в поле a записи r2 после выполнения следующего блока?

var a: integer;
    r1: record a: longint;
               ...
        end;
    r2: record a: byte;
               ...
        end;
begin
 a:= 0;
 with r2 do
  begin
   a:= 10;
   with r1 do
    begin a:= -r2.a;
          r2.a:= 100;
    end;
   a:= r1.a;
  end;
 a:= -100;
end.

0
246
100
-10
10
-100
156


Какое значение будет храниться в поле a записи r1 после выполнения следующего блока?

var a: integer;
    r1: record a: byte;
               ...
        end;
    r2: record a: shortint;
               ...
        end;
begin
 a:= 0;
 with r1 do
  begin
   r2.a:= -10;
   with r2 do
    begin a:= 100;
          r1.a:= -a;
    end
  end;
 a:= 100;
end.

100
0
10
-10
246
-100
156


Какое значение будет храниться в поле a записи r1 после выполнения следующего блока?

var a: longint;
    r1: record a: word;
               ...
        end;
    r2: record a: integer;
               ...
        end;
begin
 a:= 0;
 with r1 do
  begin
   a:= 1000;
   with r2 do
    begin a:= 1000;
          r1.a:= -a;
    end;
   r2.a:= -100;
  end;
 a:= 100;
end.

64536
0
-1000
1000
100
-100
65436


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

var f: file of <тип_элементов>
var f: file
var f: text


С типизированными файлами могут работать файловые переменные, описанные следующим образом:

var f: file
var f: text
var f: file of <тип_элементов>


С бинарными файлами могут работать файловые переменные, описанные следующим образом:

var f: file
var f: file of <тип_элементов>
var f: text


Чтобы иметь возможность одновременно считывать информацию из текстового файла и записывать ее туда, файл нужно открыть при помощи команды

append(f)
close(f)
reset(f)
rewrite(f)


Чтобы иметь возможность записывать информацию в бинарный файл, его нужно открыть при помощи команды

close(f)
rewrite(f)
append(f)


Чтобы иметь возможность считывать информацию из бинарного файла, его нужно открыть при помощи команды

reset(f)
append(f)
rewrite(f)
close(f)


Какая последовательность символов будет содержаться в файле f: file of char после выполнения следующего отрывка программы:

rewrite(f);
for c:= 'а' to 'р' do write(f,c);    {c: char}
seek(f,10);
read(f,c);
truncate(f);
seek(f,15);
write(f,c);

абвгдежзийлмнопрк
абвгдежзийклмнок
абвгдежзийклмнопк
абвгдежзийклмноп


Какая последовательность символов будет содержаться в файле f: file of char после выполнения следующего отрывка программы:

rewrite(f);
for c:= 'a' to 'p' do write(f,c);    {c: char}
seek(f,10);
read(f,c);
write(f,c);
seek(f,15);
truncate(f);
write(f,c);

abcdefghijkkmnok
abcdefghijklmno
abcdefghijklmnopk
abcdefghijklmnop


Какая последовательность символов будет содержаться в файле f: file of char после выполнения следующего отрывка программы:

rewrite(f);
for c:= '0' to '9' do write(f,c);    {c: char}
seek(f,5);
read(f,c);
write(f,c);
seek(f,3);
truncate(f);
seek(f,9);
write(f,c);

0123455789
0123455785
0123456789
0123456785


Какие вызовы функции

function f(const a:byte; var s:real; t:boolean):real;

являются неправильными с точки зрения компилятора языка Pascal?

x:= f(c,0.175,true); {var c:byte; x:real}
x:= f(k,s,a>b); {var k,a,b:shortint; s,x:real}
x:= f(35*100,c,false); {var x:real; const c:real=10.0}
x:= f(10,s,odd(k)); {var s:double; k:integer; x:real}
x:= f(0,s1+s2,s3<s4); {var x,s1,s2,s3,s4:real}


Какие вызовы процедуры

procedure p(var a: byte; const b: char; x: real);

являются неправильными с точки зрения компилятора языка Pascal?

p(x+y, min('c',s),15/3); {var x,y:byte; const s = 'a'}
p(10,'c',0.5)
p(j,'abc',0.001); {var j:byte}
p(z,inc('f',3),17); {var z:integer}
p(k,c,x); {var k:shortint; c:char; x:real}


Какие вызовы процедуры

procedure p(x:real; const c: byte; var d: integer);

являются неправильными с точки зрения компилятора языка Pascal?

p(i,j,k); {var i,j,k:byte}
p(z,a or b,0); {var z:double; a,b:longint}
p(z*2.5,t,s); {const s:integer =0; t:shortint = -1; var z:longint}
p(100,t,s);
p(0,0,round(k/2)); {var k: integer}


Какие переменные будут существовать во время выполнения подпрограммы p1?

program prog;
var a: byte;
procedure p1;
 function f: boolean;
  var a: byte;
  begin
   ...
  end;
 var a: byte;
 begin
  ...
 end;

procedure p2;
var a: byte;
 begin
  ...
 end;

prog.a
p1.a
f.a
p2.a


Какие переменные будут существовать во время выполнения подпрограммы f?

program prog;
var a: byte;
procedure p1;
 var a: byte;
 begin
  ...
 end;

procedure p2;
 function f: boolean;
  var a: byte;
  begin
   ...
  end;
 var a: byte;
 begin
  ...
 end;

p1.a
p2.a
f.a
prog.a


После завершения работы подпрограммы значение переданной в нее переменной-аргумента не может измениться, если соответствующий параметр был:

параметром-константой (с предикатом const)
параметром-значением (без предиката)
параметром-переменной (с предикатом var)


В качестве аргумента при вызове подпрограммы возможно использовать арифметическое выражение, если соответствующий параметр был

параметром-переменной (с предикатом var)
параметром-значением (без предиката)
параметром-константой (с предикатом const)


После завершения работы подпрограммы значение переданной в нее переменной-аргумента может измениться, если соответствующий параметр был:

параметром-константой (с предикатом const)
параметром-значением (без предиката)
параметром-переменной (с предикатом var)


Какие переменные будут существовать во время выполнения подпрограммы p2?

program prog;
var a: byte;
procedure p1;
 var a: byte;
 begin
  ...
 end;

procedure p2;
 function f: boolean;
  var a: byte;
  begin
   ...
  end;
 var a: byte;
 begin
  ...
 end;

p1.a
f.a
p2.a
prog.a


Какое значение получит переменная a после выполнения такой программы?

var a: byte;
proc p1(var k: byte);
proc p2(t: byte);
 begin t:= t*2 end;
var a: byte;
 begin a:= 1;
       k:= 5;
       p2(k);
 end;
begin
 a:= 10;
 p1(a);
end.

20
2
10
5
1


Какое значение получит переменная a после выполнения такой программы?

var a: byte;
proc p1(var t: byte);
 begin t:= t*2 end;
proc p2(var k: byte);
var a: byte;
 begin a:= 1;
       k:= 5;
       p1(k);
 end;
begin
 a:= 10;
 p2(a);
end.

20
1
10
5
2


Какое значение получит переменная a после выполнения такой программы?

var a: byte;
proc p1(k: byte);
proc p2(var t: byte);
 begin t:= t*2 end;
var a: byte;
 begin a:= 1;
       k:= 5;
       p2(a);
 end;
begin
 a:= 10;
 p1(a);
end.

5
20
2
10
1


Какое из объявлений нетипизированного параметра является правильным?

procedure p(var a)
procedure p(const a)
procedure p(a)


Какое из объявлений открытого параметра-массива является правильным?

procedure p(a: array of real)
procedure p(const a: array of real)
procedure p(var a: array of real)


Какое из объявлений открытого параметра-строки является правильным?

procedure p(s: string)
procedure p(const s: string)
procedure p(var s: string)


Динамическая структура данных, у которой в каждый момент времени доступны первый и последний элементы, причем добавлять новые элементы можно только в конец структуры, а удалять - только из ее начала, называется:

очередью
деком
стеком


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

стеком
очередью
деком


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

стеком
деком
очередью


Описанные ниже подпрограммы

function C: boolean; forward;
function D: boolean; forward;

procedure A;
 begin
  x:= c(x);
  y:= d(y);
 end;

function B: boolean;
 begin
  z:= d(z);
 end;

function C;
 begin
  z:= b(z);
 end;

function D;
 begin
  z:= b(z);
 end;

реализуют косвенную рекурсию
не рекурсивны
реализуют прямую рекурсию


Описанные ниже подпрограммы

function C: boolean; forward;
function D: boolean; forward;

procedure A;
 begin
  x:= c(x);
  y:= d(y);
 end;

function B: boolean;
 begin
  x:= c(x);
 end;

function C;
 begin
  z:= c(z);
 end;

function D;
 begin
  z:= d(z);
 end;

реализуют косвенную рекурсию
не рекурсивны
реализуют прямую рекурсию


Имеется набор натуральных чисел, быть может, с повторениями. Необходимо разделить его на два поднабора так, чтобы разность сумм весов была минимальной. Эта задача решается рекурсивным методом полного перебора с отсечением (см. ниже). На вход были поданы числа 45 48 32 12 12 15 46 2 2 3 15. При какой глубине стека контекстов произойдет завершение работы программы (обращение к завершающей процедуре out())?

{массив а хранит веса всех предметов, в порядке их ввода,
 half - "большая" половина суммы всех весов,
 dif - отклонение текущей найденной суммы от half}
procedure rec(k: byte; sum: longint; var dif: longint);
var i: byte;
begin if sum+a[k]<=half
        then for i:= k+1 to n do rec(i,sum+a[k],dif)
        else if half-sum<dif
              then begin
                    dif:= half-sum;
                    if dif<2 then out(dif){печать и завершение}
                   end
end;

7
11
1
0
4


Имеется набор натуральных чисел, быть может, с повторениями. Необходимо разделить его на два поднабора так, чтобы разность сумм весов была минимальной. Эта задача решается рекурсивным методом полного перебора с отсечением (см. ниже). На вход были поданы числа 36 72 45 2 38 96 15 2 2. При какой глубине стека контекстов произойдет завершение работы программы (обращение к завершающей процедуре out())?

{массив а хранит веса всех предметов, в порядке их ввода,
 half - "большая" половина суммы всех весов,
 dif - отклонение текущей найденной суммы от half}
procedure rec(k: byte; sum: longint; var dif: longint);
var i: byte;
begin if sum+a[k]<=half
        then for i:= k+1 to n do rec(i,sum+a[k],dif)
        else if half-sum<dif
              then begin
                    dif:= half-sum;
                    if dif<2 then out(dif){печать и завершение}
                   end
end;

0
9
7
1
4


Имеется набор натуральных чисел, быть может, с повторениями. Необходимо разделить его на два поднабора так, чтобы разность сумм весов была минимальной. Эта задача решается рекурсивным методом полного перебора с отсечением (см. ниже). На вход были поданы числа 18 32 5 5 6 2 78 4 56 5 2. При какой глубине стека контекстов произойдет завершение работы программы (обращение к завершающей процедуре out())?

{массив а хранит веса всех предметов, в порядке их ввода,
 half - "большая" половина суммы всех весов,
 dif - отклонение текущей найденной суммы от half}
procedure rec(k: byte; sum: longint; var dif: longint);
var i: byte;
begin if sum+a[k]<=half
        then for i:= k+1 to n do rec(i,sum+a[k],dif)
        else if half-sum<dif
              then begin
                    dif:= half-sum;
                    if dif<2 then out(dif){печать и завершение}
                   end
end;

11
5
0
9
1

Вы можете обратится к нам напрямую, через:

skype По Skype: molodoyberkut
telegram По Telegram: @MolodoyBerkut
icq По ICQ: 657089516

Или через форму обратной связи на нашем сайте
Пока сочиняется...
4.png