Студопедия

КАТЕГОРИИ:


Архитектура-(3434)Астрономия-(809)Биология-(7483)Биотехнологии-(1457)Военное дело-(14632)Высокие технологии-(1363)География-(913)Геология-(1438)Государство-(451)Демография-(1065)Дом-(47672)Журналистика и СМИ-(912)Изобретательство-(14524)Иностранные языки-(4268)Информатика-(17799)Искусство-(1338)История-(13644)Компьютеры-(11121)Косметика-(55)Кулинария-(373)Культура-(8427)Лингвистика-(374)Литература-(1642)Маркетинг-(23702)Математика-(16968)Машиностроение-(1700)Медицина-(12668)Менеджмент-(24684)Механика-(15423)Науковедение-(506)Образование-(11852)Охрана труда-(3308)Педагогика-(5571)Полиграфия-(1312)Политика-(7869)Право-(5454)Приборостроение-(1369)Программирование-(2801)Производство-(97182)Промышленность-(8706)Психология-(18388)Религия-(3217)Связь-(10668)Сельское хозяйство-(299)Социология-(6455)Спорт-(42831)Строительство-(4793)Торговля-(5050)Транспорт-(2929)Туризм-(1568)Физика-(3942)Философия-(17015)Финансы-(26596)Химия-(22929)Экология-(12095)Экономика-(9961)Электроника-(8441)Электротехника-(4623)Энергетика-(12629)Юриспруденция-(1492)Ядерная техника-(1748)

Оператори умовного переходу




Begin

Begin

END.

Розглянемо найбільш важливі частини вищеописаних блоків. Під заголовком програми розуміється ім'я, що допомагає визначити її призначення. Ім'я, чи ідентифікатор, будується за наступними правилами: воно може починатися з великої чи малої букви латинського чи алфавіту знака «_», далі можуть стояти букви, чи цифри знак «_»; усередині ідентифікатора не може стояти пробіл. Після імені програми варто поставити «;», цей знак служить у Паскалі для поділу послідовних інструкцій. Помітимо, що ім'я програми може не збігатися з ім'ям відповідного файлу на диску.

Глобальні директиви компілятора

У цьому розділі програми компілятору можна дати вказівки, що визначають режими його роботи при трансляції програми. Ці вказівки оформляються в тексті програми як коментарі, що починаються парою символів ({$) і закінчуються символом (}). Такі вказівки можуть містити "замовлення" на включення в текст програми фрагментів інших програм (з відповідних файлів), інформацію чи відомості про необхідності використання арифметичного сопроцесора.

Оператор USES

Оператор USES відіграє важливу роль у підключенні до тексту програми системних модулів з бібліотек. У цьому операторі Ви вказуєте компілятору, з якої бібліотеки використовує модулі програма. Поняття "бібліотека", "модуль", "блок" складають основу термінології програмування на Паскалі. Бібліотека включає набір модулів, кожен з яких, має власне ім'я, компілюється окремо і до нашої програми підключається вже як "чорний ящик" з відомим інтерфейсом. Кожен модуль (блок (UNIT), як його називають на Паскалі) являє собою програму, що включає декларації типів і змінних, процедури і функції.

Опис міток

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

Після слова const містяться описи сталих, котрі будуть використані в програмі, наприклад:

 

const Zero = 0;

pi = 3.1415926;

my_const = -1.5;

Hello = 'Привіт!';

Визначення типів

Визначення типів призначене для завдання конкретних множин значень. Зазначені множини позначаються іменами (ідентифікаторами) і надалі можуть служити для опису змінних.

Оголошення глобальних змінних

За словом var розташовують оголошення змінних, котрі знадобляться нам при написанні програми. Змінні Паскаля можуть зберігати дані різної природи: числа, рядки тексту, окремі символи і т.п. Нижче приводиться частина типів перемінних, котрі можна застосовувати.

Назва типу Можливі значення Приклади значень
integer цілі: -32768... 32767 12, -10000
real дійсні (по модулі): 2,9x10-39... 1,7x1038 -9.81, 6.02e-23
string[n] рядок до n символів довжиною, якщо [n] не зазначено, то до 255 ‘abcde’, ‘привіт’
char одиночний символ ‘F’, ‘!’, ’_’,’ю'

 

Оголошення змінних записуються в наступній формі:

var <змінна>: <тип>;

Якщо описуються декілька змінних одного типу, то досить записати їхні імена через кому, а після двокрапки поставити загальний тип.

Приклади оголошення:

var Number: integer;

d,l: real;

Name: string [20];

Line: string;

Key1,Key2: char;

Опис процедури або функції

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

Блок основної програми.

Тут, між словами begin і end. розташовуються команди (точніше, оператори), що будуть виконуватися один за іншим при запуску програми. Розглянемо найпростіші типи операторів на наступному прикладі:

 

program First;

const a2 = 3;

a1 = -2;

a0 = 5;

var x,f: real;

 

write('Уведіть значення х ');

readln(x);

f:= a2*x*x+a1*x+a0;

writeln(‘Значення квадратного тричлена: ’,f);

end.

 

