Экзаменационные билеты по трем предметам из раздела программирования и компьютеров за декабрь 2000 г
ПРИМЕРНЫЙ ПЕРЕЧЕНЬ ЭКЗАМЕНАЦИОННЫХ ВОПРОСОВ
АЛГОРИТМИЧЕСКИЕ ЯЗЫКИ и ПРОГРАММИРОВАНИе
1. Этапы решения задачи на ПК. Что выполняется на каждом этапе?
2. Определение и свойства алгоритма. Способы записи алгоритмов. Виды
блоков, используемые в графических схемах алгоритмов и их назначение.
3. Характеристика алгоритмов линейной, разветвляющейся и циклической
структуры. Примеры.
4. Особенности алгоритмов циклической структуры типа «До» и «Пока».
Примеры.
5. Построение алгоритмов циклической структуры с использованием блока
модификации. Приведите примеры.
6. Составьте алгоритм решения задачи тремя способами, используя структуры
цикла типа «До», «Пока» и блока модификации.
Вычислить и напечатать значения функции y = sin x+0.5 для всех значений
x, изменяющихся от -1 до 1 с шагом 0.2.
7. Приведите алгоритм вычисления суммы и произведения элементов одномерного
массива.
8. Приведите алгоритм нахождения максимального элемента заданной
последовательности чисел (одномерного массива).
9. Организация циклов с неизвестным числом повторений. Примеры.
10. Алгоритмы со структурой вложенных циклов. Примеры.
11. Понятие подчиненного алгоритма. Примеры.
12. Понятие системы программирования.
13. Транслятор, компилятор, интерпретатор: определение и назначение.
14. Классификация языков программирования. Краткая характеристика языков
программирования.
15. Характеристика языка Турбо Паскаль.
16. Алфавит языка Паскаль.
17. Структура программы на Турбо Паскале.
18. Понятие синтаксической диаграммы. Синтаксические диаграммы блока и
структуры программы на Паскале.
19. Понятие комментария.
20. Константы и переменные. Раздел описаний в программе на Турбо Паскале.
21. Идентификатор. Правила записи идентификаторов.
22. Арифметические операции и выражения. Логические выражения. Приведите
примеры.
23. Оператор присваивания, составной оператор, пустой оператор. Приведите
примеры
24. Назначение и структура условного оператора. Приведите примеры.
25. Процедуры ввода-вывода Read и Readln, Write и Writeln в языке Турбо
Паскаль. Форматы вывода числовых данных. Примеры.
26. Оператор выбора Case. Примеры использования оператора.
27. Операторы цикла с предусловием, с постусловием. Примеры использования
операторов.
28. Оператор цикла с параметрами. Пример использования оператора.
29. Метки и операторы перехода в программе на Турбо Паскале.
30. Приведите фрагменты программ решения задачи двумя способами: с
использованием операторов цикла с предусловием и постусловием.
Вычислить и напечатать значения функции y = sin x+0.5 для всех значений
x, изменяющихся от -1 до 1 с шагом 0.2
31. Структура типов данных в языке Турбо Паскаль.
32. Целочисленный, логический, символьный, вещественный типы данных.
Функции, применяемые к данным перечисленных типов.
33. Пользовательский тип данных. Примеры объявления пользовательских типов.
34. Типизированные константы.
35. Перечисляемый тип данных.
36. Интервальный тип данных (тип – диапазон).
37. Назначение функций Ord(X), PRED(X) и SUCC(X) в языке Турбо Паскаль.
38. Понятие массива. Описание массива в языке Турбо Паскаль.
39. .Обращение к элементам одномерного и двумерного массива в языке Турбо
Паскаль.
40. Приведите фрагменты программы на Турбо Паскале, реализующие ввод и
вывод матрицы размером m на n.
41. Данные строкового типа. Операции над строками в языке Турбо Паскаль.
42. Стандартные процедуры и функции, предназначенные для обработки стоковых
данных.
43. Запись. Структура объявления типа записи. Обращение к элементу записи в
программе на Турбо Паскале. Примеры.
44. Оператор присоединения With ... do в языке Турбо Паскаль. Примеры.
45. Записи с вариантами. Объявление записи с вариантами.
46. Понятие множества. Объявление множества. Использование конструктора
множества. Примеры.
47. Укажите, в чем главное отличие данных множественного типа от массивов и
записей в языке Турбо Паскаль.
48. Операции над данными типа множество в языке Турбо Паскаль. Поясните на
примерах.
49. Организация ввода - вывода элементов множества в программах на Турбо
Паскале.
50. Стандартные процедуры CLRSCR, GOTOXY(i,j) модуля CRT.
51. Понятие качества программы. Основные показатели качества.
52. Диалоговая программа. Основные принципы ее построения.
53. Интерфейс пользователя. Что является главным в интерфейсе
пользователя?
54. Принцип «меню» в реализации диалога с пользователем.
55. Дайте сравнительный анализ двум типам диалога: «вопрос-ответ» и «ответы
с заполнением предложенных бланков». Приведите примеры.
56. Функции опроса клавиатуры ReadKey и KeyPressed.
57. Назначение стандартного модуля CRT. Основные процедуры и функции
модуля.
58. Процедура WINDOW.
59. Функции управления цветом в Турбо Паскале .
60. Что такое стиль программирования? Перечислите приемы хорошего стиля
программирования в Турбо Паскале .
61. Назначение и типы комментариев в Турбо Паскале. Как указать
комментарий в программе?
62. Понятие подпрограммы.
63. Процедура в Турбо Паскале. Структура процедуры.
64. Заголовок процедуры. Правила записи заголовка процедуры.
65. Обращение к процедуре. Понятие формальных и фактических параметров,
локальных и глобальных параметров.
66. Приведите пример программы с процедурой, вычерчивающей линию. Длина
линии и символ, ее изображающий, должны передаваться в процедуру через
формальные параметры.
67. Подпрограмма-функция. Общий вид заголовка функции. Укажите отличие
подпрограммы- функции от подпрограммы-процедуры в Турбо Паскале.
68. Использование параметров-значений, параметров-переменных, параметров-
констант в подпрограммах на языке Турбо Паскаль.
69. Процедура Exit в Турбо Паскале.
70. Понятие рекурсии. Приведите примеры использования рекурсии.
71. Опережающее объявление процедуры. Какая директива используется для
опережающего описания в Турбо Паскале?
72. Этапы разработки больших программ.
73. Тестирование программы, на какие стадии оно подразделяется?
74. Технология нисходящего структурного программирования. Какие
составляющие включает в себя данная технология?
75. Понятие структурного программирования.
76. Модули. Структура модуля. Назначение составляющих модуля в Турбо
Паскале.
77. Назначение стандартного модуля SYSTEM. Процедуры и функции, входящие в
этот модуль.
78. Назначение стандартного модуля PRINTER в Турбо Паскале.
79. Файловые типы и файловые переменные Турбо Паскале.
80. Понятие типизированного, нетипизированного и текстового файлов.
81. Установка связи между файловой переменной и физическим внешним
устройством.
82. Буфер ввода-вывода в Турбо Паскале.
83. Процедуры работы с типизированными файлами.
84. Процедуры и функции Турбо Паскаля, предназначенные для прямого доступа
к компонентам файла.
85. Процедуры работы с текстовыми файлами.
86. Процедуры работы с нетипизированными файлами.
87. Общие процедуры для работы с файлами всех типов в Турбо Паскале.
88. Распределение памяти при выполнении программ на Турбо Паскале.
89. Динамические данные. Как объявляются динамические данные в Турбо
Паскале?
90. Типизированные и нетипизированные указатели. Как вывести значение
указателя?
91. Операции, производимые над переменными типа указатель в языке Турбо
Паскаль.
92. Константа Nil в Турбо Паскале.
93. Понятия «куча» и «администратор кучи» в Турбо Паскале.
94. Процедуры для работы с динамической памятью в Турбо Паскале.
95. Список. Каким должен быть тип указателя в списке?
96. Напишите фрагмент программы в Турбо Паскале, осуществляющий построение
списка из трех элементов. Элемент списка имеет следующее описание:
Type
Uk = ^Elem;
Еlem = Record
s : Сhar;
x : Real;
next : Uk;
End;
Var p, q : Uk;
97. Напишите процедуру вывода элементов списка в Турбо Паскале.
Информационная часть списка – переменная типа Integer.
98. Напишите процедуру на Турбо Паскале, исключающую из списка элемент,
ссылка на который r.
99. Динамические структуры очередь и стек.
100. Приведите фрагмент программы на Турбо Паскале добавления элемента в
стек.
101. Приведите фрагмент программы на Турбо Паскале считывания элемента из
стека и исключения его из стека.
102. Приведите фрагмент программы на Турбо Паскале считывания элемента из
стека, не удаляя его из стека.
103. Кольцевой список.
104. Дерево. Двоичное дерево. Пример описания двоичного дерева на Турбо
Паскале.
105. Упорядоченное двоичное дерево.
106. Понятие объектно-ориентированного программирования (ОПП).
107. Объект, поле объекта, метод объекта.
108. Принципы объектно-ориентированного программирования.
109. Описание объекта. Назначение директив Private и Public в описании
объектов.
110. Что называется наследованием? Укажите, как определить объект-наследник
существующего объекта в Турбо Паскале.
111. Статистические методы объекта.
112. Виртуальные методы объекта.
113. Конструктор и деструктор.
114. Этапы разработки программного обеспечения.
115. Интегрированная среда разработки приложений Delphi. Составные части
среды.
116. Назначение окна формы, окна редактора кода, окна инспектора объектов в
Delphi.
117. Основные этапы создания приложений в Delphi.
118. Перечислите, какие действия необходимо выполнить для того, чтобы
поместить компонент на форму.
119. Обработчик события.
120. Как осуществляется обращение к свойству или методу компонента в
программе?
121. Функция ввода InputBox.
122. Перечислите известные вам функции преобразования строковой переменной
в число и числовой переменной в строку в Delphi.
123. Варианты организации ввода информации в Delphi.
124. Варианты организации вывода информации в Delphi.
125. Определение и назначение понятия контейнер.
126. Состав проекта в Delphi.
127. Назначение проекта и файла параметров проекта в Delphi.
128. Назначение файла программного модуля, файла формы и файла ресурсов.
129. Опишите процесс создания исполняемого файла в Delphi.
130. Назначение менеджера проекта в Delphi.
131. Дайте определение понятию класс. Поясните разницу между классом и
объектом в Delphi.
132. Объясните понятия поле, метод, свойство класса в Delphi.
133. Объясните разницу между двумя понятиями: событие для среды Windows,
событие Object Pascal.
134. Как осуществляется объявление нового класса в Object Pascal?
135. Опишите назначение частных (private), общих (public), защищенных
(proteeted) и опубликованных (published) объявлений в Object Pascal.
136. Перечислите основные типы данных в Object Pascal.
137. Что такое тип Variant, и в каких случаях он используется?
138. Понятие исключительной ситуации. Опишите механизм защищенного блока в
Delphi.
139. Для чего предназначен механизм защищенного блока и какие операторы
используются для его формирования?
140. Приведение типов данных. Операция IS. Операция AS.
141. Дайте определение компонента. В чем отличие визуального от
невизуального компонента.
142. Дайте характеристику классу TОbject и приведите примеры методов этого
класса.
143. Назначение классов TРersistent и TСomponent.
144. Дайте характеристику классу TСontrol. Перечислите основные свойства
класса.
145. Перечислите основные события, обрабатываемые формой в Delphi.
146. Перечислите основные события, возникающие от клавиатуры в Delphi.
147. В чем заключается разница между модальным и немодальным окном?
148. С помощью каких свойств и методов можно управлять видимостью формы?
149. Опишите механизм использования шаблонов форм в Delphi.
150. Опишите назначение TMainMenu и TРopupMenu.
151. Опишите компоненты TLabel, TEdit, TMemo, TMaskEdit в Delphi.
152. Опишите назначение компонент TButton, TCheckBox, TRadioButton.
153. Перечислите компоненты, позволяющие представлять данные в табличном
виде. Каковы основные правила их использования?
154. Перечислите компоненты, представляющие собой списки выбора. Каковы
основные правила их использования?
155. Что представляет собой компонент TTabControl? Поясните свойства
компонента Tabs и ТаbIndex.
156. Перечислите компоненты, реализующие стандартные диалоговые панели в
Delphi.
157. Объясните назначения класса TStrings в Delphi.
158. Назначение класса TСanvas. Приведите примеры методов этого класса.
159. Укажите последовательность операторов для организации вывода
информации на печать в Delphi. Какие операторы используются для вывода
текстовой информации?
160. Составьте программу на Турбо Паскале вычисления факториала
натурального числа n - n!
161. Составьте программу на Турбо Паскале вычисления степени числа а с
натуральным показателем n - а n.
162. Вычислить сумму двадцати членов ряда
S=[pic]…
163. Вычислить сумму членов ряда
S=[pic]…
с точностью до члена ряда, меньшего 0.0001
164. Составьте программу на Турбо Паскале.
Для заданного x вычислить y:
y=[pic]
165. Составьте программу на Турбо Паскале двумя способами: с
использованием операторов цикла с предусловием и постусловием.
Вычислить:
y=cos1+cos1.2+cos1.4+…+cos2.8+cos3
166. Составить программу решения задачи на Турбо Паскале.
Найти первый отрицательный элемент последовательности:
cos(sin(1)), cos(sin(2)), cos(sin(3)),… cos(sin(n)).
(где n - заданное натуральное число )
167. Составьте программу на Турбо Паскале.
Вычислить:
[pic]
168. Составьте программу на Турбо Паскале.
Вычислить все значения функции y=ex + 1 на отрезке [0, 2] с шагом 0.1.
Результат вывести в следующем виде:
-------------------------------
X Y
------------------------------
0 2
0.1 ….
… ….
2 ….
-------------------------------
169. Составьте программу на Турбо Паскале.
Дано 10 целых чисел. Определить, образуют ли они убывающую
последовательность.
170. Составьте программу на Турбо Паскале.
Найти наименьший элемент главной диагонали квадратной матрицы и вывести
на печать строку, в которой он находится.
171. Составьте программу на Турбо Паскале.
Дан массив целых чисел. Найти максимальный элемент массива и его
порядковый номер.
172. Составьте программу на Турбо Паскале.
Обнулить главную диагональ матрицы (5Х5), если в ней найдется хотя бы
один отрицательный элемент. Вывести на печать полученную матрицу.
173. Составьте программу на Турбо Паскале.
Дан двумерный массив целых чисел. Найти сумму положительных элементов
массива, значения которых не превосходят заданное число N.
174. Составьте программу на Турбо Паскале.
Найти количество отрицательных элементов двумерного массива,
расположенных ниже главной диагонали.
175. Составьте программу на Турбо Паскале.
Дан двумерный массив целых чисел. Поменять местами элементы первого и
третьего столбца.
176. Составьте программу на Турбо Паскале.
Напечатать заданный непустой текст, заменив в нем все пары букв ph на
букву f.
177. Составьте программу на Турбо Паскале.
Напечатать заданный непустой текст, удалив из него все знаки препинания.
178. Составьте программу на Турбо Паскале.
Дана строка символов. заменить в ней все восклицательные знаки на точки.
179. Составьте программу на Турбо Паскале.
Дана непустая последовательность слов из латинских букв, соседние слова
отделены друг от друга запятой, за последним словом – точка. Определить
количество слов, которые содержат хотя бы одну букву k.
180. Составьте программу на Турбо Паскале.
Дана непустая последовательность слов из латинских букв, соседние слова
отделены друг от друга запятой, за последним словом – точка. Определить
количество слов, которые начинаются с буквы a.
181. Составьте программу на Турбо Паскале.
Напечатать true, если в заданном тексте буква а встречается чаще, чем
буква b, и напечатать false в противном случае.
182. Составьте программу на Турбо Паскале.
В заданном тексте напечатать каждое слово с новой строки.
183. Составьте программу на Турбо Паскале.
В заданном тексте напечатать каждое предложение с новой строки.
184. Составьте программу на Турбо Паскале.
Описать функцию, которая подсчитывает количество пустых строк в текстовом
файле t.
185. Составьте программу на Турбо Паскале.
Описать функцию, которая находит максимальную длину строк в текстовом
файле t.
186. Составьте программу на Турбо Паскале.
Пусть текстовый файл t разбит на непустые строки. Описать функцию
count(t) для подсчета числа строк, которые начинаются с буквы R.
187. Описать процедуру P(t1,t2), переписывающего содержимое текстового
файла t2 в текстовый файл t1 (с сохранением деления на строки).
188. Составьте программу решения задачи на Турбо Паскале.
Вычислить сумму : S=1!+2!+3!+…+n!, используя функцию вычисления
факториала числа к - к!
189. Используя подпрограмму составьте программу на Турбо Паскале.
Даны x, y, m, n
Вычислить [pic]
190. Используя подпрограмму составьте программу на Турбо Паскале.
Даны натуральные m, n.
Вычислить [pic]
191. Используя подпрограмму составьте программу на Турбо Паскале.
Даны m, n
Вычислить [pic]
192. Используя подпрограмму составьте программу на Турбо Паскале.
Даны a, b
Вычислить [pic]
(использовать соотношение lg x = 0,4343 ln x)
193. Составьте программу на Турбо Паскале.
Создать файл, содержащий информацию о хранящемся на складе товаре: код
товара, наименование товара, цена товара, количество товара, суммарная
стоимость товара (последний параметр является расчетным).
194. Var f : file of integer;
x : integer;
Пусть файл f содержит элементы 1 и 2. Какое значение будет иметь
переменная х после выполнения следующих операторов?
a) reset (f); if f ^=1 then get (f); x : = f ^;
б) reset (f); x : = 0;
if not eof (f) then begin get (f); x : = x + f ^ end;
if not eof (f) then begin x : = x + f ^; get (f) end;
if not eof (f) then x : = x + f ^;
195. Имеется программа
program dynamic
Var x : ^ boolean; y : boolean;
begin {A} new (x); {B} x ^ : = true; y : = not x ^;
{C} dispose (x); {D} writeln (y)
end.
Ответьте на вопросы:
а) Какие переменные существуют в каждой из точек А, В, С и D и каковы их
значения в эти моменты?
б) Можно ли переменной х присвоить ссылку на переменную y? Можно ли с
помощью процедуры dispose уничтожить переменные х и y?
196. Опишите процедуру на Турбо Паскале, которая удаляет из непустого
списка L последний элемент.
197. Опишите процедуру на Турбо Паскале, которая вставляет в конец списка L
новый элемент Е.
198. Опишите процедуру на Турбо Паскале, которая вставляет в список L новый
элемент Е1 перед первым вхождением элемента Е (элемент Е входит в L)
199. const n = 100;
type vector = array [1 . . n] of real;
Var a, b, c, d : vector;
Опишите процедуру sum (x, y, z), которая присваивает вектору z сумму
векторов х и y, и используйте ее для вычисления d = a + b + c
200. Cоздать файл, содержащий информацию о друзьях: фамилия, номер
телефона, адрес. Организовать вывод номера телефона и адреса по заданной
фамилии.