Главная / Программирование / Программирование на языке высокого уровня Паскаль

Программирование на языке высокого уровня Паскаль - ответы на тесты Интуит

Правильные ответы выделены зелёным цветом.
Все ответы: Курс является введением в программирование на языке Паскаль (Pascal).
Алфавит языка Паскаль включает в себя:
(1) латинские буквы
(2) русские буквы
(3) цифры от 0 до 9
(4) символы псевдографики
Основное правило структурного программирования состоит в том, что:
(1) структура программы задается на этапе составления алгоритма
(2) программа составляется только из базовых конструкций: следования, ветвления и цикла, которые могут вкладываться друг в друга
(3) в программе могут использоваться только определенные структуры данных
(4) программа состоит из подпрограмм, организованных в определенную структуру
С переменными, относящимися к перечисляемому типу данных, можно выполнять операции:
(1) присваивания
(2) сложения
(3) вывода на экран
(4) отношения
Выберите все правильные утверждения.
(1) глобальные переменные можно использовать в подпрограммах
(2) глобальные переменные располагаются в сегменте данных
(3) компилятор инициализирует нулями глобальные и локальные переменные
(4) функция может возвращать через свое имя значение любого типа
Для указателей в Паскале определены операции:
(1) сравнения на равенство
(2) сложения
(3) вычитания
(4) сравнения на больше-меньше
(5) присваивания
Основные особенности объективно-ориентированного языка (выберите наиболее точный ответ):
(1) множественное наследование и полиморфизм.
(2) абстрактные типы данных и сохранение состояний.
(3) перегрузка операций и обработка исключений.
(4) инкапсуляция, наследование, полиморфизм.
В чем состоит процесс раннего связывания?
(1) на место вызова подпрограммы компилятор вставляет переход на ее начало
(2) на место вызова подпрограммы компилятор вставляет адрес ее начала
(3) на место вызова подпрограммы компилятор вставляет ее код
Элементарные конструкции языка Паскаль включают в себя:
(1) скобки
(2) числа
(3) знаки операций
(4) имена
В условном операторе после ключевого слова then может находиться
(1) любой оператор, кроме оператора перехода
(2) любой простой или составной оператор
(3) не больше двух операторов
(4) составной оператор
Выберите все правильные утверждения.
(1) величины типа string можно сравнивать между собой
(2) под величину типа string[10] отводится 10 байт
(3) величины типа string можно складывать и умножать
(4) в элементе строки с номером 0 хранится фактическая длина строки
(5) 0 является признаком конца строки
Параметр подпрограммы описан как const a:word . Соответствующий ему аргумент может быть:
(1) только переменной типа word с именем а
(2) выражением любого целого типа
(3) переменной любого целого типа
(4) выражением любого типа
Указателю типа pointer можно присвоить
(1) NIL
(2) nul
(3) другой указатель того же типа
(4) другой указатель произвольного типа
(5) 0
Инкапсуляция приводит к
(1) упрощению структуры программы
(2) уменьшению степени абстракции программы
(3) упрощению поиска ошибок
(4) упрощению внесения изменений в программу
Может ли объект иметь более одного конструктора?
(1) да
(2) нет
(3) может, но только по понедельникам
Выберите все допустимые в Паскале константы
(1) 'Ж'
(2) '1'
(3) 1.2 e1
(4) 'ab''ba'
(5) 'вася'
Чему будет равно значение переменной А после выполнения фрагмента программы, если В=3? A := 2; if В <= 4 then C := 1 else C := 0; A := C;
(1) 1
(2) 2
(3) 3
(4) 4
Какое число получится в результате работы программы? const a : array[1..8] of integer = (3,8,0,-6,0,-1,-9,3); var i,k : integer; begin k := a[1]; for i := 2 to 8 do if a[i] >k then k := a[i]; write(k) end.
(1) 7
(2) 8
(3) 9
(4) 10
Заголовок подпрограммы имеет вид:Procedure P(a:integer; var b,c:word; d:real); Укажите правильные варианты вызова подпрограммы, если переменные в вызывающей программе описаны так: var a:integer; b,k:word; e:integer; d,x:real;
(1) P(a,b,k,d);
(2) P(a,b,e,d);
(3) P(k,b,k,x);
(4) P(a+e div 2,b,k,d-x/2);
(5) P(a,d,k,b);
Для освобождения памяти в языке Паскаль применяются процедуры:
(1) Close
(2) Delete
(3) Dispose
(4) DisposeMem
Инкапсуляция это:
(1) объединение всех данных программы в один объект.
(2) сокрытие информации.
(3) объединение данных и функций программы.
(4) использование объекта через его интерфейс
Можно ли в объекте-потомке заменить статический метод виртуальным?
(1) да
(2) нет
Выберите все допустимые в Паскале константы
(1) -7
(2) 00
(3) "w"
(4) 1.2 e1
(5) $01
Чему будет равно значение переменной А после выполнения фрагмента программы, если В=5? if В <= 4 then C := 1 else C := 0; A := C;
(1) 0
(2) 1
(3) 2
(4) 3
Какое число получится в результате работы программы? const a : array[1..8] of integer = (3,8,0,-6,0,-1,-9,3); var i,j,k : integer; begin k := 0; j := 4; for i := 1 to 8 do if abs(a[i]) >j then k := a[i]; write(k) end.
(1) -6
(2) -7
(3) -8
(4) -9
Заголовок подпрограммы имеет вид: Procedure P( a:integer; b:word; var c: word; var d:real); Укажите правильные варианты вызова подпрограммы, если переменные в вызывающей программе описаны так: var a:integer; b,k:word; e:integer; d,x:real;
(1) P(1,1,k,d);
(2) P(a,3,b,d);
(3) P(a+3,b,k,x);
(4) P(e,b,k,d-x/2);
(5) P(e,b,b,b);
Для освобождения памяти в языке Паскаль применяются процедуры:
(1) ReleaseMem
(2) Dealloc
(3) Release
(4) EraseMem
Проект так относится к зданию, как класс к ...
(1) абстрактному типу данных
(2) экземпляру
(3) интерфейсу
(4) подклассу
Если метод будет выполнять в потомках объекта одни и те же функции, его следует описать как
(1) виртуальный
(2) статический
(3) абстрактный
Выберите все допустимые в Паскале константы
(1) &
(2) # 2
(3) 26.4
(4) $A0
(5) >
Чему будет равно значение переменной А после выполнения фрагмента программы, если В=2? a:=1; if (b>0) and (b<2) then a:=3; if b>5 then a:=5;
(1) 0
(2) 1
(3) 2
(4) 3
Какое число получится в результате работы программы? const a : array[1..8] of integer = (3,8,0,-6,0,-1,-9,3); var i,j,k : integer; begin k := 0; j := 2; for i := 1 to 8 do if a[i] < j then inc(k); write(k) end.
(1) 3
(2) 4
(3) 5
(4) 6
Что будет выведено на экран в результате работы программы? var a,b,c,d: integer; Procedure P( var a,c,d: integer); var b: integer; begin a:=5; c:=7; b:=9; end; begin a:=1; b:=1; c:=1; P(a,b,c); write (a,'|',b,'|',c) end.
(1) <4|7|1>
(2) <5|7|1>
(3) <6|7|1>
Даны описания: type tarr = array[1..10] of real; parr = ^tarr; var p : parr; Укажите правильный вариант обращения к третьему элементу массива:
(1) p[3]
(2) ^parr[3]
(3) p^[3]
(4) parr^[3]
(5) tarr[3]
Можно ли описывать объектный тип в подпрограммах?
(1) да
(2) нет
Выполняются ли преобразования типа при передаче объекта в подпрограмму по адресу?
(1) да
(2) нет
Число -300 можно хранить в переменной типа
(1) byte
(2) word
(3) shortint
(4) integer
(5) real
(6) single
Чему будет равно значение переменной m после выполнения программы? var k,m : word; begin k:=3; m:=0; while k<3 do begin inc(k); inc(m); end; end;
(1) 0
(2) 1
(3) 2
(4) 3
Выберите заголовки подпрограмм, не содержащие синтаксических ошибок
(1) function f(var i:byte; j:byte):byte;
(2) function f1(var i;j):byte;
(3) function f(var ibyte:byte):byte;
(4) function f(var i:byte);
Даны описания: type tzap = record x: array[1..10] of real; end; pzap = ^tzap; var p : pzap; Укажите правильный вариант обращения к третьему элементу массива:
(1) p^[3]
(2) pzap^[3]
(3) ^p.x[3]
(4) ^tzap.x[3]
(5) p^.x[3]
Могут ли совпадать имена параметров метода и имена полей объекта?
(1) да
(2) нет
(3) при определенных условиях - могут
Методы, которые в разных объектах иерархии выполняют одно и то же по смыслу действие разными способами, следует объявлять как
(1) статические
(2) виртуальные
(3) абстрактные
Число -1 можно хранить в переменной типа
(1) byte
(2) word
(3) shortint
(4) integer
(5) longint
(6) real
Чему будет равно значение переменной m после выполнения программы? var k,m : word; begin m:=0; for k:=1 to 2 do inc(m); inc(m); end;
(1) 0
(2) 1
(3) 2
(4) 3
Какую величину вычисляет программа? const a : array[1..8] of integer = (3,8,0,-6,0,-1,-9,3); var i,k : integer; begin k := 0; for i := 1 to 8 do if a[i] < 0 then k := k + i; write(k) end.
(1) сумму номеров отрицательных элементов массива
(2) сумму отрицательных элементов массива
(3) количество отрицательных элементов массива
(4) количество номеров отрицательных элементов массива
Заголовок подпрограммы имеет вид: Procedure P(a: string; var b: real; c:real); Укажите правильные варианты вызова подпрограммы, если переменные в вызывающей программе описаны так: var a:string; b,x:real; c:string[5]; d:integer;
(1) P(a,b,x);
(2) P(c,b,d);
(3) P(a,x,c);
(4) P(a,d,b);
Даны описания: type tzap = record x: array[1..10] of real; end; pzap = ^tzap; var p : pzap; Укажите правильный вариант обращения к третьему элементу массива:
(1) tzap^.x[3]
(2) p^.x[3]
(3) p.x^[3]
(4) x.p^[3]
(5) pzap.x^[3]
Обязательно ли использовать оператор with при обращении к полям объекта внутри метода?
(1) да
(2) нет
(3) иногда
При использовании New для выделения памяти под объект в виде функции ее вторым параметром является:
(1) указатель на экземпляр объекта
(2) тип объекта
(3) экземпляр объекта
(4) обращение к конструктору объекта
В переменной типа word можно хранить число
(1) 13
(2) 213
(3) -13
(4) -213
(5) 32000
(6) 64000
Чему будет равно значение переменной m после выполнения программы? var k,m : word; begin m:=1; for k:=3 downto 1 do; inc(m); end;
(1) 0
(2) 1
(3) 2
(4) 3
Какую величину вычисляет программа? const a : array[1..8] of integer = (3,8,0,-6,0,-1,-9,3); var i,j,k : integer; begin k := 0; j := 4; for i := 1 to 8 do if abs(a[i]) >j then k := a[i]; write(k) end.
(1) первый из элементов массива, больший, чем 4
(2) первый из элементов массива, больший по модулю, чем 4
(3) модуль последнего из элементов массива, больших, чем 4
(4) модуль первого из элементов массива, больших, чем 4
(5) последний из элементов массива, больший по модулю, чем 4
Заголовок подпрограммы имеет вид: Procedure P(a: string; b: char; c:real); Укажите правильные варианты вызова подпрограммы, если переменные в вызывающей программе описаны так: var a:string; b,x:real; c:string[5]; d:integer;
(1) P(a,b,c);
(2) P(a+c,c[4],d-1);
(3) P(c+'a',a[4],b-x+2*d);
(4) P(a,d,x);
Выберите операции, определенные для стека
(1) занесение элемента в произвольную позицию
(2) добавление элемента в вершину стека
(3) корректировка произвольного элемента стека
(4) удаление группы элементов из середины стека
Дано описание объектов: type A = Object Y : Integer; end; var a1:A; a2:^A; Укажите правильные способы обращения к полям этих объектов:
(1) a2^.Y
(2) ^a2.Y
(3) ^A.Y
(4) A^.Y
Какие действия выполняет пустой деструктор?
(1) освобождает память
(2) считывает из VMT фактический размер объекта
(3) никаких
Выберите все правильные утверждения.
(1) результат операции сложения целых чисел - целый
(2) результат любых операций над целыми числами - целый
(3) результат операций сравнения целых чисел - целый
(4) результат стандартных тригонометрических функций с аргументами целого типа - действительный
Какой из перечисленных операторов является оператором множественного выбора в Паскале?
(1) if
(2) switch
(3) continue
(4) break
(5) case
Какую величину вычисляет программа? var a : array[1..3,1..4] of integer; var i,j,k : integer; begin for i := 1 to 3 do for j := 1 to 4 do read(a[i,j]); k:=0; for j := 1 to 4 do for i := 1 to 3 do if a[i,j]=0 then k:=j write(k) end.
(1) номер первого из столбцов массива, содержащих хотя бы один элемент, равный 0
(2) номер последнего из столбцов массива, содержащих хотя бы один элемент, равный 0
(3) количество положительных элементов массива в каждом столбце
(4) номер первой из строк массива, содержащих хотя бы один элемент, равный 0
(5) номер последней из строк массива, содержащих хотя бы один элемент, равный 0
Что будет выведено на экран в результате работы программы? var a,b: string; Procedure P( var a: string; b: string); begin a[1]:=b[1]; b[2]:=a[2]; end; begin a:='abcd'; b:= 'opr'; P(a,b); write (a,b) end.
(1) obcdopr
(2) dopr
(3) obcdo
Выберите операции, определенные для очереди
(1) удаление элемента из конца очереди
(2) занесение элемента в конец очереди
(3) корректировка произвольного элемента очереди
(4) удаление произвольного элемента
Дано описание объектов: type T = Object Y : Integer; end; var x: T; z: ^T; Укажите правильные способы обращения к полям этих объектов:
(1) z^.Y
(2) ^z.Y
(3) Y.x
(4) T.x.Y
Дано описание объектов: type A = Object Y : Integer; end; B = Object (A) Z,T : Integer; end; var a1:A; b1:B; Сколько байтов в памяти занимают все поля объекта b1 ?
(1) 1
(2) 2
(3) 4
(4) 6
Выберите все правильные утверждения.
(1) результат операции сложения действительного и целого числа - действительный
(2) в выражении можно использовать операнды булевского типа
(3) результат стандартных функций sin и cos с аргументом целого типа - целый
(4) результат операций сравнения действительных чисел - целый
Какой из перечисленных операторов является оператором немедленного прекращения цикла?
(1) if
(2) switch
(3) break
(4) continue
Даны описания: type tarr = array [1 ..10] of real; tzap = record a : real; c : tarr; end; var x : tzap; Укажите синтаксически правильные варианты обращения к полям записи:
(1) tzap.tarr[1]
(2) x.c[1]
(3) tzap.a
(4) a.tzap
Выберите операции, определенные для очереди
(1) занесение элемента в конец очереди
(2) корректировка произвольного элемента очереди
(3) поиск элемента
(4) занесение элемента в произвольную позицию очереди
Дано описание объектов: type T = Object Y : Integer; function P ( Z : integer):integer; end; var a:^T; i: integer; c: char; Укажите правильный способ обращения к методу P этого объекта:
(1) i := a^.P();
(2) i := a^.P( 1 );
(3) i := ^a.P (5);
(4) c := a^.P( 20 );
Дано описание объектов: type A = Object Y : Integer; end; B = Object (A) Z,T : Integer; end; var b1:B; Укажите правильные способы обращения к полям объекта:
(1) B.Z
(2) Y.B
(3) b1.T
(4) T.b1
Таблица истинности какой логической операции приведена ниже? a b a <операция> b false false false false true false true false false true true true
(1) and
(2) or
(3) xor
Даны описания: type tarr = array [1 ..10] of real; tzap = record c : real; a : tarr; end; var x : array [1 .. 10] of tzap; Укажите синтаксически правильные варианты обращения к полям записи:
(1) c.x[1]
(2) x[1].a[1]
(3) a.x[1]
(4) x.c[1]
Выберите все правильные утверждения.
(1) интерфейсной части модуля описываются типы, которые можно использовать только внутри модуля
(2) в разделе реализации модуля можно описывать константы
(3) если в программе используется переменная с тем же именем, что и в подключенном к ней модуле, воспользоваться переменной из модуля невозможно
(4) модуль можно подключить к нескольким программам
Выберите все правильные утверждения.
(1) размер динамической структуры данных должен быть задан до начала работы программы
(2) динамическая структура данных занимает непрерывную область памяти
(3) стек реализует дисциплину обслуживания LIFO
(4) время доступа к элементу в бинарном дереве поиска пропорционально квадрату количества элементов в дереве
Директива Private запрещает доступ к элементам объекта
(1) из других объектов в том же модуле
(2) только из других модулей
Дано описание объектов: type A = Object constructor Init; procedure foo; virtual; end; B = Object (A) procedure foo; virtual; end; pb = ^B; var a1:^A; begin a1 := New(pB); a1^.foo; Процедура foo какого объекта будет вызвана?
(1) А
(2) В
Чему равно значение выражения (not ( a and b or c )), где a, b и с - величины типа boolean , имеющие значения true , true и false соответственно?
(1) false
(2) true
Даны описания: type tarr = array [1 ..10] of real; tzap = record c : real; a : tarr; end; var x : array [1 .. 10] of tzap; Укажите синтаксически правильные варианты обращения к полям записи:
(1) c.x[1]
(2) x[1].a[1]
(3) x[1].c
(4) x[a]
Выберите все правильные утверждения.
(1) в части реализации модуля описываются типы, которые можно использовать только вне модуля
(2) в разделе реализации модуля можно описывать переменные
(3) модуль подключается к программе в скомпилированном виде
(4) модуль должен содержать раздел инициализации
Выберите все правильные утверждения.
(1) при чтении элемент удаляется из списка.
(2) двунаправленный список реализует дисциплину обслуживания FIFO
(3) размер динамической структуры данных может изменяться во время работы программы
(4) время доступа к элементу в линейном списке пропорционально десятичному логарифму количества его элементов
Стиль ООП рекомендует объявлять методы с директивой
(1) private
(2) public
(3) все равно
Чему равно значение выражения (a and not b xor c) , где a, b и с - величины типа boolean , имеющие значения false , true и true соответственно?
(1) false
(2) true
Дан фрагмент программы: var Buf:array[1..100] of real; f: file; begin assign(f, 'bfile.dat'); reset(f, 30); Blockread(f, Buf, 2); … Сколько байтов будет считано из файла?
(1) 3000
(2) 30
(3) 60
(4) 2
(5) 100
(6) 200
Чему равно числовое значение выражения sqrt(e)+1e2/20*a при e=4, a=2
(1) 4,5
(2) 5,55
(3) 16,2
(4) 12
(5) 26
(6) 30,2
Дан фрагмент программы: var Buf:array[1..20] of word; f: file; begin assign(f, 'bfile.dat'); reset(f, 6); Blockread(f, Buf, 4); … Сколько байтов будет считано из файла?
(1) 120
(2) 4
(3) 6
(4) 20
(5) 24
(6) 80
Выберите все правильные утверждения.
(1) под величину типа boolean отводится 1 байт
(2) величины типа boolean можно складывать друг с другом
(3) величины типа boolean можно умножать на константу
(4) к величинам типа boolean применимы операции and, or и xor
Выберите все правильные утверждения.
(1) поле записи, в свою очередь, может быть записью
(2) записи одного типа можно присваивать друг другу
(3) имена полей в разных записях не могут совпадать
(4) поле записи не может быть массивом
Символьная переменная может принимать значения
(1) только из алфавита языка Паскаль
(2) из набора допустимых в компьютере символов
(3) только символов английского алфавита
(4) только из набора допустимых в компьютере символов, кроме управляющих символов
Выберите все правильные утверждения.
(1) бестиповой файл можно открыть для чтения и записи одновременно
(2) запись в компонентный файл выполняется с помощью процедуры blockwrite
(3) при записи в компонентный файл для каждой переменной выполняется преобразование в символьную форму представления
(4) текстовый файл можно открыть для добавления информации в конец
Выберите все правильные утверждения.
(1) все неизменяемые величины описываются в разделе описания констант
(2) в разделе описания констант описываются именованные константы
(3) все величины, описанные в разделе описания констант, не могут изменить свои значения
(4) в разделе описания констант можно описать и константы, и переменные
Выберите все правильные утверждения.
(1) размером буфера ввода-вывода можно управлять
(2) размер буфера ввода-вывода задается в опциях компилятора
(3) компонентный файл состоит из блоков одинаковой длины
(4) бестиповой файл можно открыть для чтения и записи одновременно
Какие выражения не содержат синтаксических ошибок?
(1) -0.18*Pi/r-0.2*t
(2) (-0.18)*Pi)/(r-0.2*t)
(3) cos^2*x+0,2
(4) (-0.18)*Pi)\(r-0.2*t))
Какие выражения не содержат синтаксических ошибок?
(1) sin(abs(0.6(e*3))
(2) $EF01*1.34E-2/i/_1
(3) ((cos(3*Pi+1.*abs(x))))
(4) Pi*exp(t)\(2t)
Какие из выражений имеют значение true , если а=1?
(1) (a=2) or true
(2) (a=1) and true
(3) (a=2) and true
(4) (a=1) and false
Что будет выведено на экран в результате работы программы var k:byte; x:real; begin k := 2; x := 1; write ('*', '*',x:4:1, k:k, '* *'); end.
(1) * * 1 2 *.*
(2) ** 1.0 2* *
(3) * * 1.0 2.0 *.*
(4) ** 1.02.0 *.*
(5) ** 1.0 2.0 *.*
Что будет выведено на экран в результате работы программы var i:word; t:single; begin i := 2; t := 2; write ('/', t:4:1, i:3, i, '/'); end.
(1) / 2.0 2 2/
(2) /2.0 2 2/
(3) /2.0 2.2/
(4) / 2.0 22/
(5) / 2 22/
Найдите операторы вывода, не содержащие синтаксических ошибок (var k:integer; x,y:real;)
(1) write ('*', x:4, k, y:k:2, '*');
(2) write ('*', x, k, y:4:2, '*');
(3) write ('* , x, k, y:k:2, *');
(4) write ('*', x, k:4:2, y:4:2,'*');
Если данные в программе вводятся с помощью оператора Read(a,b,c,d) , то располагать числовые значения при вводе требуется
(1) на одной строке
(2) в столбик
(3) произвольно
При использовании в программе процедуры Read требуется разделять числовые значения величин при вводе при помощи
(1) только одного пробела
(2) произвольного количества пробелов
(3) нажатия клавиши TAB
(4) клавиш со стрелками
В списке параметров процедуры Write могут присутствовать
(1) имена переменных и констант
(2) зарезервированные слова
(3) выражения
(4) операторы
Какие символы используются в качестве признака начала комментария?
(1) {
(2) /*
(3) (*
(4) '
Какие символы используются в качестве признака конца комментария?
(1) /*
(2) */
(3) |
(4) *)
В условном операторе после ключевого слова if может находиться
(1) выражение булевского типа
(2) вложенный условный оператор
(3) переменная целого типа
(4) константа false
При описании массива тип индекса может быть:
(1) типа integer
(2) перечисляемым
(3) типа byte
(4) любым
Выберите все правильные утверждения.
(1) для локальных переменных выделяется место в стеке
(2) процедура возвращает значение через свое имя
(3) для параметров, передаваемых по адресу, в стек заносится только их адрес
(4) функция может возвращать через список параметров более одного значения
Для указателей в Паскале определены операции:
(1) сравнения на больше-меньше
(2) инкремента
(3) cравнения на равенство
(4) ввода
(5) присваивания
Инкапсуляция - это:
(1) возможность называть одним и тем же именем разные подпрограммы
(2) объединение в одном классе данных и методов их обработки
(3) создание иерархии объектов
(4) сокрытие деталей реализации
Одна таблица виртуальных методов строится для каждого
(1) типа объекта
(2) экземпляра объекта
(3) метода объекта
Дан фрагмент программы: var Buf:array[1..10] of single; f: file; begin assign(f, 'bfile.dat'); reset(f, 4); Blockread(f, Buf, 5); … Сколько байтов будет считано из файла?
(1) 50
(2) 4
(3) 5
(4) 10
(5) 20
(6) 40
Алфавит языка Паскаль включает в себя:
(1) русские буквы
(2) знаки +, -, *, /
(3) знаки <, >, @, { }
(4) символы :, ;
Особенность базовых конструкций структурного программирования состоит в том, что:
(1) они соответствуют структурам данных, используемым в программе
(2) они записываются одинаково на всех языках, поддерживающих структурную технологию программирования
(3) они имеют только один вход и один выход
(4) они состоят из одинаковых блоков
С переменными, относящимися к перечисляемому типу данных, можно выполнять операции:
(1) присваивания
(2) сложения
(3) умножения на константу
(4) сравнения на равенство и неравенство
Выберите все правильные утверждения.
(1) глобальные переменные нужно передавать в подпрограмму через список параметров
(2) место под формальные параметры выделяется на стадии выполнения программы
(3) компилятор инициализирует нулями глобальные переменные
(4) функция может возвращать через свое имя значение стандартного типа
Для указателей в Паскале определены операции:
(1) сравнения на равенство
(2) ввода
(3) вывода
(4) умножения
(5) деления
Технология ООП по сравнению с традиционной позволяет создавать:
(1) более читабельные программы
(2) более быстродействующие программы
(3) программы, допускающие более простую модификацию
(4) более короткие программы
Может ли конструктор быть виртуальным?
(1) да
(2) нет
Элементарные конструкции языка Паскаль включают в себя:
(1) знаки операций
(2) десятичные числа
(3) восьмеричные числа
(4) имена
В условном операторе после ключевого слова if может находиться
(1) переменная булевского типа
(2) выражение целого типа
(3) переменная символьного типа
(4) константа true
Выберите все правильные утверждения.
(1) под величину типа string отводится 256 байт
(2) величины типа string можно сравнивать между собой
(3) величины типа string можно складывать друг с другом
(4) величины типа string можно вычитать друг из друга
(5) результат сравнения величин типа string имеет тип string
Параметр подпрограммы описан как var a:word . Соответствующий ему аргумент может быть:
(1) константой типа word
(2) переменной типа word
(3) переменной любого целого типа
(4) только переменной типа word с именем а
Указателю на конкретный тип данных можно присвоить
(1) NIL
(2) nul
(3) другой указатель того же типа
(4) другой указатель произвольного типа
(5) 0
Преимуществами ООП являются:
(1) возможность использования в новых программах ранее созданных объектов
(2) увеличение быстродействия программы
(3) простота использования
(4) легкость внесения изменений в программу
Можно ли использовать в теле конструктора виртуальные методы?
(1) да
(2) нет
Выберите все допустимые в Паскале константы
(1) 259
(2) 00
(3) 'ф'
(4) 1.2 e1
(5) $010E
В условном операторе после ключевого слова else может находиться
(1) любой оператор
(2) любой оператор, кроме оператора перехода
(3) произвольное количество операторов
(4) составной оператор
Выберите все правильные утверждения.
(1) под величину типа string отводится 255 байт
(2) 'abc' < 'abc '
(3) 'ab'+'c' = 'abc'
(4) в элементе строки с номером 0 хранится количество байт, отведенное под строку
(5) для вывода строки на экран нужно организовать цикл по ее элементам
Параметр подпрограммы описан как var a (без типа).Соответствующий ему аргумент может быть:
(1) константой
(2) переменной любого типа
(3) только переменной с именем а
(4) выражением любого типа
Указателю типа pointer можно присвоить
(1) 0
(2) результат операции взятия адреса
(3) переменную целого типа
(4) константу целого типа
(5) переменную любого типа
Какое свойство ООП позволяет скрыть от других частей программы детали реализации объекта?
(1) инкапсуляция
(2) наследование
(3) полиморфизм
(4) абстрагирование
Можно ли при переопределении статического метода в потомке изменить количество его параметров?
(1) да
(2) нет
Выберите все допустимые в Паскале константы
(1) *
(2) #200
(3) -126
(4) $FFG0
(5) ^C
Чему будет равно значение переменной А после выполнения фрагмента программы, если В=3? A := 2; if В <= 4 then begin C := 1 end else begin C := 0; A := C; end;
(1) 1
(2) 0
(3) -1
(4) 2
Какое число получится в результате работы программы? const a : array[1..8] of integer = (3,8,0,-6,0,-1,-9,3); var i,k : integer; begin k := a[8]; for i := 1 to 8 do if a[i] < k then k := a[i]; write(k) end.
(1) -8
(2) -7
(3) -9
(4) -10
Заголовок подпрограммы имеет вид: Procedure P(var a:integer; b,c:word; d:real); Укажите правильные варианты вызова подпрограммы, если переменные в вызывающей программе описаны так: var a:integer; b,k:word; e:integer; d,x:real;
(1) P(a,b,k,d);
(2) P(a,b,e,d);
(3) P(k,b,k,x);
(4) P(2,b,k,d-x/2);
(5) P(a,d,k,b);
Для освобождения памяти в языке Паскаль применяются процедуры:
(1) Mark
(2) Dispose
(3) MemFree
(4) MemClose
Что обычно содержит класс?
(1) данные и информацию о них
(2) данные и методы
(3) массивы данных
(4) массивы методов
Можно ли в объекте-потомке заменить виртуальный метод статическим?
(1) да
(2) нет
Выберите все допустимые в Паскале константы
(1) '\'
(2) $FFG0
(3) -7.12e-13
(4) 'Ж'
(5) 0001
Чему будет равно значение переменной a после выполнения фрагмента программы, если b=0? a:=1; if b<1 then a:=2; if b>5 then a:=3;
(1) 0
(2) 1
(3) 2
(4) 3
Какое число получится в результате работы программы? const a : array[1..8] of integer = (3,8,0,-6,0,-1,-9,3); var i,j,k : integer; begin k := 0; j := 4; for i := 1 to 8 do if a[i] >j then k := abs(a[i]); write(k) end.
(1) 8
(2) 7
(3) 6
(4) 5
Что будет выведено на экран в результате работы программы? var a,b,c,d: integer; Procedure P( a: integer; var c: integer; var d: integer); var b: integer; begin a:=5; c:=7; b:=9; end; begin a:=1; c:=1; b:=1; P(a,c,b); write (a,'|',c,'|',b) end.
(1) <1|7|1>
(2) <1|8|1>
(3) <1|9|1>
Даны описания: type tarr = array[1..10] of real; parr = ^tarr; var p : parr; Укажите правильный вариант обращения к третьему элементу массива:
(1) p^[3]
(2) parr[3]^
(3) tarr[3]^
(4) ^p[3]
(5) ^tarr[3]
В объектно-ориентированной программе объекты обмениваются между собой
(1) данными
(2) методами
(3) сообщениями
(4) информацией
Допустимы ли присваивания
(1) экземпляру объекта-потомка экземпляра объекта-предка
(2) экземпляра объекта-потомка экземпляру объекта-предка
(3) указателю на экземпляр объекта-потомка указателя на экземпляр объекта-предка
(4) указателя на экземпляр объекта-потомка указателю на экземпляр объекта-предка
Выберите все допустимые в Паскале константы
(1) #0.7
(2)
(3) 'a''a'
(4) 7.2.e+3
(5) -1e-1
Чему будет равно значение переменной А после выполнения фрагмента программы, если В=2? a:=1; if (b>0) and (b<3) then a:=3 else if b>5 then a:=5;
(1) 0
(2) 1
(3) 2
(4) 3
Какое число буден выведено в результате работы программы? const a : array[1..8] of integer = (3,8,0,-6,0,-1,-9,3); var i,k : integer; begin k := 1; for i := 1 to 8 do if a[i] = 0 then k := i; write(k) end.
(1) 2
(2) 3
(3) 4
(4) 5
Что будет выведено на экран в результате работы программы? var a,b,c,d: integer; Procedure P( var a: integer; c: integer; var d: integer); var b: integer; begin a:=5; c:=7; d:=9; end; begin a:=1; b:=1; c:=1; P(a,b,c); write (a,'|',b,'|',c) end.
(1) <3|1|9>
(2) <4|1|9>
(3) <5|1|9>
Даны описания: type tarr = array[1..10] of real; parr = ^tarr; var p : parr; Укажите правильный вариант обращения к третьему элементу массива:
(1) ^parr[3]
(2) p^[3]
(3) tarr^[3]
(4) ^p[3]
(5) ^tarr[3]
Где располагается тело метода?
(1) внутри описания объекта
(2) после описания объекта
(3) до описания объекта
(4) в произвольном месте программы
Выполняются ли преобразования типа при передаче объекта в подпрограмму по значению?
(1) да
(2) нет
Число 33333 можно хранить в переменной типа
(1) byte
(2) word
(3) shortint
(4) integer
(5) longint
(6) double
Чему будет равно значение переменной m после выполнения программы? var k,m : integer; begin k:=3; m:=0; while k<0 do dec(k); inc(m); end;
(1) 0
(2) 1
(3) 2
(4) 3
Выберите заголовки подпрограмм, не содержащие синтаксических ошибок
(1) function f(var i:array of word):real;
(2) function f(var i:array[1..10] of word):byte;
(3) function f(var i,j:word):real;
(4) function f(var i:byte);
Даны описания: type tzap = record x: array[1..10] of real; end; pzap = ^tzap; var p : pzap; Укажите правильный вариант обращения к третьему элементу массива:
(1) p[3].x
(2) p^.x[3]
(3) ^pzap.x[3]
(4) pzap^.x[3]
(5) tzap[3].x
При описании метода перед его именем указывается
(1) имя типа объекта
(2) имя экземпляра объекта
(3) имя поля объекта
(4) имя объекта-предка
(5) ничего не указывается
При использовании New для выделения памяти под объект в виде функции ее первым параметром является:
(1) указатель на экземпляр объекта
(2) тип объекта
(3) экземпляр объекта
(4) тип указателя на объект
В переменной типа byte можно хранить число
(1) 13
(2) 213
(3) -13
(4) -213
(5) 1213
(6) -1213
Чему будет равно значение переменной m после выполнения программы? var k,m : word; begin m:=1; for k:=1 to 2 do begin inc(m); inc(k,2); end; end;
(1) 0
(2) 1
(3) 2
(4) 3
Какую величину вычисляет программа? const a : array[1..8] of integer = (3,8,0,-6,0,-1,-9,3); var i,k : integer; begin k := 1; for i := 8 downto 1 do if a[i] = 0 then k := i; write(k) end.
(1) номер первого элемента, равного нулю
(2) номер последнего элемента, равного нулю
(3) количество элементов, равных нулю
(4) элемент массива, номер которого равен нулю
Заголовок подпрограммы имеет вид: Procedure P(a: string; var b: char; c:real); Укажите правильные варианты вызова подпрограммы, если переменные в вызывающей программе описаны так: var a:string; b,x:real; c:string[5]; d:integer;
(1) P(a,b,c);
(2) P(a+c,c[4],d-1);
(3) P(c,a[4],b);
(4) P(a,c,x);
Даны описания: type tzap = record x: array[1..10] of real; end; pzap = ^tzap; var p : pzap; Укажите правильный вариант обращения к третьему элементу массива:
(1) pzap.x^[3]
(2) p^.x[3]
(3) x[3].p^
(4) tzap.x^[3]
(5) ^tzap.p[3]
Где располагаются заголовки методов внутри описания объекта?
(1) до описания полей данных
(2) после описания полей данных
(3) в произвольном порядке
При использовании New для выделения памяти под объект в виде процедуры ее вторым параметром является:
(1) указатель на экземпляр объекта
(2) тип объекта
(3) тип указателя на объект
(4) обращение к конструктору объекта
В переменной типа shortint можно хранить число
(1) 13
(2) 213
(3) -13
(4) -213
(5) 32000
(6) 64000
Что можно сказать о приведенном ниже коде? const x : integer = 1; var i : integer; begin for i := 1 to 4 do begin if (i = 3) then continue else if (i = 4) then break; inc(x); end; end.
(1) при достижении конца цикла переменная 'x' будет равна 1
(2) при достижении конца цикла переменная 'x' будет равна 2
(3) при достижении конца цикла переменная 'x' будет равна 3
(4) при достижении конца цикла переменная 'x' будет равна 4
(5) переменная 'x' не увеличится
Какую величину вычисляет программа? var a : array[1..3,1..4] of integer; var i,j,k : integer; begin for i := 1 to 3 do for j := 1 to 4 do read(a[i,j]); for i := 1 to 3 do begin k := 0; for j := 1 to 4 do if a[i,j] >0 then inc(k); end; write(k) end.
(1) количество положительных элементов массива
(2) количество положительных элементов массива в каждой строке
(3) количество положительных элементов массива в последней строке
(4) количество положительных элементов массива в последнем столбце
(5) количество положительных элементов массива в первой строке
Что будет выведено на экран в результате работы программы? var a: string; Procedure P( a: char; var d: char); begin a:='в'; d:='c'; end; begin a:='глаз'; P(a[1],a[4]); write (a) end.
(1) <глаc>
(2) <гла>
(3) <гаc>
Выберите операции, определенные для стека
(1) удаление элемента из вершины стека
(2) удаление произвольного элемента
(3) занесение элемента в произвольную позицию
(4) добавление элемента в вершину стека
Дано описание объектов: type A = Object Y : Integer; procedure X ( Z : integer); end; var a2:^A; Укажите правильный способ обращения к методу X этого объекта:
(1) a2.X( 2 );
(2) a2^.X( 2 );
(3) a2^.X;
(4) ^a2.X( 2 );
Деструктор обязательно описывать
(1) для любых объектов
(2) для объектов, имеющих конструктор
(3) для динамических объектов
(4) для динамических полиморфных объектов
Выберите все правильные утверждения.
(1) результат операции деления div над целыми числами - целый
(2) результат любых операций над целыми числами - целый
(3) результат операций сравнения целых чисел - булевский
(4) результат стандартных тригонометрических функций с аргументами целого типа - целый
Какой из перечисленных операторов является оператором безусловного перехода?
(1) if
(2) switch
(3) goto
(4) break
(5) go to
Какую величину вычисляет программа? var a : array[1..3,1..4] of integer; var i,j,k : integer; begin for i := 1 to 3 do for j := 1 to 4 do read(a[i,j]); k:=0; for i := 1 to 4 do for j := 1 to 3 do if a[j,i]=0 then k:=i end; write(k) end.
(1) номер первого из столбцов массива, содержащих хотя бы один элемент, равный 0
(2) номер последнего из столбцов массива, содержащих хотя бы один элемент, равный 0
(3) количество положительных элементов массива в каждом столбце
(4) номер первой из строк массива, содержащих хотя бы один элемент, равный 0
(5) номер последней из строк массива, содержащих хотя бы один элемент, равный 0
Что будет выведено на экран в результате работы программы? var a,b: string; Procedure P( a: string; var b: string); begin a[1]:=b[1]; b[2]:=a[2]; end; begin a:='abcd'; b:= 'opr'; P(a,b); write (a,b) end.
(1) <abobr>
(2) <obcdobr>
(3) <abcdobr>
(4) <abr>
Выберите операции, определенные для очереди
(1) удаление элемента из начала очереди
(2) поиск элемента
(3) занесение элемента в произвольную позицию очереди
(4) удаление группы элементов из середины очереди
Дано описание объектов: type T = Object Y : Integer; procedure P ( Z : integer); end; var a:^T; Укажите правильный способ обращения к методу P этого объекта:
(1) a^.P();
(2) a^.P( 2 );
(3) a^.P;
(4) ^a.P( 2 );
Дано описание объектов: type A = Object Y : Integer; end; B = Object (A) Z : Integer; end; var a1:A; b1:B; Сколько байтов в памяти занимают все поля объекта b1 ?
(1) 1
(2) 2
(3) 4
(4) 6
Выберите все правильные ответы. Операции not, and, or и xor применимы к
(1) операндам булевского типа
(2) операндам целого типа
(3) операндам действительного типа
(4) операндам символьного типа
Если оператор continue встретится в операторе цикла, то:
(1) он передает управление на начало следующей итерации цикла
(2) он передает управление на конец предыдущей итерации цикла
(3) он передает управление на итерацию цикла, находящуюся после метки
(4) ничего не произойдет
Даны описания: type tarr = array [1 ..10] of real; tzap = record a : real; c : tarr; end; var x : tzap; Укажите синтаксически правильные варианты обращения к полям записи:
(1) x.a[1]
(2) x.a
(3) x.c[1]
(4) x.tzap
Выберите все правильные утверждения.
(1) при чтении элемент удаляется из очереди.
(2) при чтении элемент удаляется из списка.
(3) для стека определены операции выборки из начала и занесения в конец.
(4) в дереве поиска все ключи левого поддерева меньше, чем ключ корня.
Стиль ООП рекомендует объявлять поля объектов с директивой
(1) private
(2) public
(3) все равно
Дано описание объектов: type A = Object Y : Integer; end; B = Object (A) Z,T : Integer; end; var b1:B; Укажите правильные способы обращения к полям объекта:
(1) b1.A.Y
(2) b1.B.Y
(3) b1.T
(4) b1.Y
Таблица истинности какой логической операции приведена ниже? a b a <операция> b false false false false true true true false true true true true
(1) and
(2) or
(3) xor
Даны описания: type tarr = array [1 ..10] of real; tzap = record c : real; a : tarr; end; var x : array [1 .. 10] of tzap; Укажите синтаксически правильные варианты обращения к полям записи:
(1) tzap[1].tarr[1]
(2) x[1].c
(3) tzap.a[1]
(4) x.a.tzap
Выберите все правильные утверждения.
(1) в части реализации модуля описываются типы, которые можно использовать только внутри модуля
(2) в разделе реализации модуля можно описывать типы
(3) в интерфейсном разделе модуля можно описывать переменные
(4) если в программе используется функция с тем же именем, что и в подключенном к ней модуле, воспользоваться переменной из модуля невозможно
Выберите все правильные утверждения.
(1) при чтении элемент удаляется из очереди.
(2) в стеке допустим произвольный доступ к элементу
(3) двунаправленный список реализует дисциплину обслуживания LIFO
(4) очередь реализует дисциплину обслуживания FIFO
По умолчанию все поля и методы являются
(1) public
(2) private
Дано описание объектов: type A = Object procedure foo; end; B = Object (A) procedure foo; end; pb = ^B; var a1:^A; begin a1 := New(pB); a1^.foo; Процедура foo какого объекта будет вызвана?
(1) А
(2) В
Чему равно значение выражения (not a and ( b or c )) , где a, b и с - величины типа boolean , имеющие значения true , true и false соответственно?
(1) false
(2) true
Даны описания: type tarr = array [1 ..10] of real; tzap = record c : real; a : tarr; end; var x : array [1 .. 10] of tzap; Укажите синтаксически правильные варианты обращения к полям записи:
(1) a.x[1]
(2) x.a[1]
(3) x[1].c
(4) tzap[1].tarr[1]
Выберите все правильные утверждения.
(1) в интерфейсном разделе модуля можно описывать типы
(2) если в программе используется переменная с тем же именем, что и в подключенном к ней модуле, воспользоваться переменной из модуля невозможно
(3) модуль не должен содержать раздел подключения модулей ( uses …)
(4) модуль компилируется вместе с программой, к которой он подключен
Выберите все правильные утверждения.
(1) время доступа к элементу в линейном списке пропорционально двоичному логарифму количества его элементов
(2) линейный список реализует дисциплину обслуживания LILO
(3) при чтении элемент удаляется из очереди.
(4) в дереве поиска все ключи правого поддерева больше, чем ключ корня.
При описании объекта в модуле текст его методов рекомендуется размещать в разделе:
(1) interface
(2) implementation
(3) безразлично
Чему равно значение выражения (a or b and c xor c) , где a, b и с - величины типа boolean , имеющие значения false , true и true соответственно?
(1) false
(2) true
Дан фрагмент программы: var Buf:array[1..100] of integer; f: file; begin assign(f, 'bfile.dat'); reset(f, 10); Blockread(f, Buf, 3); … Сколько байтов будет считано из файла?
(1) 1000
(2) 10
(3) 3
(4) 100
(5) 30
(6) 300
Чему равно числовое значение выражения e/2*a-abs(e)*1e0 при e=-4, a=2
(1) -5
(2) 0
(3) -40
(4) -8
(5) -48
(6) -45
Дан фрагмент программы: var Buf:array[1..100] of real; f: file; begin assign(f, 'bfile.dat'); reset(f, 30); Blockread(f, Buf, 3); … Сколько байтов будет считано из файла?
(1) 3000
(2) 3
(3) 30
(4) 90
(5) 100
(6) 300
Выберите все правильные утверждения.
(1) под величину типа boolean отводится 1 бит
(2) величины типа boolean могут принимать только значения true и false
(3) false > true
(4) к величинам типа boolean применимы только логические операции
Дан фрагмент программы: var Buf:array[1..10] of single; f: file; begin assign(f, 'bfile.dat'); reset(f, 4); Blockread(f, Buf, 2); … Сколько байтов будет считано из файла?
(1) 40
(2) 2
(3) 4
(4) 8
(5) 10
(6) 20
Выберите все правильные утверждения.
(1) под величину типа boolean отводится 2 байта
(2) величины типа boolean можно сравнивать между собой
(3) величины типа boolean можно использовать в заголовке оператора цикла for
(4) величины типа boolean нельзя сравнивать на больше-меньше
Выберите все правильные утверждения.
(1) запись должна состоять из полей различных типов
(2) тип поля записи может быть любым, кроме файлового
(3) поле записи, в свою очередь, может быть записью
(4) поле записи не может быть массивом
Символьная переменная может принимать значения
(1) только из алфавита языка Паскаль
(2) из набора допустимых в компьютере символов
(3) только символов английского алфавита и цифр
(4) только из набора допустимых в компьютере символов, кроме псевдографики
Выберите все правильные утверждения.
(1) прямой доступ применяется ко всем типам файлов
(2) бестиповой файл состоит из блоков разной длины
(3) компонентный файл состоит из блоков одинаковой длины
(4) текстовый файл состоит из блоков одинаковой длины
Выберите все правильные утверждения.
(1) все числовые величины описываются в разделе описания констант
(2) в разделе описания констант описываются константы, имеющие имя
(3) величины, описанные в разделе описания констант без указания типа, не могут изменить свои значения
(4) в разделе описания констант можно описать и константы, и переменные
Выберите все правильные утверждения.
(1) текстовый файл можно открыть для добавления информации в конец
(2) бестиповой файл состоит из блоков разной длины
(3) прямой доступ применяется к бестиповым и компонентным файлам
(4) при записи в компонентный файл для каждой переменной выполняется преобразование в символьную форму представления
Какие выражения не содержат синтаксических ошибок?
(1) cos(3*Pi+1*abs(x)))
(2) Sin^2*x+0,2
(3) $EF01*1.34E-2/i/_1
(4) cos(3a+1*abs(x))
Какие из выражений имеют значение true ?
(1) (1<3) and (2=1)
(2) (1<3) or (2=1)
(3) (not (1>3)) and (1<3)
(4) not ((1<3) and (2=1))
(5) (1>3) or not (1>3)
Какие из выражений имеют значение true , если а=1?
(1) (a=1) or not false
(2) (a=1) xor (a=2)
(3) not (a=2) or true
(4) (a=1) and false
Что будет выведено на экран в результате работы программы var k:byte; y:real; begin k := 4; y := 2; write ('* *' ,k, y:k:2,' *'); end.
(1) * *42.00 *
(2) * *4 2.00 *
(3) * *4.0 2.00 *
(4) * *4.02.00 *
(5) * *4 2 *
Что будет выведено на экран в результате работы программы var k:integer; x:real; begin k := 2; x := 3; write ('[',x:4:2, k,']'); end.
(1) [3 2]
(2) [ 32]
(3) [3. 2]
(4) [3.002]
(5) [ 3.002]
Найдите операторы вывода, не содержащие синтаксических ошибок (var k:integer; x,y:real;)
(1) write ('* , x, k, y:k:2);
(2) write ('*', x*k:4:2, y:4:2,'*');
(3) write ('*', x*y:12, k:4, y,'*');
(4) write ('*, x, k * y', '*''');
В списке параметров процедуры Read могут присутствовать
(1) имена переменных любого типа
(2) имена переменных целых, действительных, символьного и строкового типа
(3) имена переменных целых, действительных, символьного и булевского типа
(4) константы строкового типа
При использовании в программе процедуры Read требуется разделять числовые значения величин при вводе при помощи
(1) по крайней мере одного пробела
(2) пробела или запятой
(3) нажатия клавиш TAB или ENTER
(4) клавиш курсора
В процедуре Write для величин действительного типа можно задавать формат вида А:К:М, где А - переменная или выражение,
(1) K - общее количество позиций, отводимое под переменную А
(2) K - количество позиций, отводимое под целую часть переменной А
(3) K и M могут быть константами целого типа
(4) K и M могут быть только константами
Какие символы используются в качестве признака начала комментария?
(1) {
(2) {*
(3) (*
(4) //
Выберите все правильные утверждения.
(1) программа может содержать произвольное количество разделов описания переменных
(2) раздел описания констант должен предшествовать разделу описания переменных
(3) раздел описания модулей должен быть первым среди разделов описаний
(4) в разделе описания констант можно описать инициализированные переменные
Алфавит языка Паскаль включает в себя:
(1) символы [, (, ;
(2) латинские буквы
(3) русские буквы
(4) знаки !, ?, *
Цель структурного программирования — это:
(1) написание программы, состоящей из базовых конструкций структурного программирования
(2) уменьшение ошибок при отладке программ и упрощение их модификации
(3) использование самых простых структур данных
(4) уменьшение объема программы
При описании массива тип индекса может быть:
(1) вещественным
(2) типа byte
(3) интервальным
(4) любым
Выберите все правильные утверждения.
(1) локальные переменные существуют только во время выполнения подпрограммы
(2) для параметров, передаваемых по значению, в стеке создается их копия
(3) компилятор инициализирует нулями локальные переменные
(4) функция может возвращать через свое имя значение стандартного типа
Для указателей в Паскале определены операции:
(1) инкремента
(2) декремента
(3) деления
(4) присваивания
(5) возведения в степень
Упрощение структуры программы всегда приводит
(1) к уменьшению количества повторяющихся фрагментов
(2) к увеличению ее быстродействия
(3) к облегчению ее отладки
(4) к увеличению количества классов
Какие объекты должны иметь конструкторы?
(1) все
(2) объекты, содержащие статические методы
(3) объекты, содержащие виртуальные методы
(4) динамические объекты
Элементарные конструкции языка Паскаль включают в себя:
(1) двоичные числа
(2) строки
(3) служебные слова
(4) имена
В условном операторе после ключевого слова then может находиться
(1) любой оператор
(2) любой оператор, кроме оператора перехода
(3) вложенный условный оператор
(4) произвольное количество операторов
Выберите все правильные утверждения.
(1) под величину типа string[10] отводится 10 байт
(2) под величину типа string[10] отводится 11 байт
(3) в переменной типа string[10] можно хранить строку длиной не менее 10 символов
(4) величину типа string[10] можно складывать только с величиной типа string[10]
(5) можно изменить значение отдельного символа в строке
Параметр подпрограммы описан как a:word . Соответствующий ему аргумент может быть:
(1) константой типа word
(2) переменной типа word
(3) переменной любого целого типа
(4) выражением любого типа
Указателю на конкретный тип данных можно присвоить
(1) переменную целого типа
(2) NIL
(3) 0
(4) результат операции взятия адреса для переменной соответствующего типа
(5) константу целого типа
Недостатками ООП являются:
(1) большой объем информации, необходимый для грамотного применения ООП
(2) локализация свойств и поведения объекта о одном месте
(3) возможное уменьшение быстродействия программы за счет виртуальных методов
(4) избыточный код программы
VMT создается
(1) компилятором
(2) конструктором
(3) программистом
(4) отладчиком
Выберите все допустимые в Паскале константы
(1) '\'
(2) $FFG0
(3) 7.2e3
(4) 0.008E-123
(5) 'b'
В условном операторе после ключевого слова else может находиться
(1) любой оператор, кроме оператора перехода
(2) вложенный условный оператор
(3) произвольное количество операторов
(4) простой или составной оператор
Какое число получится в результате работы программы? const a : array[1..8] of integer = (3,8,0,-6,0,-1,-9,3); var i,k : integer; begin k := abs(a[8]); for i := 1 to 8 do if abs(a[i]) >k then k := abs(a[i]); write(k) end.
(1) 9
(2) 8
(3) 10
(4) 7
Параметр подпрограммы описан как var a:word . Соответствующий ему аргумент может быть:
(1) переменной типа word
(2) выражением типа word
(3) константой типа word
(4) только переменной типа word с именем а
Для освобождения памяти в языке Паскаль применяются процедуры:
(1) FreeMem
(2) Free
(3) Release
(4) Erase
Какое свойство ООП позволяет единообразно обращаться с разными объектами одной иерархии?
(1) инкапсуляция
(2) абстрагирование
(3) наследование
(4) полиморфизм
Можно ли при наследовании виртуального метода изменить количество его параметров?
(1) да
(2) нет
Выберите все допустимые в Паскале константы
(1) #07
(2) ^G
(3) 'ab''ba'
(4) 7.2*e3
(5) -126
Чему будет равно значение переменной А после выполнения фрагмента программы, если В=5? A := 2; if В <= 4 then C := 1 else begin C := 0; A := C; end;
(1) 0
(2) 1
(3) 2
(4) 3
Какое число получится в результате работы программы? const a : array[1..8] of integer = (3,8,0,-6,0,-1,-9,3); var i,k : integer; begin k := abs(a[8]); for i := 1 to 8 do if abs(a[i]) < k then k := abs(a[i]); write(k) end.
(1) 1
(2) 0
(3) -1
(4) -2
Заголовок подпрограммы имеет вид: Procedure P( a:integer; b:word; var c: word; d:real); Укажите правильные варианты вызова подпрограммы, если переменные в вызывающей программе описаны так: var a:integer; b,k:word; e:integer; d,x:real;
(1) P(a,b,k,d);
(2) P(a,3,b,d);
(3) P(a+3,b,k,x);
(4) P(e,b,k,d-x/2);
(5) P(e,b,b,b);
Для освобождения памяти в языке Паскаль применяются процедуры:
(1) Del
(2) Dispose
(3) FreeMem
(4) Deallocate
Класс может наследовать от родительского класса:
(1) только данные
(2) только методы
(3) данные и методы
Преимущества виртуальных методов:
(1) гибкость
(2) увеличение быстродействия программы
(3) уменьшение объема исходного текста программы
(4) возможность расширения
Выберите все допустимые в Паскале константы
(1) #36
(2) '1'
(3) #$1
(4) ^D
(5) ^%
Чему будет равно значение переменной А после выполнения фрагмента программы, если В=2? a:=1; if (b<0) or (b>1) then a:=3; if b>5 then a:=5;
(1) 0
(2) 1
(3) 2
(4) 3
Какое число получится в результате работы программы? const a : array[1..8] of integer = (3,8,0,-6,0,-1,-9,3); var i,j,k : integer; begin k := 0; j := 4; for i := 1 to 8 do if abs(a[i]) >j then inc(k); write(k) end.
(1) 3
(2) 2
(3) 1
(4) 0
Что будет выведено на экран в результате работы программы? var a,b,c,d: integer; Procedure P( a: integer; var c: integer; var d: integer); var b: integer; begin a:=5; c:=7; b:=9; end; begin a:=1; b:=1; c:=1; P(b,a,c); write (a,'|',b,'|',c) end.
(1) <9|1|1>
(2) <8|1|1>
(3) <7|1|1>
Даны описания: type tarr = array[1..10] of real; parr = ^tarr; var p : parr; Укажите правильный вариант обращения к третьему элементу массива:
(1) p[3]^
(2) p^[3]
(3) parr[3]
(4) tarr^[3]
(5) tarr[3].p
Выберите правильные утверждения.
(1) объект в паскале может иметь сколько угодно предков
(2) объект в паскале может иметь сколько угодно потомков
(3) объект в паскале может иметь только одного предка
(4) объект в паскале может иметь только одного потомка
Можно ли передавать объект в подпрограмму в качестве параметра?
(1) да
(2) нет
Число 256 можно хранить в переменной типа
(1) byte
(2) word
(3) shortint
(4) integer
(5) longint
(6) real
Чему будет равно значение переменной m после выполнения программы? var k,m : word; begin k:=0; m:=0; while k<3 do inc(k); inc(m); end;
(1) 0
(2) 1
(3) 2
(4) 3
Какое число получится в результате работы программы? const a : array[1..8] of integer = (3,8,0,-6,0,-1,-9,3); var i,k : integer; begin k := 1; for i := 8 downto 1 do if a[i] = 0 then k := i; write(k) end.
(1) 3
(2) 2
(3) 1
(4) 0
Выберите заголовки подпрограмм, не содержащие синтаксических ошибок
(1) function f(var i:byte):byte;
(2) function f1(var i):byte;
(3) function 1f(var i:byte):byte;
(4) function f(var i:byte);
Даны описания: type tarr = array[1..10] of real; parr = ^tarr; var p : parr; Укажите правильный вариант обращения к третьему элементу массива:
(1) parr.p^[3]
(2) p^[3]
(3) p[3]^
(4) ^tarr.p[3]
(5) parr[3].p^
При обращении к методу перед его именем указывается
(1) имя типа объекта
(2) имя экземпляра объекта
(3) ничего не указывается
(4) имя модуля, в котором описан объект
Можно ли передать на место параметра-объекта объект, являющийся его потомком?
(1) да
(2) нет
Число -33333 можно хранить в переменной типа
(1) byte
(2) word
(3) shortint
(4) extended
(5) comp
Чему будет равно значение переменной m после выполнения программы? var k,m : integer; begin k:=3; m:=0; while k>0 do begin dec(k); inc(m); end; end;
(1) 0
(2) 1
(3) 2
(4) 3
Выберите заголовки подпрограмм, не содержащие синтаксических ошибок
(1) function f/_2(i:array of [1..10]):real;
(2) function f(var i:array of word):byte;
(3) function f(var i):real;
(4) function f(var i,var j:byte):word;
Даны описания: type tzap = record x: array[1..10] of real; end; pzap = ^tzap; var p : pzap; Укажите правильный вариант обращения к третьему элементу массива:
(1) pzap[3].x
(2) p^.x[3]
(3) pzap.x^[3]
(4) tzap^[3]
(5) p[3].x^
В описание объекта включается
(1) только заголовок метода
(2) полное описание метода
(3) только тело метода
При использовании New для выделения памяти под объект в виде процедуры ее первым параметром является:
(1) указатель на экземпляр объекта
(2) тип объекта
(3) экземпляр объекта
(4) тип указателя на объект
В переменной типа integer можно хранить число
(1) 13
(2) 213
(3) -13
(4) -213
(5) 62000
(6) -1.2
Чему будет равно значение переменной m после выполнения программы? var k,m : word; begin m:=1; for k:=3 to 1 do inc(m); end;
(1) 0
(2) 1
(3) 2
(4) 3
Какую величину вычисляет программа? const a : array[1..8] of integer = (3,8,0,-6,0,-1,-9,3); var i,j,k : integer; begin k := 0; j := 4; for i := 1 to 8 do if a[i] >j then k := abs(a[i]); write(k) end.
(1) максимальный по модулю элемент массива
(2) первый из элементов массива, больший, чем 4
(3) первый из элементов массива, больший по модулю, чем 4
(4) модуль последнего из элементов массива, больших, чем 4
(5) модуль первого из элементов массива, больших, чем 4
Заголовок подпрограммы имеет вид: Procedure P(a: string; b: char; var c:real); Укажите правильные варианты вызова подпрограммы, если переменные в вызывающей программе описаны так: var a:string; b,x:real; c:string[5]; d:integer;
(1) P(a,b,c);
(2) P(a+c,c[4],d-1);
(3) P(c,a[4],b);
(4) P(a,c,x);
Выберите операции, определенные для стека
(1) удаление элемента из вершины стека
(2) удаление произвольного элемента
(3) поиск элемента
(4) удаление группы элементов из середины стека
Дано описание объектов: type A = Object Y : Integer; end; var a1:A; a2:^A; Укажите правильные способы обращения к полям этих объектов:
(1) a1.Y
(2) @a2.Y
(3) ^A.Y
(4) A^.Y
Освобождает ли динамическую память деструктор с пустым телом?
(1) да
(2) нет
В переменной типа byte можно хранить число
(1) 6
(2) 226
(3) -6
(4) -226
(5) 257
(6) -257
Что можно сказать о приведенном ниже коде? const x : integer = 1; var i : integer; begin for i := 1 to 4 do begin inc(x); if (i = 4) then break else if (i = 3) then continue; end; end.
(1) при достижении конца цикла переменная 'x' будет равна 1
(2) при достижении конца цикла переменная 'x' будет равна 3
(3) при достижении конца цикла переменная 'x' будет равна 5
(4) при достижении конца цикла переменная 'x' будет равна 4
(5) переменная 'x' не увеличится
Какую величину вычисляет программа? var a : array[1..3,1..4] of integer; var i,j,k : integer; begin for i := 1 to 3 do for j := 1 to 4 do read(a[i,j]); for i := 1 to 4 do begin k := 0; for j := 1 to 3 do if a[j,i] >0 then inc(k); end; write(k) end.
(1) количество положительных элементов массива
(2) количество положительных элементов массива в каждой строке
(3) количество положительных элементов массива в каждом столбце
(4) количество положительных элементов массива в последней строке
(5) количество положительных элементов массива в последнем столбце
Что будет выведено на экран в результате работы программы? var a: string; Procedure P( var a: char; d: char); begin a:='в'; d:='д'; end; begin a:='глаз'; P(a[1],a[4]); write (a) end.
(1) <влаз>
(2) <глаз>
(3) <лаз>
Выберите операции, определенные для стека
(1) поиск элемента
(2) удаление группы элементов из середины стека
(3) корректировка произвольного элемента стека
(4) добавление элемента в вершину стека
Дано описание объектов: type T = Object Y : Integer; end; var x: T; z: ^T; Укажите правильные способы обращения к полям этих объектов:
(1) x.Y
(2) @z.Y
(3) Y.x
(4) T^.Y
Расширенная совместимость типов объектов допускает присваивания:
(1) объекта-предка объекту-потомку
(2) объекта-потомка объекту-предку
(3) указателя на объект-предок указателю на объект-потомок
(4) указателя на объект-потомок указателю на объект-предок
Выберите все правильные утверждения.
(1) результат арифметических операций над действительными числами - действительный
(2) в одном выражении можно использовать операнды действительного и целого типов
(3) результат всех стандартных функций с аргументом действительного типа - действительный
(4) результат операций сравнения действительных чисел - действительный
Какой из перечисленных операторов является оператором передачи управления в начало следующей итерации цикла?
(1) if
(2) switch
(3) break
(4) continue
(5) goto
Даны описания: type tarr = array [1 ..10] of real; tzap = record a : real; c : tarr; end; var x : tzap; Укажите синтаксически правильные варианты обращения к полям записи:
(1) x[1].tzap
(2) x.a
(3) a.x
(4) x[1].c
Что будет выведено на экран в результате работы программы? var a,b: string; Procedure P( a,b: string); var c: string; begin c:=a; a:=b; b:=c; end; begin a:='abc'; b:= 'pr'; P(a,b); write (a,b) end.
(1) <pr>
(2) <abr>
(3) <abcpr>
Выберите операции, определенные для очереди
(1) удаление элемента из конца очереди
(2) занесение элемента в конец очереди
(3) удаление элемента из начала очереди
(4) поиск элемента
Дано описание объектов: type T = Object Y : Integer; function P ( Z : integer):integer; end; var a:^T; i: integer; c: char; Укажите правильный способ обращения к методу P этого объекта:
(1) c := a^.P();
(2) i := a^.P( 10000 );
(3) i := ^a.P (5);
(4) c := a^.P( 10000 );
Дано описание объектов: type A = Object Y : Integer; end; B = Object (A) Z,T : Integer; end; var b1:B; Укажите правильные способы обращения к полям объекта:
(1) B.Z
(2) b1.Y
(3) Y.B
(4) T.b1
Выберите все правильные ответы. Операции not, and, or и xor не применимы к
(1) операндам булевского типа
(2) операндам целого типа
(3) операндам действительного типа
(4) операндам символьного типа
В каком из перечисленных фрагментов тело цикла не выполняется ни одного раза?
(1) for i := 1 to 22 do writeln('цикл ');
(2) for i := 0 to 1 do writeln('цикл ');
(3) for i := 10 to 6 do writeln('цикл ');
(4) for i := 5 downto 2 do writeln('цикл ');
Даны описания: type tarr = array [1 ..10] of real; tzap = record a : real; c : tarr; end; var x : tzap; Укажите синтаксически правильные варианты обращения к полям записи:
(1) x.tarr[1]
(2) a.x
(3) x[1].c
(4) x.c[1]
(5) tzap.tarr[1]
Выберите все правильные утверждения.
(1) упорядочивание линейных списков большой размерности происходит быстрее, чем аналогичных массивов.
(2) в стеке допустим произвольный доступ к элементу
(3) удаление элементов из списка не допускается
(4) память под динамическую структуру данных выделяет компилятор
Действие директивы Private распространяется
(1) до конца описания объекта
(2) до директивы Public
(3) до конца файла
Дано описание объектов: type A = Object Y : Integer; end; B = Object (A) Z,T : Integer; end; var b1:B; Укажите правильные способы обращения к полям объекта:
(1) B.A.Y
(2) b1.B.Y
(3) b1.T
(4) b1.Y
Таблица истинности какой логической операции приведена ниже? a b a <операция> b false false false false true true true false true true true false
(1) and
(2) or
(3) xor
Даны описания: type tarr = array [1 ..10] of real; tzap = record c : real; a : tarr; end; var x : array [1 .. 10] of tzap; Укажите синтаксически правильные варианты обращения к полям записи:
(1) x.tarr[1]
(2) x[1].a[1]
(3) x[1].c
(4) tzap[1].tarr[1]
Выберите все правильные утверждения.
(1) в интерфейсной части модуля описываются типы, которые можно использовать только вне модуля
(2) в разделе реализации модуля можно описывать подпрограммы
(3) модуль подключается к программе в виде кода на Паскале
(4) если в программе используется переменная с тем же именем, что и в подключенном к ней модуле, воспользоваться переменной из модуля невозможно
время доступа к элементу в бинарном дереве поиска пропорционально:
(1) десятичному логарифму количества элементов в дереве
(2) количеству элементов в дереве
(3) квадрату количества элементов в дереве
(4) двоичному логарифму количества элементов в дереве
Применение директивы Private позволяет
(1) уменьшить количество возможных ошибок
(2) сократить текст программы
(3) упростить отладку программы
Чему равно значение выражения (not ( a and b ) or c) , где a, b и с - величины типа boolean , имеющие значения true ?
(1) false
(2) true
Даны описания: type tarr = array [1 ..10] of real; tzap = record c : real; a : tarr; end; var x : array [1 .. 10] of tzap; Укажите синтаксически правильные варианты обращения к полям записи:
(1) x.c[1]
(2) x[1].a[1]
(3) x[1].c
(4) x.tarr[1]
Выберите все правильные утверждения.
(1) время доступа к элементу в линейном списке пропорционально количеству его элементов
(2) линейный список реализует дисциплину обслуживания FOLO
(3) при чтении элемент удаляется из стека.
(4) в очереди допустим произвольный доступ к элементу
Можно ли описывать объект в разделе реализации модуля?
(1) да
(2) нет
Чему равно числовое значение выражения e/(sqrt(a)*0.2e1) при e=8, a=4
(1) 14,23487544
(2) 1,779359431
(3) 0,25
(4) 2
Дан фрагмент программы: var Buf:array[1..100] of integer; f: file; begin assign(f, 'bfile.dat'); reset(f, 10); Blockread(f, Buf, 4); … Сколько байтов будет считано из файла?
(1) 1000
(2) 4
(3) 10
(4) 40
(5) 100
(6) 400
Выберите все правильные утверждения.
(1) под величину типа boolean отводится 1 байт
(2) величины типа boolean могут принимать только значения 0 и 1
(3) false < true
(4) к величинам типа boolean применимы операции not и and
Выберите правильное утверждение:
(1) запись должна состоять из полей различных типов
(2) тип поля записи может быть любым, кроме файлового
(3) запись можно вывести на экран, указав в списке вывода ее имя
(4) записи одного типа можно сравнивать на равенство и неравенство
Выберите все правильные утверждения.
(1) под величину типа boolean отводится 1 бит
(2) величины типа boolean можно умножать на 0 и 1
(3) величины типа boolean можно использовать в выражениях
(4) результат сравнения величин типа boolean тоже имеет тип boolean
Выберите правильное утверждение:
(1) запись можно вывести на экран, указав в списке вывода ее имя
(2) записи одного типа можно сравнивать на равенство и неравенство
(3) записи одного типа можно присваивать друг другу
(4) имена полей в разных записях не должны совпадать
Символьная переменная может принимать значения
(1) только из алфавита языка Паскаль
(2) символов c кодами от 0 до 32
(3) символов английского алфавита и цифр
(4) только символов английского алфавита
Выберите все правильные утверждения.
(1) бестиповой файл хранит данные во внутреннем представлении
(2) текстовый файл можно открыть для чтения и записи одновременно
(3) длина компонентного файла должна задаваться на этапе компиляции
(4) для описания компонентного файла применяется ключевое слово file
Какие выражения не содержат синтаксических ошибок?
(1) sin(abs(0.6e3*y/_t))
(2) sin(abs*(0.6e3*y))
(3) $EF01*1.34E-2/i7/_17
(4) 1/_2i-exp(y)/2*t
Выберите все правильные утверждения.
(1) бестиповой файл хранит данные во внутреннем представлении
(2) запись в бестиповой файл выполняется с помощью процедуры blockwrite
(3) при записи в бестиповой файл для каждой переменной выполняется преобразование в символьную форму представления
(4) для описания бестипового файла применяется ключевое слово file
Какие выражения не содержат синтаксических ошибок?
(1) (Pi*abs(x)+/(0,6*k)
(2) Pi*-0.1*$00A1
(3) sin(t)/sin(t2)
(4) sin(t)/sin(2t)
Какие из выражений имеют значение true , если а=1?
(1) (a>3) or (a=5)
(2) not ((a>3) and true )
(3) (a>3) and (a=2)
(4) (a=1) xor (a=2)
Какие из выражений имеют значение true , если а=1?
(1) (a=1) or not (a=1)
(2) (a=1) or false
(3) (a>1) or (a=5)
(4) not (a=2) or true
Что будет выведено на экран в результате работы программы var i:word; t:single; begin i := 1; t := 5; write ('/', t:3:1, i, i:2, '/'); end.
(1) / 51 1/
(2) /5 11 /
(3) /5 1 1/
(4) /5.01 1/
(5) /5.0 1 1/
Найдите операторы вывода, не содержащие синтаксических ошибок (var k:integer; x,y:real;)
(1) write ('* , x, k, y:k:2, *');
(2) write ('*', x, k:4:2, y:4:2,'*');
(3) write ('*', x, k:4, y:y:4,'*');
(4) write (, x, k * y, *);
Найдите операторы вывода, не содержащие синтаксических ошибок (var k:integer; x,y:real;)
(1) write ('*', x+y, y, 'y:k:2, *');
(2) write ('*,' x, k:2, y:4:2,'*');
(3) write ('*', x, k*8 - k div 2, y:4,'*');
(4) write (*, x, 'k' * y, *);
При использовании в программе процедуры Read требуется разделять числовые значения величин при вводе при помощи
(1) только одного пробела
(2) произвольного количества пробелов
(3) запятой
(4) нажатия клавиши ENTER
В списке параметров процедуры Write могут присутствовать
(1) имена переменных
(2) ключевые слова
(3) константы строкового типа
(4) операторы
В процедуре Write для величин действительного типа можно задавать формат вида А:К:М, где А - переменная или выражение,
(1) М - количество позиций, отводимое под дробную часть переменной А
(2) K - количество позиций, отводимое под целую часть переменной А
(3) K и M могут быть выражениями целого типа
(4) K и M могут быть константами целого типа
Какие символы используются в качестве признака конца комментария?
(1) {
(2) }
(3) //
(4) *)
Выберите все правильные утверждения.
(1) программа может содержать только один раздел описания переменных
(2) раздел описания меток может отсутствовать
(3) описание каждой переменной начинается с ключевого слова var
(4) раздел операторов начинается с ключевого слова begin
Дан фрагмент программы: var Buf:array[1..20] of word; f: file; begin assign(f, 'bfile.dat'); reset(f, 6); Blockread(f, Buf, 6); … Сколько байтов будет считано из файла?
(1) 120
(2) 20
(3) 6
(4) 36
Выберите все правильные утверждения.
(1) программа может не содержать раздела описания констант
(2) раздел описания модулей должен быть первым среди разделов описаний
(3) программа может содержать только один раздел описания переменных
(4) раздел описания модулей должен предшествовать разделу описания переменных