Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
Расписанные билеты (Pascal).doc
Скачиваний:
0
Добавлен:
01.05.2025
Размер:
676.86 Кб
Скачать

Билет №1

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

Применительно к компьютерной обработке данных под информацией понимают некоторую последовательность символических обозначений (букв, цифр, закодированных графических образов и звуков и т.п.), несущую смысловую нагрузку и представленную в понятном компьютеру виде. Каждый новый символ в такой последовательности символов увеличивает информационный объём сообщения.

Информация может существовать в виде:

  • текстов, рисунков, чертежей, фотографий;

  • световых или звуковых сигналов;

  • радиоволн;

  • электрических и нервных импульсов;

  • магнитных записей;

  • жестов и мимики;

  • запахов и вкусовых ощущений;

  • хромосом, посредством которых передаются по наследству признаки и свойства организмов и т.д.

Информацию можно:

  • создавать;

  • передавать;

  • воспринимать;

  • использовать;

  • запоминать;

  • принимать;

  • копировать;

  • формализовать;

  • распространять;

  • преобразовывать;

  • комбинировать;

  • обрабатывать;

  • делить на части;

  • упрощать;

  • собирать;

  • хранить;

  • искать;

  • измерять;

  • разрушать;

  • и др.

Информация передаётся в виде сообщений от некоторого источника информации к её приёмнику посредством канала связи между ними. Источник посылает передаваемое сообщение, которое кодируется в передаваемый сигнал. Этот сигнал посылается по каналу связи. В результате в приёмнике появляется принимаемый сигнал, который декодируется и становится принимаемым сообщением.

Свойства информации:

  • достоверность;

  • полнота;

  • ценность;

  • своевременность;

  • понятность;

  • доступность;

  • краткость;

  • и др.

Обработка информации – получение одних информационных объектов из других информационных объектов путем выполнения некоторых алгоритмов.

Информационные ресурсы – это идеи человечества и указания по их реализации, накопленные в форме, позволяющей их воспроизводство.

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

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

Билет №2

Языки программирования высокого уровня

1954: Фортран (FORTRAN от FORmula TRANslator – транслятор, или переводчик формул), IВМ. Руководитель группы разработчиков – Джон Бэкус.

В 1958: Lisp – язык для обработки списков. Получил достаточно широкое распространение в системах искусственного интеллекта.

Потомки: Planner (1967), Scheme (1975), Common Lisp (1984).

1960: Algol-60. Руководитель команды разработчиков – Петер Наур (Peter Naur).

1960: Cobol.

1964: Basic. Авторы - профессора из Dartmouth College – Джон Кенеми и Томас Куртц.

1991: Visual Basic.

1965: РЕФАЛ (Турчин, МГУ)

1967: PL/1 (IBM).

1968: Algol-68. Руководитель – Петер Наур

1970: Pascal. Никлаус Вирт.

1978: Modula-2 (1978). 1988: Modula-3

Oberon и Oberon-2. ООП.

1972: “C”. Керниган, Денис Ритчи. ОС UNIX.

1971: Prolog.

1983: ADA (Ада Лавлейс). Дж. Ишбиа.

1983: C++. Бьярн Страуструп.

1995: Java. Кен Арнольд и Джеймс Гослинг (Sun Microsystems). Java Virtual Machine.

1995: JavaScript (Mocha, LiveScript). Netscape Communications.

1999: C#. Андерс Хейльсберг (MicroSoft).

VBScript. MicroSoft.

Жизненный цикл программного обеспечения (ПО) – период времени, который начинается с момента принятия решения о необходимости создания программного продукта и заканчивается в момент его полного изъятия из эксплуатации. Этот цикл – процесс построения и развития ПО.

Модели жизненного цикла ПО.

Водопадная модель жизненного цикла (англ. waterfall model) была предложена в 1970 году Уинстоном Ройсом. Она предусматривает последовательное выполнение всех этапов проекта в строго фиксированном порядке. Переход на следующий этап означает полное завершение работ на предыдущем этапе. Требования, определенные на стадии формирования требований, строго документируются в виде технического задания и фиксируются на все время разработки проекта. Каждая стадия завершается выпуском полного комплекта документации, достаточной для того, чтобы разработка могла быть продолжена другой командой разработчиков.

