Поиск

Полнотекстовый поиск:
Где искать:
везде
только в названии
только в тексте
Выводить:
описание
слова в тексте
только заголовок

Рекомендуем ознакомиться

'Автореферат'
на заседании диссертационного совета Д 212.136.01 по филологическим наукам при Московском государственном гуманитарном университете им. М.А.Шолохова....полностью>>
'Учебно-тематический план'
1. Понятие, сущность, задачи и основные направления (отрасли) прокурорского надзора. 4 4 . Возникновение и основные исторические этапы развития отече...полностью>>
'Документ'
Установленное антивирусное (ПО) 11. Личные подписи пользователей АРМ: 1 . Ответственный по защите информации (подпись) (фамилия и....полностью>>
'Регламент'
В соответствии с Законом Нижегородской области от 9 апреля 2001 года N 176-З "О Правительстве Нижегородской области", в целях дальнейшего с...полностью>>

Программа на Turbo-Pascal состоит из: заголовка программы; блока; знака (. ). Заголовок программ

Главная > Программа
Сохрани ссылку в одной из сетей:

Программирование на языке

TURBO-PASCAL.

Структура программ.

“…” - ограничитель ключевых слов.

[…] - необязательные конструкции.

{…} – повторение произвольное число раз.

/ - выбор варианта.

= - равнозначность.

Программа на Turbo-Pascal состоит из: заголовка программы; блока; знака ( . ) .

Заголовок программ состоит из ключевого слова “program” < идентификатор программы > “ ; “ .

Идентификатор – название программы, ее назначения, номер версии, указания программиста. Длина идентификатора не более 25 символов, начинается обязательно с буквы и не должен быть оператором на Турбо-Паскале. Заголовок может быть опущен, но это не этично.

Блок - состоит из описательной части (декларативной) и исполнительной.

Исполнительная часть содерж ит определение всех действий по обработке информации.

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

Program” < идентификатор программы > “ ; “

Блок программ.

[ { $ … } ] – директива компиляторов;

[ uses ] – раздел подключения библиотек;

[ label ] – раздел объявления меток;

[ const ] – раздел объявления констант;

[ type ] – раздел объявления типов, переменных и констант;

[ var ] – раздел объявления переменных;

[раздел объявления процедур и функций ]

исполняемая часть:

“begin” , операторы , end.

Директивы компиляторов. В данном разделе могут быть даны оказания компиляторов.

@ { $0 + } – поддерживать создание оверлейной структуры;

{ $A + } – выравнивать данные на границу слова;

{ $I - } – отключить контроль над оттирками ввода-вывода.

Раздел подключения библиотек-

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

Uses, control, graph;

Раздел объявления меток.

Раздел объявления меток, констант, типов. Идут за строкой Uses и могут следовать в произвольном порядке. А отдельные группы могут перемежаться, т.е. после описания типов могут следовать описания констант, после чего объявления переменных и слова описания констант, типов, меток и переменных.

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

Program proba;

Uses Ctr;

Label A1, A2, A3

Begin

A3: goto A1; A2: оператор;

. . . . . .

A1: оператор; goto A3;

. . . . . .

goto A2; end.

Если метка описана, то она обязательно должна присутствовать в исполняемой части и наоборот.

Раздел описания типов служит для определения нестандартных типов данных.

Чтобы описать тип нужно пользоваться “ type “

{ mas = “массив символов, в котором 3строки, 5столбцов” }

mas= arroy of char [ 1 … 3, 1 … 5];

var a: mas;

Раздел описания constant.

Служит для объявления объектов, типы значения которых принимает до исполнения команд начальной части. Если constant-а использует нестандартный тип, этот тип должен быть описан выше раздела констант.

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

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

“Const” {имя конст. [ “ : ” тип конст. ] “ = ” значение “ , ” } “ ; ”

Const Ca, Cb: mas = ( (1,3,5,7,9),

(2,4,4,8,10),

(3,5,7,9,11). );

const = mas = 3, n = 5;

type - mas = arras of char [ 1 … m, 1 … k ],

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

Служит для определения имен и типов объектов, под которые транслятор согласно типу выделит определённый участок памяти и разрешит диапазон допустимых значений.

Имя переменной будет служить адресом обращения к участку оперативной памяти.

У каждого объекта имя должно быть уникальное, объявленное один раз, не совпадать с оператором на turbo pascal, и область действия с этим объектом будет ограничена его типам, может повторяться.

{ и.п, и.п, и.п }

“ Var “ { имя переменной “ : “ тип переменной “ ; ” }

Раздел описания подпрограмм.

Служит для описания процедур и функций согласно синтаксису языка Turbo Pascal.

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

“Begin” (выделить его).

Операторы

“end”

Norton Commander-

Загрузочный файл NC.exe. Чтобы запустить надо: путь набрать nc.exe.

Для создания папки в корневом каталоге F7 и имя.

Ins – выделить или отменить

“ + ” - выделить все файлы с каким-либо расширением

“ - ” и Enter – отменить выделение по расширению файла

“ * ” - выделить все файлы или отменить.

Инвертировать выделенные файлы: нажать Ins, выделить несколько файлов и нажать *.

Перенести файлы. Выделить на правой панели файлы с ini перевести курсор на левую панель и нажать F5.

Вызвать “дерево” нажатием F10 набрать ST1, выполнить (Enter).

Переименовать файл с тем же расширением: выделить файл, нажать на F6 и написать новое имя.

Удалить каталог - F8

(Встать на него и F8)

F9 – выделить файл, появляется количество Байт.

Структура программ.

Описание ключевых символов.

“…” – ограничитель ключевых слов.

Типы переменных

Тип переменной определяется при её декларации. Декларацией называется формат ( объем оперативной памяти), в котором эта переменная храниться в памяти и диапазон её возможных значений.

Типы данных делятся на пять основных классов:

1. простые типы;

2. структурированные типы;

3. ссылочные;

4. процедурочные;

5. объектные.

Простые типы делятся: целочисленный тип; логический тип; символьный тип; перечисляемый тип; интервальный тип; вещественный тип; целочисленный тип.

- byte 0: 255 1 байт без знака. От 0 до 255

- shortint – 128 : 127 1байт со знаком.

- word 0: 65565 2байта без знака.

- integer – 32768: 32764 2байта со знаком.

- longint - 2147483648: 2147483647 4байта со знаком

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

- boolean 1бит} True = 1 истина

