Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
Ekzamen_programmirovanie_1.docx
Скачиваний:
18
Добавлен:
02.02.2015
Размер:
35.26 Кб
Скачать

Первый вопрос (массивы, циклы, ветвление, работа с файлами и пр.)

  1. Что такое индекс массива? Каким он может быть?

Индекс массива – пронумерованные по порядку номера элемента.

Индексы могут быть целыми положительными константами или целыми переменными. Чтобы обратиться к некоторому элементу массива, нужно рядом с идентификатором массива в скобках указать индекс элемента.

  1. Сколько Вы знаете циклов во Free Pascal? В чём между ними разница?

  1. Цикл с предусловием. В первой разновидности цикла условие проверяется перед выполнением тела цикла. Поэтому данное условие правильно будет назвать условие продолжение цикла. Цикл такого вида называется циклом с предусловием. Цикл будет повторяться до тех пор, пока проверка этого условия будет давать результат «истина» (true), то есть пока условие выполняется. Если условие сразу окажется ложным, цикл не будет выполняться ни разу (Цикл While).

  2. Цикл с постусловием. Вторая разновидность цикла проверяет условие после выполнения тела цикла. Поэтому правильно будет назвать это условие условием окончания цикла. Цикл такого вида называется циклом с постусловием. Цикл будет повторяться до тех пор, пока проверка этого условия будет давать результат «ложь» (false), то есть пока условие не выполнено. Даже если условие сразу окажется истинным, цикл выполняется хотя бы один раз (Цикл Repeat).

  3. Цикл со счетчиком. В цикле со счетчиком тело цикла повторяется заранее определенное число раз. Циклы со счетчиком используются довольно часто, и поэтому в языке Паскаль для этих целей имеется специальная конструкция (Цикл For).

  1. Какой из операторов ветвления лучше использовать при создании меню и почему?

Я считаю, что для создания меню наиболее подходит оператор ветвления case of, так как он позволяет выполнить одно выбранное действие в меню без лишних шагов, а именно без дополнительных проверок, какие совершает оператор if (при выборе пункта меню оператор if продолжает совершать проверку выбранного пункта, в то время как case уже выполняет действие). Ну это лично мое мнение.

Для чего нужна команда assign?

Назначает файловой переменной имя внешнего файла.

  1. Сортировка двумерного массива.

Двумерный массив – таблица однотипных элементов, организованная по строкам и столбцам. Местоположение каждого элемента двумерного массива (матрицы) определяется индексом (номером) строки и индексом (номером) столбца.

Сортировка – это алгоритм для упорядочения элементов в списке (например массиве) по переделённому признаку (например, по возрастанию или убыванию).

Наиболее распространённым способом сортировки двумерного массива является создание дополнительного одномерного массива, т.е. создается одномерный массив, передается в него все элементы двумерного, программа его сортирует, а потом передает обратно отсортированный массив в двумерный массив.

  1. Для чего при сортировке одномерного массива, нужны два вложенных цикла?

Один цикл будет задавать количество проходов и останавливать сортировку, а второй собственно работать с числами, т.е. сортировать их.

  1. Чтение и запись в файлы.

Для записи данных в файл можно использовать процедуру write:

write(f, x);

здесь

f — имя файловой переменной,

x— имя переменной, значения из которой запи-

сываются в файл.

Тип компонентов файла обязательно должен совпадать с типом

переменных.

Для чтения информации из файла, связанного с файловой пере-

менной f, можно воспользоваться процедурой read:

read(f, x1, x2, x3,..., xn);

read(f, x);

здесь

f — имя файловой переменной,

x, x1, x2, ..., xn — имена переменных, в которые считываются

значения из файла.

Процедура read последовательно считывает компоненты из

файла, связанного с файловой переменной f, в переменные x1, x2, ...,

xn. При считывании очередного значения доступным становится сле-

дующее. Следует помнить, что процедура read не проверяет, достиг-

нут ли конец файла. За этим нужно следить с помощью функции eof.

Для того чтобы записать данные в файл, необходимо выполнить

следующее:

1) Описать файловую переменную.

2) Связать ее с физическим файлом (процедура Assign).

3) Открыть файл для записи (процедура rewrite).

4) Записать данные в файл (процедура write).

5) Обязательно закрыть файл (процедура Close).

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

A (имя массива): array (указание на то, что это и есть массив) [1...N] (размерность массива) of integer (указание на то, данные какого типа будет содержать массив).

  1. Сформулируйте правила форматирования программного кода.

Если у оператора есть (или могут быть) операторские скобки, то всё что внутри этих скобок должно быть на один уровень глубже этого оператора.

В Паскале всего четыре оператора, требующих операторские скобки:

  • If;

  • Case;

  • For;

  • While.

Так же операторские скобки нужны вспомогательному оператору Else, а так же процедурам и функциям (которые будут рассмотрены на следующих занятиях).

Размер отступа можно делать разным, однако наиболее распространено такое правило: использовать для отступов пробелы вместо символа табуляции, а сам размер отступа делать равным 4-м символам.

Использование пробелов вместо табуляции позволяет отображать код корректно в разных текстовых редакторах. Иногда бывает, что нужно посмотреть его на сервере с помощью установленного там редактора, либо вы используете утилиту по сравнению исходников, либо используете форму слияния в системе контроля версий. По умолчанию в во многих редакторах текста табуляция равна 8 символов и это стандарт юникса. Для сложного кода это слишком много. Когда же отступ меньше 4-х символов, то код хуже читается. Поэтому выбрана золотая середина – 4 символа.

Соседние файлы в предмете [НЕСОРТИРОВАННОЕ]