Перший рядок програми виводить на екран напис «Уведіть значення х», для цього використовується процедура write написана розроблювачами Турбо Паскаля, тобто набір команд, невидимий для нас, але існуючий реально в надрах системи Турбо Паскаль. Як параметр цієї процедури використовується наш рядок. Параметри завжди записуються в круглих дужках, апострофи означають, що параметр має рядковий тип. Отже, у першому рядку ми бачимо так називаний оператор виклику процедури. Кожен оператор відокремлюється від наступного символом «;». В другому рядку викликається процедура введення readln(x), яка чекає, поки користувач набере значення x із клавіатури і натисне клавішу «Enter», а потім переводить курсор на наступну рядок (ln (Line (рядок). У третьому рядку обчислюється значення тричлена і записується в змінну f; цей оператор називається оператором присвоювання, і позначається символом ":=". В останньому рядку на екран виводиться рядок «Значення квадратного тричлена:» і значення змінної f. Нескладно помітити, що тут процедурі writeln передається вже не один, а два параметри, причому вони можуть мати різні типи. Узагалі, процедури введення і виведення (тобто write, writeln, read, readln) можуть мати будь-яке число параметрів різних типів, параметрами можуть бути змінні, числа, рядки, а також вирази. Використовуючи вираз при виведенні, можна замінити два останні рядки нашої програми одним:

writeln('Значення квадратного тричлена: ', a2*x*x+a1*x+a0);

В арифметичних виразах на Паскале використовуються наступні знаки для позначення операцій: +, -, *, /. Для визначення порядку дій використовуються круглі дужки відповідно до загальновизнаних математичних правил.

Зауваження про імена. Для позначення змінних забороняється використання ряду слів, називаних зарезервованими, вони грають у мові особливу роль. Нам уже зустрічався ряд зарезервованих слів: program, begin, end, string, const, var, і т.п.


Процедури введення-виведення. Деякі вбудовані функції Турбо-Паскаля.

1. Процедури введення-виведення. Майже кожна програма повинна спілкуватися з користувачем, тобто виводити результати своєї роботи на екран і запитувати в користувача інформацію з клавіатури. Для того щоб це стало можливим, у Турбо-Паскалі маються спеціальні процедури (тобто невеликі допоміжні програми), називаються вони процедурами введення-виведення. Для того щоб змусити процедуру працювати в нашій програмі, потрібно написати її ім'я, за яким у дужках, через кому перелічити параметри, що ми хочемо їй передати. Для процедури виведення інформації на екран параметрами можуть служити числа чи текстові повідомлення, які повинна друкувати наша програма на екрані. Опишемо призначення цих процедур.

· write(p1,p2,... pn); – виводить на екран значення виразів p1,p2,... pn, кількість яких (n) необмежена. Вирази можуть бути числові, строкові, символьні і логічні. Під виразом будемо розуміти сукупність деяких дій, застосованих до змінних, чи константам літералам, наприклад: арифметичні дії і математичні функції для чисел, функції для обробки рядків і окремих символів, логічні вирази і т.п. Можливе форматне виведення, тобто явна вказівка того, скільки виділяти позицій на екрані для виведення значення. Приклад для дійсних типів: write(r+s:10:5); – вивести значення вираження r+s з виділенням для цього 10 позицій, з них 5 – після коми. Для інших типів усе значно простіше: write(p:10); – вивести значення виразу p, виділивши під це 10 позицій. Виведення на екран у будь-якому випадку виконується по правому краю виділеного поля.

· writeln(p1,p2,... pn); – аналогічно write, виводить значення p1,p2,... pn, після чого переводить курсор на новий рядок. Зміст параметрів – той же, зауваження про форматне виведення залишаються в силі. Існує варіант writeln; (без параметрів), що означає лише переведення курсору на початок нового рядка.

· readln(v1,v2,...vn); – уведення з клавіатури значень змінних v1,...vn. Змінні можуть мати рядковий, символьний чи числовий тип. При уведенні варто розділяти значення пробілами, символами табуляції чи переводу рядка (тобто, натискаючи Enter).

· read(v1,v2,...vn); – по призначенню подібний з readln; відмінність полягає в тому, що символ переводу рядка (Enter), натиснутий при завершенні введення, не «проковтує», а чекає наступного оператора введення. Якщо їм виявиться оператор уведення рядкової змінної чи просто readln; то рядковій змінний буде присвоєне значення порожнього рядка, а readln без параметрів не стане чекати, поки користувач натисне Enter, а зреагує на уже введений.

Приклад. Програма просить користувача ввести з клавіатури два цілих числа і друкує на екрані їхню суму:

program PrintSum;

var a,b: integer;

write('Уведіть два числа:');

readln(a,b);

writeln('Сума a і b дорівнює ',a+b);

readln;

end.

 

2. Функції числових параметрів.

Назва Значення
abs(x) модуль x
cos(x) косинус x
frac(x) дробова частина x
int(x) ціла частина x (тобто найближче ціле, що не перевершує x)
pi число p
round(x) x, округлене до цілого
sin(x) синус x
sqr(x) квадрат x
sqrt(x) квадратний корінь з x
trunc(x) число, отримане з x відкиданням дробової частини

 


Базові управляючі конструкції Турбо-Паскаля




Поделиться с друзьями:


Дата добавления: 2014-12-16; Просмотров: 447; Нарушение авторских прав?; Мы поможем в написании вашей работы!


Нам важно ваше мнение! Был ли полезен опубликованный материал? Да | Нет



studopedia.su - Студопедия (2013 - 2024) год. Все материалы представленные на сайте исключительно с целью ознакомления читателями и не преследуют коммерческих целей или нарушение авторских прав! Последнее добавление




Генерация страницы за: 0.01 сек.