- bytebool 1бит} False = 0 ложь

- wordbool 2бит}

- longbool 4бит}

25 1 ”c”

byte boolean char

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

Предназначен для хранения одного символа.

Случайное слово

Char 1б. ( содержит код любого символа)

Символы могут быть: [ ‘A’…’Я’ ] [ ‘a’…’я’ ]

[ ‘A’…’Z’ ] [ ‘a’…’z’ ]

[ ‘0’…’9’ ]

Перечисляемый тип.

Определяется как упорядоченный набор идентификаторов, представляющих собой перечисление.

Type day = ( Понед. Втор. Среда. Четверг. Пятница. )

Var week: day;

week: = ‘понедельник’

(переменная)

Интервальный тип данных

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

1 type Main = (1…31)

от1 до31

Week = (1…7)

Sim = ‘A’…’Я’;

2 var Month : (31,29,31,30,31);

day : (1…7)

day : week;

ss: sim;

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

В компьютере представлен в формате с правающ. десятичной точкой.

Real 6Б. 11-12 знаков ( под матиссу)

Single с одинарной точностью 4б. выделяется 7-8 знаков

Double с двойной точностью 8б. 15-16 знаков

Extended с повышенной точностью 10б. 19-20 знаков

Comp сложный 8б. 19-20 знаков

Var a,b: Real ; a [__] b[__]

6б 6б

type sim = Real

( переменная)

var ss: sim ; ss [__]

Константы.

Real 2,9 E-39 … 1,7E+38

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

Single 1,3E-45 … 3,4E+38

Double 5,0E-324 … 1,7E+308

Extended 3,4E-4932 … 1,1E+4932

Comp -9,2E+18 … 9,2E+18

Процедуры ввода-вывода информации.

Read (переменная)

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

Read (a)

Readln (переменная)

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

Write (переменная)

Из оперативной памяти, по адресу переменной. Значение выводится на монитор в точку где находится курсор.

3 1

Write (a): 5 : 2;

8 4

