- •Уводзіны Ключавыя палажэнні
- •Развіццё моў камп’ютарнага праграміравання
- •Эвалюцыя мовы Pascal
- •Структурная метадалогія распрацоўкі праграм Алгарытм
- •Асноўныя этапы рашэння задач на эвм
- •Блок-схемы
- •Структураграмы
- •Тэсціраванне праграм
- •Адладка праграм
- •Структурнае праграміраванне і дакладнасць праграм
- •Асноўныя канструкцыі структур кіравання
- •Метады распрацоўкі праграм
- •Праграміраванне зверху ўніз (ад агульнага да асобнага)
- •Модульнае праграміраванне
- •Праграміраванне знізу ўверх
- •Структурнае кадзіраванне
- •Арыфметыка эвм Сістэмы злічэння
- •Пераклады лікаў з адной сістэмы злічэння ў другую
- •Пераклад цэлых дадатных лікаў з сістэмы злічэння з асновай «p» у сістэму злічэння з асновай «q»
- •Пераклад правільных дробаў з сістэмы злічэння з асновай «p» у сістэму злічэння з асновай «q»
- •Пераклад змешаных дробаў
- •Формы прадстаўлення даных
- •Формы прадстаўлення лікаў у персанальным камп’ютары
- •Захаванне лікаў з фіксаванай кропкай
- •Захаванне цэлых лікаў
- •Алгарытм прадстаўлення адмоўнага ліку ў адваротным кодзе
- •Прынцыпы захавання лікаў з плаваючай кропкай
- •Фарматы лікаў з плаваючай кропкай арыфметычнага супрацэсара ibm pc/aт 8087
- •Сродкі алгарытмічнай мовы Pascal Агульная характарыстыка алгарытмічных моў
- •Базавыя элементы мовы Pascal
- •Алфавіт
- •Лексічная структура мовы
- •Агульная структура Pascal-праграмы
- •Простыя даныя мовы Pascal і работа з імі Тыпы звестак
- •Канстанты і пераменныя
- •Абсалютныя пераменныя
- •Цэлалікавыя даныя
- •Бітавая арыфметыка
- •Дзеянні бітавай арыфметыкі
- •Сапраўдныя даныя
- •Аперацыі над сапраўднымі данымі
- •Выразы мовы
- •Літарныя даныя
- •Функцыі
- •Булеўскія даныя
- •Даныя адраснага тыпу
- •Даныя карыстальніцкага тыпу
- •Даныя пералічальнага тыпу
- •Даныя інтэрвальнага тыпу
- •Элементарныя сродкі па рабоце з данымі Наданне значэння даным
- •Найпрасцейшае вызначэнне працэдур і функцый
- •Параметры
- •Знаёмства з файлавай сістэмай
- •Файлавы тып
- •Тэкставыя стандартныя файлы
- •Увод даных розных тыпаў
- •Вывад даных розных тыпаў
- •Вывад сімвалаў
- •Вывад радковых даных
- •Вывад лагічных значэнняў
- •Вывад цэлалікавых значэнняў
- •Вывад даных сапраўднага тыпу
- •Базавыя аператары мовы і метады праграміравання Аператары
- •Простыя аператары
- •Аператар безумоўнага пераходу goto
- •Аператар выкліку працэдуры
- •Пусты аператар
- •Састаўны аператар
- •Аператары выбару
- •Умоўны аператар
- •Метады і прыёмы праграміравання
- •Аператар варыянта
- •Прыклады праграм
- •Аператары паўтарэння
- •Аператар паўтарэння for
- •Аператар паўтарэння repeat
- •Аператар паўтарэння while
- •Хуткая ступень
- •Ітэрацыйныя алгарытмы вышэйшай матэматыкі
- •Структуры даных і праца з імі сродкамі мовы Pascal Парадкавыя тыпы
- •Мноствы
- •Тыпізаваныя канстанты тыпу «мноства»
- •Дзеянні над масівамі
- •Дзеянні над элементамі масіву
- •Пераменныя тыпу «масіў» са стартавым значэннем, ці тыпізаваныя канстанты-масівы
- •Канстанты з тыпам «масіў»
- •Камбінаваны тып «запісы»
- •Змяненне (прывядзенне) тыпаў і значэнняў
- •Радкі сімвалаў
- •Наданне значэння радкам
- •Радковыя выразы
- •Рэдагаванне радкоў
- •Пераўтварэнне радкоў
- •Механізмы структуравання праграм Працэдуры і функцыі
- •Функцыі карыстальніка
- •Параметры
- •Параметры-значэнні
- •Параметры-пераменныя
- •Прынцып лакалізацыі
- •Пабочны эфект
- •Рэкурсія і ітэрацыі
- •Параметры без тыпу
- •Працэдуры і функцыі як параметры. Працэдурныя тыпы
- •Пераменныя – працэдуры і функцыі
- •Падпраграмы ў модулях
- •Выкарыстанне модуля
- •Стандартныя бібліятэчныя модулі
- •Працэдуры кіравання праграмай
- •Эфектыўнасць праграм
- •Аптымізацыя ў час кампілявання
- •Індэксацыя
- •Выкарыстанне цыклаў
- •Арганізацыя цыклаў
- •Аптымізацыя цыклаў
- •Літаратура
Вывад даных розных тыпаў
Працэдура запісу Write выконвае вывад даных у радок і не закрывае яго, але на дысплеі, калі дайшлі да мяжы, радок разрываецца і ёсць пераход на наступны радок. Калі гэта быў апошні радок экрана, то адбываецца зрух (прагортка) экрана. Вывад можа ісці ў бесфарматным варыянце ці ў фарматным. У аператарах вываду
Write(y1, …, yn); Writeln(y1, …, yn);
параметры y1, …, yn могуць мець тры варыянты запісу:
Е (бесфарматны вывад)
Е:F (фарматны вывад)
Е:F:d (фарматны вывад толькі для сапраўдных даных!).
Тут Е, F, d – выразы. Е – той выраз, што выводзім (просты выпадак – імя пераменнай дазволенага тыпу). Цэлалікавы выраз F паказвае, колькі пазіцый можа заняць Е (значыць, агульная шырыня поля). Цэлалікавы выраз d паказвае, колькі пазіцый у полі F стаіць пасля кропкі. Для адлюстравання чарговага значэння Е пры бесфарматным вывадзе на экране ці прынтэры бярэцца некаторы памер экрана па змаўчанні ў залежнасці ад тыпу выразу Е. Выраз Е належыць да наступнага тыпу: цэлалікавы, сапраўдны, Char, String, Boolean. Для масіваў неабходна арганізаваць іх паэлементны вывад, запісы выводзяцца па палях. Вывад мностваў не прадугледжаны.
Вывад сімвалаў
Сімвал займае адну чарговую пазіцыю ў бесфарматным варыянце.
VAR c : Char;
…
c:='a';
Write(c);Writeln; {вынік a}
Write(c, c, c); {вынік aaa}
У бесфарматным варыянце фармат задаецца канструкцыяй Е: F, дзе Е – той выраз, што выводзім (просты выпадак – імя пераменнай дазволенага тыпу), F – цэлалікавы выраз. Калі F – цэлае дадатнае значэнне, тады інфармацыя прыціскаецца да правага краю поля даўжыні F.
Write(c:3);
Writeln(c:3, c:4, c:5);
{вынік: aaaa},
дзе – прабел.
Калі F – цэлае адмоўнае значэнне, тады інфармацыя выраўноўваецца па левым краі і потым ігнаруюцца астатнія пазіцыі.
Writeln(c:-3, c:2); {вынік: aa}
Вывад радковых даных
Значэнне радковых даных пры бесфарматным вывадзе адлюстроўваецца ў файле без абмежавальных апострафаў.
Калі на дысплеі значэнне данага дасягнула правага краю экрана, яно працягваецца без перарыву ў наступным радку экрана з першай пазіцыі.
Фарматны вывад мае такі ж сэнс, як і пры вывадзе сімвала: задаём шырыню поля вываду канструкцыяй E:F, дзе Е – той радковы выраз, што выводзім (просты выпадак – імя радковай пераменнай). Калі шырыні не хапае для даўжыні радка, фармат ігнаруецца; калі фармат дадатны і большы за бягучую даўжыню радка, значэнне выраўноўваецца па правым краі, калі ж адмоўны – па левым.
VAR S, S1 : STRING[10]; … S:='аб'; S1:='се';
{бягучая даўжыня – 2}
Writeln(S, S1); {абсе}
Writeln(S:12, S1:-13); {абсе}
Writeln(S:-12, S1:13); {абсе}
Вывад лагічных значэнняў
У тэкставы файл пападае інфармацыя: радок true ці false. Фарматны вывад задаецца таксама, як і для радка сімвалаў.
Вывад цэлалікавых значэнняў
Дадатны лік выводзіцца без знака, адмоўны – са знакам «–». Колькасць пазіцый абмяжоўваецца велічынёй данага і займае роўна столькі месца, колькі ў значэнні данага будзе дзесятковых лічбаў:
a := 123;
Write (a); {123}
Writeln(-15, 123, -150); {-15123-150}
У фарматным варыянце задаецца канструкцыя E:F, дзе Е – той выраз, што выводзім (просты выпадак – імя цэлалікавай пераменнай), F – цэлалікавы выраз, які рэгулюе шырыню поля вываду, як і для радка сімвалаў.
Калі значэнне даных не ўмяшчаецца ў адведзенае поле, тады F ігнаруецца і данае зойме столькі пазіцый, колькі патрабуе яго значэнне.