Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
Информатика Билеты Экзамен / Ответы на билеты.docx
Скачиваний:
26
Добавлен:
15.05.2015
Размер:
144.5 Кб
Скачать

Прикладная программа — это любая конкретная программа, способствующая решению какой-либо задачи в пределах данной проблемной области.

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

Прикладные программы могут носить и общий характер, например, обеспечивать составление и печатание документов и т.п.

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

Прикладные программы могут использоваться либо автономно, то есть решать поставленную задачу без помощи других программ, либо в составе программных комплексов или пакетов.

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

6.5. Что такое операционная система?

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

Операционная система обычно хранится во внешней памяти компьютера — на диске. При включении компьютера она считывается с дисковой памяти и размещается в ОЗУ.

Этот процесс называется загрузкой операционной системы.

В функции операционной системы входит:

  • осуществление диалога с пользователем;

  • ввод-вывод и управление данными;

  • планирование и организация процесса обработки программ;

  • распределение ресурсов (оперативной памяти и кэша, процессора, внешних устройств);

  • запуск программ на выполнение;

  • всевозможные вспомогательные операции обслуживания;

  • передача информации между различными внутренними устройствами;

  • программная поддержка работы периферийных устройств (дисплея, клавиатуры, дисковых накопителей, принтера и др.).

Билет№6 Алфавит в языке паскаль . Типы данных . Переменные . Константы.

Алфавит языка

Алфавит — это совокупность допустимых в языке символов. Алфавит Турбо Паскаль включает следующий набор основных символов:

  • строчные и прописные латинские буквы:

  • A B C D E F G H I J K L M N O P Q R S T U V W X Y Z

a b c d e f g h i j k l m n o p q r s t u v w x y z

  • пробел

  • подчеркивание: _

  • арабские цифры:0   1   2   3   4   5   6   7   8   9

  • знаки операций:+   —   *   /   =   <>   <   >   <=   >=   :=   @

  • ограничители:

. , ' ( ) [ ] (. .) { } (* *) .. : ;

  • спецификаторы:^    #   $

  • служебные (зарезервированные) слова:

Иерархия типов в языке Паскаль такая:

  • Простые

    • Порядковые

      • Целые

      • Логические

      • Символьные

      • Перечисляемые

      • Интервальные

    • Вещественные

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

    • Массивы

    • Строки

    • Множества

    • Записи

    • Файлы

  • Указатели

Простые типы данных

В таблице приведены простые типы данных Турбо Паскаль, объем памяти, необходимый для хранения одной переменной указанного типа, множество допустимых значений и применимые операции.

Понятие типа данных в Турбо Паскаль

Идентификатор

Длина (байт)

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

Операции

Целые типы

integer

2

-32768..32767

+, -, /, *, Div, Mod, >=, <=, =, <>, <, >

byte

1

0..255

+, -, /, *, Div, Mod, >=, <=, =, <>, <, >

word

2

0..65535

+, -, /, *, Div, Mod, >=, <=, =, <>, <, >

shortint

1

-128..127

+, -, /, *, Div, Mod, >=, <=, =, <>, <, >

longint

4

-2147483648..2147483647

+, -, /, *, Div, Mod, >=, <=, =, <>, <, >

Вещественные типы

real

6

2,9×10-39 - 1,7×1038

+, -, /, *, >=, <=, =, <>, <, >

single

4

1,5×10-45 - 3,4×1038

+, -, /, *, >=, <=, =, <>, <, >

double

8

5×10-324 - 1,7×10308

+, -, /, *, >=, <=, =, <>, <, >

extended

10

3,4×10-4932 - 1,1×104932

+, -, /, *, >=, <=, =, <>, <, >

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

boolean

1

true, false

Not, And, Or, Xor, >=, <=, =, <>, <, >

Символьный тип

char

1

все символы кода ASCII

+, >=, <=, =, <>, <, >

Переменные и константы

Переменной называют элемент программы, который предназначен для хранения, коррекции и передачи данных внутри программы. Все переменные программы в Турбо Паскаль должны быть объявлены в разделе описания переменных.

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

В Турбо Паскаль применяется несколько стандартных видов констант:

Целочисленные константы. Могут быть определены посредством чисел, записанных в десятичном или шестнадцатиричном формате данных. Это число не должно содержать десятичной точки.

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

Символьные константы. Могут быть определены посредством некоторого символа (заключенного в апострофы).