Если количество целых цифр не попадает в диапазон, то они выдавятся, но после “ , ” будет указано столько цифр сколько указано в формате.

= [__][__][__][_1_][_7_][_8_][_,_][_5_]

writeln

Тоже самое, что и readln.

Программа проводник.

1. Пуск -> программы -> проводник.

2. Пуск -> контекстное меню пункта -> пуск.

3. Решеточка + Е.

Заголовок – самая верхняя строчка.

[ - ] - свернуть задание на время.

Внизу текущее окно (нажать) – вернуться в проводник.

[x] – завершить работу с программой.

[_] – свернуть развернуть окно

Вторая строка – строка меню.

Третья – инструментальная панель.

[ ] – таблица (нажать) – появиться другое содержимое папки.

Вид (крупные значки, мелки и т.д.)

Все папки (только папки)

Создать папку ( диск С: )

1. Файл – создать – папка – набрать имя.

Нажатие правой клавиши мыши – контекстное меню.

В папке создать папку.

Папка NC(Кл.) – (таблица)

Выделить в разброс (нажать на один потом на другой файл)

Правка – выделить все или ctrl+alt

Выделить от и до ( выделить 1, потом скопировать- выделенные объекты.)

1. Копировать ( правка – копировать или ctrl+C или инструментальная панель или контекстное меню выделить объект (копировать)

2. Вставить Stp – правка – вставить или ctrl+X или вставить из буфера или контекстное меню.

3. Скопировать с помощью перетаскивания NC – выделить файл – нажать на правую клавишу мыши – перетащить в Stp. (копировать).

4. Переименовать (нажать на значок файла – на имя)

5. Удалить (нажать на правую клавишу мыши, удалить).

Turbo.exe.

1. Пуск – программа – turbo.exe.

2. Пуск – найти – нажать имя Turbo.exe.

Рабочее окно.

Верхнее и нижнее меню.

Program proba 1

Var a,b,r: real;

Begin

Begin

Read (a) r:= a+b; (клавиша end (конец строки), клавиша home (начальная строка))

Вывод результата write ( Результат ‘r: 5: 2’)

End

Теперь нужно обработать программу:

Ctrl+F9

Далее

14.25 (enter)

16.52 (enter)

Alt+F5 (вернуться назад)

Можно подключить библиотеку uses

После begin tex attr:=27;

Имя переменной

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

Textattr:=27; clrscr

(цвет фона)

перед read (а) пишем gotoxy (5,10); write (‘ ’)

x – символ

y – строка.

Перед end можно вставить readln;

Затем ctrl+F9

вернуться enter.

На дом: оболочка turbo pascal, опции меню, модуль ert

Program proba 1;

Uses ctr

Var a,b,r: real;

Begin

Textattr:=27; clrscr;

Gotoxy (30,2); write ( ‘лабораторная работа’)

Gotoxy (4,4); textcolor(5); write(‘фамилия’)

Textattr:=27

Gotoxy (5,10); write ( ‘введите а=’); read(a)

Gotoxy (5,11); write ( ‘введите b=’); read(b)

r:= a+b

write (‘результат=’, r: 5: 2);

readln;

readln;

end.

Вместо textcolor(5) набрать textattr(36)

Операции.

Действия над операндами называются операциями. Операнд – это переменная или выражение. Операции делятся на упарные и бипарные. Каждая операция имеет свой приоритет. Представим операции в соответствии с уменьшением приоритета.

Упарные. Изменение знака [ - ] ‘not’-отрицание, -(-2)=2, -(+2)=-2

Not true – false.

Not false – true.

Бипарные типы умножения

2) *, /, d; v, mad, and, she, shr;

3) +, -, or, xor;

4) Бипарные операции отношения

(=, <>, <, >, <=, >=, in;)

Операцией изменения знака “-” может быть только для данных типа real и integer.

Операция отрицания “not” может производиться, только над величинами типа Boolean, integer;

Каждый вид величины изменяется на противоположный.

Not 0 – -1

Not -32768 – 32767

Бипарные операции умножения.

- умножение, / - деление над данными целого и вещественного типа.

d; v – деление на целое } выполняется только над

mod – остаток от деления } целыми числами.

And(u) может применяться для данных типа boolean, integer.