Этапы проекта в соответствии с каскадной моделью:

1. Формирование требований;

2. Проектирование;

3. Реализация;

4. Тестирование;

5. Внедрение;

6. Эксплуатация и сопровождение.

Существуют также:

Итерационная модель;

Спиральная модель (разработана в середине 1980-х годов Барри Боэмом).

Интегрированная среда разработки, ИСР (англ. IDE, Integrated development environment или integrated debugging environment) – система программных средств, используемая программистами для разработки программного обеспечения (ПО).

Обычно среда разработки включает в себя:

• текстовый редактор

• компилятор и/или интерпретатор

• средства автоматизации сборки

• отладчик.

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

Билет №3

Три группы правил (как для разговорных языков, так и для языков программирования)

  • Синтактика (правила построения сообщений)

  • Семантика (правила придания сообщениям смысла)

  • Прагматика (правила использования сообщений)

Языковые конструкции, составляющие текст программного кода:

  • Функциональный блок (структура «Следование»)

  • Конструкция двоичного разветвления (структура «Развилка»)

  • Итерация (структура «Цикл»)

№ уровня

Разговорный язык

Язык программирования

1

Буквы

Символы

2

Слова

Элементарные конструкции

3

Словосочетания

Выражения

4

Предложения

Операторы

1. Символы языка – символы с кодами 32 . . 127. Символы с кодами 128 . . 255 (в том числе и русские буквы) разрешаются только тогда, когда об этом специально сказано.

2. Элементарные конструкции – это имена, числа и строки.

3. Выражения – конструкции языка, задающие порядок вычисления какого-либо значения.

4. Операторы – минимальные конструкции языка, порождающие какие-либо действия компьютера.

Операторы бывают простые и структурированные.

Простые операторы:

4.1. Оператор присваивания

x := y + z

(В языке C++”: x = y + z )

4.2. Оператор вызова процедуры

ReadKey

(В языке “C++”: getch() )

4.3. Оператор перехода на метку

goto M1

GoTo M1

(В языке C++”: goto M1 )

M1:

4.4. Пустой оператор

Структурированные операторы:

1. Составной оператор (блок?)

2. Условный оператор

3. Оператор цикла

Билет №4

Переменная – поименованная область данных в оперативной памяти.

Тип переменной определяет множество значений, которые переменная может принять, и множество операций, которые над переменной можно производить.

Порядковая переменная – переменная, для каждого значения которой может быть названо следующее (например, с помощью функции Succ) и предыдущее (например, с помощью функции Pred)значение. Переменные непорядковых типов не могут быть аргументами (параметрами) функций Succ и Pred.

(В языке C++” понятие порядкового типа не используется)

К порядковым типам относятся:

1. Базовые целочисленные

Тип переменной

Диапазон значений

Объём памяти

Integer

–2147483648..2147483647

4

Cardinal

0..4294967295

4

2. Дополнительные целочисленные

Тип переменной

Диапазон значений

Объём памяти

Shortint

–128..127

1

Smallint

–32768..32767

2

Longint

–2147483648..2147483647

4

Int64

–2^63..2^63–1

8

Byte

0..255

1

Word

0..65535

2

Longword

0..4294967295

4

3. Символьные

Тип переменной

Диапазон значений

Объём памяти

Char

Chr(0)..Chr(255)

1

4. Прочие, о которых позже будет специально сообщено, как о порядковых типах (перечисляемые, тип-диапазон, …)

Остальные типы переменных порядковыми не являются.

Числовые вещественные типы

Тип переменной

Диапазон значений

Число знаков

Объём памяти

Real48

2.9*10–39 .. 1.7*1038

11–12

6

Single

1.5*10–45 .. 3.4*1038

7–8

4

Double

5.0*10–324 .. 1.7*10308

15–16

8

Extended

3.6*10–4951 .. 1.1*104932

19–20

10

Comp

–263+1 .. 263 –1

19–20

8

Currency

-22337203685477.5808.. 922337203685477.5807

19–20

8

Строковый тип

Тип переменной

Длина

Диапазон значений

Объём памяти

String

1..255

2..256

String[<Число>]

1.. <Число>

1≤<Число>≤255

<Число>+1

AnsiString

231

4B..2GB

WideString

230

4B..2GB

Логический тип

Тип переменной