Строковые константы. Могут быть определены последовательностью произвольных символов (заключенных в апострофы).

Типизированные константы. Представляют собой инициализиованные переменные, которые могут использоваться в программах наравне с обычными переменными. Каждой типизированной константе ставится в соответствие имя, тип и начальное значение. Например:

year: integer = 2001;

symb: char = ‘?’;

money: real = 57.23;

Билет№ 7 Структура программы на языке паскаль . Описание типов, переменных и констант Программа на языке Pascal всегда состоит из двух основных частей: описания последовательности действий, которые необходимо выполнить, и описания данных, с которыми оперируют действия. Действия представляются операторами языка, данные вводятся посредством описаний и определений. Кроме того, программа может быть снабжена заголовком, который задаст имя программы и ее параметры.

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

Рассмотрим полную структуру программы на языке Паскаль. В общем случае программа состоит из:

заголовка программы - раздел начинается с ключевого слова program, далее идет название вашей программы.  Например, program Area; - обратите внимание, что любой оператор языка Паскальзаканчивается точкой запятой.  Также распространенной ошибкой является заголовок программы вида: program 1; Имя программы - это пользовательский идентификатор, и он не может начинаться с цифры.

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

блок операторов - единственный обязательный блок программы, в нем вы размещайте, те команды которые должны быть выполнены в процессе выполненияпрограммы. Блок операторов начинается с ключевого слова begin и заканчивается end с точкой.

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

Определение констант задает в программе идентификаторы, являющиеся синонимами (представителями) некоторых значений.

Определение типов предназначено для задания конкретных множеств значений. Указанные множества обозначаются именами (идентификаторами) и в дальнейшем могут служить для описания переменных.

Описание переменных вводит совокупность данных, с которыми производятся действия. Переменная обозначается идентификатором; с каждой переменной связывается ее тип, определяющий множество допустимых значений этой переменной и, соответственно, набор допустимых операций.

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

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

Раздел описания констант

Константа - это величина, которая не изменяет своего значения в процессе выполнения программы. С константами мы с Вами уже встречались, так как в общем случае константой является любое целое или вещественное число, символ, идентификаторы false и true, а также идентификаторы, обозначающие значения переменных перечисляемого типа. Но константа может быть обозначена и именем. В этом случае она должна быть описана в разделе описания констант. Раздел описания констант начинается словом Const от англ. constancy - постоянство).

Например,

Const N = 25; K = 38; D = (N + K) Div 2; Letter = 'f'; M = 5E15

Здесь n, k, d - это целочисленные, letter - константа символьного типа, а m - константа вещественного типа. Следует заметить, что константа d принимает свое значение после вычисления выражения. В разделе констант можно использовать лишь некоторые стандартные функции, такие, как Abs, Chr, Pred, Succ, Odd, Ord.

Присваивание имен константам делает программу более удобной для понимания и внесения исправлений в программу. При изменении констант достаточно будет изменить соответствующие значения в разделе описания констант.

Раздел описания переменных

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

В каком разделе происходит описание переменных?

Чем характеризуется переменная?

Назначение каждой из перечисленных характеристик.

Верно ли следующее высказывание: "При запуске программы, написанной на языке Паскаль, переменные инициализируются, т.е. автоматически получают некоторое начальное значение. Следует придерживаться такого принципа: применять переменную лишь тогда, когда ей присвоено некоторое определённое значение".

Наряду с переменными и константами существуют и так называемые типизированные константы. В описании типизированной константы присутствуют описание типа и одно из допустимых значений, например,

Const N : Integer = 15; ch : Char = #87.

Типизированные константы являются, собственно говоря, переменными. В частности, они могут изменять своё значение в процессе выполнения программы. К преимуществам можно отнести и то, что они инициализируются в начале программы.

Раздел описания типов

В языке Паскаль все данные, используемые программой, должны принадлежать к какому-либо заранее известному типу данных.

Тип данных определяет:

формат представления данных в памяти ЭВМ;

множество допустимых значений;

множество допустимых операций.

Билет №8 Алгоритмический язык паскаль. Арифметические выражения . Функции . Оператор присваивания.