She и shr – смещение влево и вправо. Используется только для величин целого типа.

Операция Операнд1 Операнд2 Результат

real real real

real integer real

integer real real

integer integer integer

/ real real real

r. in. r.

in. r. r.

in. in. r.

div in. in. in.

mod in. in. in.

const a=25; b=5; c=7;

var res: integer; (только целочисленные значения)

begin

res: = A div B; {Res=5} Res:= A mod B; {Res=0}

res: = A div C; {Res=3} Res:= A mod C; {Res=4}

and integer integer integer

boolean boolean boolean (истина)

Результатом операции “and” над данными типа “boolean” будет конъюнкция по следующим правилам: логическое произведением двух битов = 1, тогда когда оба бита = 1. Иначе сложное условие считается выполненным, если выполняются все простые условия.

And Boolean Boolean Boolean

(true) (true) (true) a and b

(false) (false) (false)

(true) (false) (false)

(false) (false) (false)

false and true -> false

2 and 22 -> 2

Сложное условие будет истинно, если каждое из простых условий истинно.

1. 2 and 22 -> 4

2. 2 and 2 -> 2

Бипарные операции сложения и вычитания.

Применяются для данных типа real, integer ( + , - )

+,- r r r

r in r

in r r

in in in

Остальные операции сложения.

(дизъюнкция) выполняются для операндов одинакового типа integer и Boolean (or; xor)

дизъюнкция

ox, xor in in in

Boolean Boolean Boolean

Результатом операции “or” над величинами типа integer будет величина типа integer, являющаяся логической суммой соответствующих других других пар битов. Логическая сумма пары битов равна 0 или в том случае, если оба бита=0. В противном случае сумма=1

(сложное условие считается выполненным, если выполняется хотя бы одно простое условие)

or (или) f f f

t f t

f t t

t t t

12 or 22 -> 30

2 or 3 -> 3

Результатом операции xor над величинами типа Boolean будет симметрическая разность (строгая конъюнкция). Результат 2 битов равен 0 лишь в том случае, если оба бита одинаковые.

Xor f f f

t t f

t f t

f t t

12 xor 22 -> 26

4. Операции отношений.

Могут применяться для всех типов данных. Результатом операций всегда будет величина типа “Boolean” со значением false или true. Оба операнда соединенные знаком отношения должны быть одного типа.

a: char b: real

Ё- неравно Наличие скобок, изменяя приоритет

20 = 20 true F > T F

30,5>15,7 true F < T T

Лабораторная работа №1

Математические функции.

Abs(x) – (x) (возвращает абсолютное значение числа х)

Cos(x) – cosx

Sin(x) – sinx

Arctg(x) – arctgx

Exp(x) – e^x

Ln(x) – lg x

Pi – пи

Sgr(x) – x^2

Sgrt(x) – кв. корень x

Exp(nxln(x)) – x^n

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

1. Изучить:

- запись констант, переменных, стандартных функций;

- правильные записи арифметических выражений;

- арифметический оператор присваивания;

- организацию простого ввода-вывода данных;

- организацию подключения библиотеки управляющей текстовыми режимами монитора;

- процедуры и функции модуля Ctr.

2. Разработать алгоритм решения в соответствии с задачей.

3. Составить программу решения задачи.

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

5. Использовать модуль Ctr.

1. Задание к работе.

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

y = [x^y/x-3*^y/x]

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

Контрольные вопросы.

1. Какие типы величин использованы в программе.

2. Указать диапазон значений величин целого и вещественного типов.

3. Какие имена переменных допустимы в программе?

4. Как задается тип переменных в программе?

5. Указать имена стандартных функций для вычисления: sqrt x, e^x, sin x, cos x, ln x, [x].

6. Можно ли в качестве операнда в арифметическом выражении использовать:

а) имя массива; 6

б) имя стандартной функции, например, siny,

в) имя символьной переменной или переменной логического типа.

7. Назвать последовательность действий при выполнении арифметической операции присваивания. Допустимо ли использование величин разных типов.

8. Написать арифметический оператор присваивания для вычисления значения;

p(x) = ((((a5x+a4)x+a3)x+a1)x+a0);