Множество значений

Объём памяти

Boolean

False (0), True (1)

4

Все переменные, используемые в программе, написанной на языке Pascal (и на языке C++”), должны быть объявлены (описаны).

Var

A, b, myint : integer;

Lol : Boolean;

Существуют языки программирования, в которых описание переменных является делом необязательным (Fortran, Basic) или даже делом невозможным (Cliper).

Билет №5

Структура простейшей (состоящей из одного файла) программы на языке Pascal:

[ Program <Имя>;]

[<Ключи компиляции> ]

[uses <Список используемых устройств (модулей)>; ]

<Разделы объявления (описания) переменных, констант, типов, меток>

<Раздел объявления (описания) процедур и функций>

<Раздел исполнения>

Структура модуля на языке Pascal (Delphi):

unit <Имя>;

interface

[<Ключи компиляции> ]

[uses <Список используемых устройств (модулей)>; ]

[<Разделы объявления глобальных переменных, констант, типов, классов>]

[<Раздел объявления заголовков глобальных процедур и функций>]

implementation

[<Ключи компиляции> ]

[uses <Список используемых устройств (модулей)>; ]

[<Разделы объявления локальных переменных, констант, типов, классов >]

[<Раздел объявления локальных процедур и функций>]

[<Раздел исполнения>]

<Раздел исполнения> :: =

begin

<Операторы>

end

<Раздел объявления переменных> :: =

var // Признак начала раздела объявления переменных

<Список имён 1>: <Тип 1>;

<Список имён 2>: <Тип 2>;

. . .

Билет №6

Пример запуска программы с помощью командной строки:

<Путь к EXE-файлу>P2.exe 1 22 333 4444 55555

Кроме указания пути к исполняемому файлу, командная строка содержит список параметров запуска, которые могут быть распознаны и использованы программой. Разделитель элементов списка – пробел. Если пробел заменён группой из нескольких подряд идущих пробелов, эта группа воспринимается как один пробел.

Pascal: Для нахождения числа параметров программы служит стандартная (для TP7, Delphi, Lazarus) функция ParamCount (это функция без параметров). Благодаря этой функции становится известно, сколько параметров имеется в командной строке. Для обращения к самим параметрам служит стандартная функция ParamStr. Например, ParamStr(i) возвращает строку, содержащую i-й параметр программы.

C++

Число параметров программы на единицу меньше, чем значение первого формального параметра функции _tmain. Второй параметр функции _tmain представляет собой массив строк, содержащих параметры программы. Например, argv[i] есть строка, содержащую i-й параметр программы. argv[0] есть строка с именем самого EXE-файла и путём к нему.

Билет №7

begin

<Операторы>

end

Условный оператор (развилка)

1. Упрощенная (сокращенная) развилка. <Л.В.> – логическое выражение.

2. Классическая развилка

3. Вложенная развилка

Билет №8

<Раздел объявления констант без типа> : : =

const

<Имя константы 1> = <Константное выражение 1> ;

<Имя константы 2> = < Константное выражение 2> ;

. . .

Пример

const

m = 226 ;

e = 2.718281828459045 ;

e2 = e * e ;

c = „Щ‟ ;

s = „Это строка‟ ;

<Раздел объявления типизированных констант> : : =

const

<Имя константы 1> : <Тип 1> = < Константное выражение 1> ;

<Имя константы 2> : <Тип 2> = < Константное выражение 2> ;

. . .

Пример

const

n: longint = 2000000000;

EulerGamma: double = 0.5772156649015329;

В константных выражениях можно применять числа, строки, знаки операций,

имена уже объявленных констант, а также функции:

Abs, Chr, High, Length, Lo, Low, Odd, Ord, Pi, Ptr, Round,

SizeOf, Succ, Swap, Trunc.

NB! Перед then нужна ;

Билет №9

Цикл с параметром (1-й вариант)

for <Параметр> := <Начальн. знач.> to <Конечн. знач.> do <Оператор>

<Параметр> может быть только порядковой переменной.

<Начальн. знач.> и <Конечн. знач.> могут быть только выражениями порядкового типа.

Шаг изменения переменной <Параметр> равен (+1).

<Оператор> является телом цикла. Он выполняется столько раз, сколько значений примет <Параметр>, изменяясь от <Начальн. знач.> до <Конечн. знач.> с шагом (+1).