Алгоритмический язык Паскаль Программа на Р записывается в виде последовательности символов:  * заглавные и прописные латинские буквы; * арабские цифры; * знаки препинания ( : ; , . ); * знаки операций. Арифметические операции правила их записи. Знаки операций: *, /, -, +, div, mod (a div b) частное от деления а на b (a mod b) остаток, после деления а на b. (а,b-целые). a div b= a mod b =a-((a div b)*b) 17 div 3 = 5 17 mod 3 = 2 8 div 2 = 4 8 mod 2 = 0 1 div 5 = 0 1 mod 5 = 1 При выполнении арифметических операций соблюдаются следующие правила: 1. Все знаки проставляются a b a*b; 2. Два знака не могут следовать один за другим n/-2 n/(-2);  3. Соблюдается иерархия выполнения арифметических операций: стандартные функции;div, mod; *, /; +, -; 4. Изменить иерархию можно только с помощью скобок.  Типы переменных.  Переменные на языке Паскаль задаются своими именами (63 символа). Целочисленные переменные. Shortint - короткие целые числа (1 байт). (-128 127) Longint - удвоенные целые числа (4 байта). (-231231-1) Integer - обычные целые числа (2 байта). (-3276832767) Word - целые положительные числа (2 байта). (065535) Byte - целые короткие положительные числа (1 байт). (0255) Верхнее граничное значение целочисленных переменных задано в Паскале как константа и имеет соответствующее имя: Maxint = 32767 (215-1) Maxlongint = 231-1 Логический тип. Boolean - логические переменные (1 байт) могут принимать 2 значения: * True (истина) * False (ложь) Логические переменные могут использоваться только в логических выражениях. Над ними можно выполнять только 2 операции: * равно (=) * не равно (< >) Для идентификаторов имеет место: False< True Арифметические выражения записываются по следующим правилам:

Нельзя опускать знак умножения между сомножителями и ставить рядом два знака операций.

Индексы элементов массивов записываются в квадратных (школьный АЯ, Pascal) или круглых (Basic) скобках.

Для обозначения переменных используются буквы латинского алфавита.

Операции выполняются в порядке старшинства: сначала вычисление функций, затем возведение в степень, потом умножение и деление и в последнюю очередь — сложение и вычитание.

Операции одного старшинства выполняются слева направо. Однако, в школьном АЯ есть одно исключение из этого правила: операции возведения в степень выполняются справа налево. Так, выражение   2**(3**2)  в школьном АЯ вычисляется как   2**(3**2) = 512. В языке QBasic аналогичное выражение   2^3^2   вычисляется как   (2^3)^2 = 64.     А в языке Pascal вообще не предусмотрена операция возведения в степень, в Pascal   x^y   записывается как   exp(y*ln(x)),   а   x^y^z   как   exp(exp(z*ln(y))*ln(x)).

Функции в Pascal

Описание функции определяет часть программы, в которой вычисляется и возвращается значение. Описание функции состоит из заголовка и блока. Заголовок содержит ключевое слово Function, имя функции, необязательный список формальных параметров, заключенный в круглые скобки, и тип возвращаемого функцией значения. Общий вид заголовка функции следующий:

Function <имя> [(<список формальных параметров>)]: <тип возвращаемого результата>;

где: FUNCTION – зарезервированное слово функция; <имя> - имя функции, является уникальным, выбирается по общим правилам, желательно чтобы оно отражало смысл функции; <сп. форм. пар.> - список формальных параметров т.е. список имен обозначающих исходные данные функции с указанием их типов; <тип> - тип результата возвращаемого функцией и присваиваемого имени функции; <блок> - тело процедуры представляющее разделы описаний и раздел операторов, представляющий составной оператор (совокупность операторов, заключенных в операторные скобки BEGIN END).

Оператор присваивания - основной оператор любого языка программирования. Общая форма записи оператора:

имя величины := выражение

Например, V:=A; или V:=A+1;

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

Как только в программе встречается переменная, для неё в памяти отводится место. Оператор присваивания помещает значение выражения в место, отведённое переменной.

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

Выражение может быть арифметическим, логическим или литерным. Важно, чтобы тип величины был согласован с видом выражения. Оператор присваивания выполняется в таком порядке:  - вычисляется выражение, записанное справа от знака :=  - полученное в результате значение присаивается переменной, записанной слева от знака := , то есть переменная теперь будет хранить это значение.

Операторы программы (подпрограммы) обычно выполняются в том порядке, в каком они записаны, т е слева – направо и сверху-вниз. Однако есть операторы, которые нарушают этот порядок, например, условный оператор