9. Указать средства имеющиеся в языке программирования для управления размещения данных по строке. Как организовать ввод значения сопровождая выводимое числовое значение наименованием переменной? Как организовать пропуск одной, двух строк при вводе?

10. Как выбрать значение исходных данных для тестового варианта счета?

Операторы.

Оператор – это описание действий, которые будут выполнены при реализации алгоритма.

В турбо паскале существуют 2 вида операторов: простые и структурные т.е. сложные.

Простые операторы: - оператор присвоения;

- оператор перехода;

- функции и процедуры;

- пустой оператор;

труктурные операторы: - составной оператор;

- оператор условия;

- оператор варианта;

- оператор цикла.

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

:=”

С помощью оператора присвоения “:=” значение правого выражения присваивается левой переменной.

Переменная “:=” значение;

Переменная “:=” выражение;

Переменная “:=” функции.

Из написанных форматов ясно, что с левой стороны от знака может быть только переменная.

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

Var a: real;

b: char.

Оператор перехода.

“goto”[__] < метка >;

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

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

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

Goto M1;

. . . .

. . . .

M1:

. . . .

. . . .

(Для лабораторной №1: структура программы, типы переменных, операции, операторы, модульCtr, оболочка Турбо Паскаль.)

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

-Такие операторы, которые состоят из других операторов:

1. Составной оператор;

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

3. Оператор варианта CASE;

4. Оператор цикла repeat … util;

5. Оператор цикла while … do;

6. Оператор цикла For … to … do;

7. Оператор над записями with.

Составной оператор.

Содержит ключевые слова (“begin” и “end”), между которыми перечислены ряд операторов. Составной оператор используется там, где синтаксис языка требует использования 1-го оператора, а необходимо выполнить несколько операторов. Выполнение составного оператора приводит к выполнению заключенной в нем последовательности.

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

Оператор условия if служит для выбора операторов программы к выполнению согласно полученного условия. Формат, обязательное ключевое слово if и т.д.

“if” <условие>”then”<оператор1>

[“else”<оператор2>];

Оператор if выполняется следующим образом:

<условие>

типа Boolean

Значит результатом вычисления данного условия будет Boolean (“истина” или ”ложь”). В условии должны присутствовать not, and, or, xor, in. <, >, <>, =, <=, =>,

<оператор1> <оператор2> - это составной, простой или структурированный оператор. Между ними begin … end (составной), := (простой), if, case и т.д.

1. Сначала вычисляется условия:

а) если условие “истина”, то выполняется оператор1, стоящий за ключевым словом “them”;

б) если условие “ложь”, то выполняется оператор2, стоящий за ключевым словом “else”, при этом оператор1 пропускается.

2. После того, как выполняется оператор1 или 2, действие переходит на оператор стоящий за if.

If i>18 then begin readln; i:=1; clrsCB; end.

Оператор if может иметь вложенные операторы if,если это так, то обязательно присутствует else.

Итак:

program proba;

write (y: 5: 2);

Var x,y; real end.

Begin x[__] y[__]

Read(x);

end.



Скачать документ

Похожие документы:

  1. Основы Pascal. Типы данных. Структура программы на языке Pascal

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

    Программа
    Программирование как процесс создания программы формально состоит из выбора языка программирования и замены элементов блок-схемы алгоритма соответствующими операторами.
  3. Ваша первая программа на Паскале

    Программа
    Паскаль - это один из самых простых языков, но далеко не один из самых слабых. Изучать мы с вами будем Turbo Pascal 7.0 - так вот на нем можно написать любую программу, которая придет в голову.
  4. Turbo Pascal содержание введение

    Реферат
    Первая версия языка Паскаль была разработана швейцарским ученым Никлаусом Виртом в 1968 году. Первоначально язык предназначался для целей обучения, поскольку он является достаточно детерминированным, т.
  5. Циклические программы. Структурированный тип данных. Структура сложной программы на языке Турбо-Паскаль. Процедуры и функции. Простейшие графические возможности языка Турбо-Паскаль

    Документ
    Один из самых популярных языков программирования высокого уровня - язык Паскаль (англ. Philips Automatic Sequence Calculator) был разработан швейцарским ученым Никлаусом Виртом в 1969 году как учебный язык, но спустя некоторое время

Другие похожие документы..