Если <Начальн. знач.> больше, чем <Конечн. знач.>, то тело цикла не выпоняется ни разу.

Замечание. В языке «C++» аналогичная конструкция имеет вид:

for (<Параметр> = <Начальн. знач.>;

<Параметр> <= <Конечн. знач.> ;

<Параметр>++ )

<Оператор>

<Параметр> может быть переменной «непорядкового» (в терминологии языка Pascal) типа. Например, может быть переменной типа Double.

Цикл с параметром (2-й вариант)

for <Параметр> := <Начальн. знач.> downto <Конечн. знач.> do <Оператор>

Шаг изменения переменной <Параметр> равен (1).

<Оператор> (тело цикла) выполняется столько раз, сколько значений примет <Параметр>, изменяясь от <Начальн. знач.> до <Конечн. знач.> с шагом (1).

Если <Начальн. знач.> меньше, чем <Конечн. знач.>, то тело цикла не выполняется ни разу.

Возможные ошибки:

Turbo Pascal 7.0:

(* for I := 1 to 4 do; writeln(‘I=’, I); *)

/*for I := 1 to 4 do;

Writeln(‘I=’, I); */

Результат: I=4 (TP7)

Язык «C++»:

// for (I = 1; I <= 4; I++); printf(“I=%d”, I);

/*for (I = 1; I <= 4; I++);

printf(“I=%d”, I); */

Результат: I=5

Билет №10

Цикл с постусловием

repeat <Операторы> until <Л.В.>

<Операторы> являются телом цикла.

Тело цикла выполняется по меньшей мере один раз, а затем, возможно, многократно, пока < Л.В.> есть ложь.

Если < Л.В.> есть истина при первой же оценке, то тело цикла выполняется один раз.

Если < Л.В.> есть ложь при каждой оценке, то тело цикла выполняется неограниченно много раз.

Инструкция break применяется для досрочного прекращения цикла. Равноценна оператору “goto Metka1”, для которого “Metka1:”расположена сразу после оператора цикла.

Инструкция continue применяется для досрочного перехода на очередную проверку условия продолжения цикла.

Равноценна оператору “goto Metka2”, для которого “Metka2:” расположена сразу после последнего из операторов, составляющих тело цикла.

Цикл с предусловием

While <Л.В.> do<условие>

Билет №11

Процедуры

<Объявление процедуры> : : =

procedure <Имя процедуры>[(<Список формальных параметров>)];

[<Разделы объявления локальных типов, констант, переменных>]

[<Разделы объявления локальных процедур и функций>]

Begin

} Раздел исполнения процедуры

<Операторы>

end;

<Список формальных параметров> : : =

<Элемент списка 1>; <Элемент списка 2>; . . .

<Элемент списка> : : =

<Список имён параметров-значений>: <Тип>

или

var <Список имён параметров-переменных>: <Тип>

или

const <Список имён параметров-констант>: <Тип>

<Обращение к процедуре> : : =

<Имя процедуры>[(<Список фактических параметров>)]

Замечание. Фактические параметры должны быть совместимы с формальными по типам.

program Example2;

type

MyInt = integer ;

var

I: MyInt ;

J: integer ;

procedure P2(var M: integer);

begin

. . .

end;

begin

P2(J) ; // Нормально

P2(I) ; // Ошибка

end.

program Example3;

var

I, J, K : integer ;

procedure P3(L : integer ; var M : integer ; const N : integer);

begin

Inc(L) ; // Бесполезно

Inc(M) ; // Полезно

(* Inc(N) ; *) // Ошибка

end;

begin

I := 1; J := 1; K := 1;

P3(I, J, K) ;

wri teln(‘I=’, I) ; // I = 1

wri teln(‘J=’, J) ; // J = 2

end.

Функции

<Объявление функции> : : =

function <Имя функции>[(<Список формальных параметров>)] :

<Тип возвращаемого значения>;

<Разделы объявления локальных типов, констант, переменных>

<Разделы объявления локальных процедур и функций>

Begin

} Раздел исполнения процедуры

<Операторы>

end;

Среди <Операторов> должен быть хотя бы один «Оператор» вида

<Имя функции> := <Выражение> ;

или

result := <Выражение> ;

program Example4;

var