Переменная в ( 1 ) может быть элементом более сложной структуры, например, объекта или массива (вектора, матрицы).

Билет№9 Операторы ввода и вывода В данном разделе рассмотрим организацию ввода и вывода данных с терминального устройства. Терминальное устройство - это устройство, с которым работает пользователь, обычно это клавиатура и экран (дисплей).

Ввод данных

Для ввода исходных данных чаще всего используется процедура ReadLn:

ReadLn(A1,A2,...AK);

Процедура производит чтение К значений исходных данных и присваивает эти значения переменным А1, А2, ..., АК.

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

Значения исходных данных могут отделяться друг от друга пробелами и нажатием клавиш табуляции и Enter.

Не допускается разделение вводимых чисел запятыми!

Вывод данных

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

Write(A1,A2,...AK);

WriteLn(A1,A2,...AK);

Первый из этих операторов производит вывод значений переменных А1, А2,...,АК в строку экрана. Второй оператор, в отличие от первого, не только производит вывод данных на экран, но и производит переход к началу следующей экранной строки. Если процедура writeln используется без параметров, то она просто производит пропуск строки и переход к началу следующей строки.

Переменные, составляющие список вывода, могут относиться к целому, действительному, символьному или булевскому типам. В качестве элемента списка вывода кроме имен переменных могут использоваться выражения и строки.

Форма представления значений в поле вывода соответствует типу переменных и выражений: величины целого типа выводятся как целые десятичные числа, действительного типа - как действительные десятичные числа с десятичным порядком, символьного типа и строки - в виде символов, логического типа - в виде логических констант TRUE и FALSE.

Оператор вывода позволяет задать ширину поля вывода для каждого элемента списка вывода. В этом случае элемент списка вывода имеет вид А:К, где А - выражение или строка, К - выражение либо константа целого типа. Если выводимое значение занимает в поле вывода меньше позиций, чем К, то перед этим значением располагаются пробелы. Если выводимое значение не помещается в ширину поля К, то для этого значения будет отведено необходимое количество позиций.

Для величин действительного типа элемент списка вывода может иметь вид А:К:М, где А - переменная или выражение действительного типа, К - ширина поля вывода, М - число цифр дробной части выводимого значения. К и М - выражения или константы целого типа. В этом случае действительные значения выводятся в форме десятичного числа с фиксированной точкой.

Пример записи операторов вывода:

var rA, rB: Real;

iP,iQ:Integer;

bR, bS: Boolean;

chT, chV, chU, chW: Char;

begin

. . .

WriteLn(rA, rB:10:2);

WriteLn(iP, iQ:8);

WriteLn(bR, bS:8);

WriteLn(chT, chV, chU, chW);

end.

Билет №10 .Условный оператор . Понятие о составном операторе

Условные операторы позволяют выбирать для выполнения те или иные части программы в зависимости от некоторых условий. Для задания подобного рода разветвляющихся вычислительных процессов в языках программирования существуют условные операторы. Рассмотрим полный условный оператор Паскаля:

if B then S1 else S2

Здесь if (если), then (то) и else (иначе) являются служебными словами, В – логическое выражение, а S1 и S2 – операторы.

Выполнение такого условного оператора в Паскале сводится к выполнению одного из входящих в него операторов S1 или S2: если заданное в операторе условие выполняется (логическое выражение В принимает значение true), то выполняется оператор S1, в противном случае выполняется оператор S2.

Алгоритм решения упомянутой выше задачи вычисления z= max( x, y) можно задать в видеусловного оператора Паскаля

if x>y then z:= x else z:= y

Составной оператор - это последовательность произвольных операторов программы, заключенная в операторные скобки. Фактически весь раздел операторов, обрамленный словами begin ... end, представляет собой один составной оператор. Поскольку зарезервированное слово end является закрывающей операторной скобкой, оно одновременно указывает и конец предыдущего оператора, поэтому ставить перед ним символ “;” необязательно. Наличие точки с запятой перед end в предыдущих примерах означало, что между последним оператором и операторной скобкой end располагается пустой оператор. Пустой оператор не содержит никаких действий, просто в программу добавляется лишняя точка с запятой. В основном пустой оператор используется для передачи управления в конец составного оператора: как и любой другой, пустой оператор может быть помечен, и ему можно передать управление

.