Кампутары, Праграмаванне
Радковы аператар у Pascal - string
Праграмаванне пастаянна звязана з працай з некаторымі дадзенымі, у прыватнасці, з радкамі. Радковы аператар задаецца аднолькава ў большасці моў, у тым ліку ў Pascal: string. Але ў Паскалю ёсць свае асаблівасці і ўласцівасці, якія неабходна ведаць перад пачаткам працы.
Што ёсць радок у Паскалю?
Перад тым як разбірацца з сінтаксісам радковага тыпу дадзеных у Паскалю, варта разумець, што можа з'яўляцца радком. Фактычна ў Pascal string - гэта масіў сімвалаў, кожны з якіх можа з'яўляцца любым элементам з ASCII-табліцы. Гэта значыць, у якасці радкі можа выкарыстоўвацца любая літара, лічба, знак прыпынку або прабел.
Максімальнае лік сімвалаў ў адной радку складае 255 адзінак, і кожны з іх атрымлівае адпаведны парадкавы нумар. Таму, калі неабходна запісаць вялікі тэкст у зменную, варта стварыць масіў string. Pascal карэктна апрацуе дадзены запыт, і можна будзе захоўваць значна больш доўгія тэкставыя дадзеныя.
Радковы тып дадзеных
За радкі адказвае тып String. Pascal дазваляе праграмісту паказаць дакладнае лік сімвалаў ці ж пакінуць яе даўжыню па змаўчанні - у гэтым выпадку яна будзе роўная 255. Для аб'явы радковыя зменнай, пералічыўшы аднолькавыя аргументы, неабходна пасля двукроп'я пазначыць ключавое слова - string і, пры неабходнасці, у квадратных дужках прапісаць даўжыню радка. У прыкладзе ніжэй прыкладзе задаецца радок "str", даўжынёй 10 сімвалаў:
var str: string [10].
У кодзе праграмы Pascal string можна задаваць любыя значэння - для гэтага неабходна толькі заключыць іх у адзінарныя двукоссі.
Аперацыі з радкамі
У залежнасці ад мовы, вызначаецца і лік аперацый, з якімі можа працаваць радок. Паскаль дазваляе вырабляць параўнанне і зліццё радковых дадзеных.
Аперацыя зліцця (гэта значыць канкатэнацыя або счапленне) выконваецца для аб'яднання некалькіх радкоў у адну. Яна рэалізаваная з дапамогай знака складання: "+". З яго дапамогай можна выбудоўваць адзіную радок, якая складаецца з шэрагу выразаў, канстант і зменных.
Варта адзначыць, што пры аб'яднанні слоў у прапанову шляхам канкатэнацыі радкоў, паміж кожным элементам прабел будзе адсутнічаць. Таму, жадаючы атрымаць пісьменна пабудаваную канструкцыю, варта ў патрэбных месцах відавочна ўказваць наяўнасць прамежку, дадаючы сімвал прабелу, напрыклад, так: "".
Яшчэ адна аперацыя, поддержваемая ў Pascal, - string compare або параўнанне радкоў. Для яе таксама выкарыстоўваюцца найпростыя матэматычныя знакі:
- роўнасці (=);
- больш / менш (> і <);
- няроўнасці (<>);
- а таксама больш або роўна і менш або роўна (> = і <=).
Вынікам аперацыі адносіны будзе вяртанне лагічнага значэння true або false.
Параўнанне радкоў вырабляецца посимвольно, і пры знаходжанні першай несастыкоўка вынік будзе вызначацца згодна з табліцы кадоўкі. Так, пры высвятленні, якая радок больш, на пазіцыі, дзе будуць знаходзіцца розныя сімвалы, будзе праведзена параўнанне кода ў дадзенай табліцы, а па выніках яго і будзе вызначаны адказ, які верне аперацыя.
Функцыі са радковымі зменнымі
Як і ў любой мове праграмавання, у Pascal існуе шэраг функцый, з якімі можа быць выкарыстана радок. Паскаль дазваляе капіяваць частка зменнай, аб'ядноўваць некалькі радкоў паміж сабой, знаходзіць падрадок і вылічаць яе даўжыню. Робіцца гэта з дапамогай наступных 4 функцый:
- За капіраванне часткі радка адказвае функцыя Copy. Яна складаецца з трох розных параметру - радок або імя зменнай, пазіцыю пачатку і лік сімвалаў, якія неабходна скапіяваць:
Copy (S, poz, n) - тут S - радковы пераменная, а poz і n - цэлалікавых.
- Акрамя канкатэнацыі радкоў, з дапамогай сімвала "+", здзейсніць дадзеную аперацыю больш зручным спосабам можна з дапамогай функцыі Concat. У якасці яе аргументаў выкарыстоўваюцца ўсе радкі і знакавыя выразы, якія трэба аб'яднаць:
Concat (s1, s2 ...).
- Часта выкарыстоўваецца ў Паскалю функцыяй з'яўляецца Length. З яе дапамогай можна вылічыць даўжыню радка - гэта значыць, даведацца лік знакаў у ёй. Адзіным аргументам яе з'яўляецца сама радок - на выхадзе карыстальнік атрымае цэлалікавых значэнне:
Length (str).
- І апошняй з функцый у Паскалю з'яўляецца пошук пачатку падрадка ў радку - Pos. Яна вяртае нумар сімвала, з якога пачынаецца шуканая падрадок, а ў выпадку яе адсутнасці, вынікам выканання з'яўляецца 0:
Pos (subS, S).
Працэдуры для радкоў у Паскалю
Стандартных працэдур, якія выкарыстоўваюцца ў Pascal, усяго дзве. Першая дазваляе выдаліць некаторую падрадок, а другая - уставіць у радок шэраг знакаў.
Так, працэдура Delete выдаляе з абранай радкі, з названай пазіцыі, падрадок з вызначанага ліку знакаў. Кожны з гэтых параметраў з'яўляецца аргументам дадзенай аперацыі:
Delete (S, poz, n).
А ўставіць паслядоўнасць знакаў у радок можна з дапамогай Insert. Працэдура мае ў ролі параметраў тры значэння - падрадок, радок і пазіцыю, пачынаючы з якой будзе праведзена ўстаўка сімвалаў:
Insert (subS, S, poz).
Змена тыпу дадзеных з радкоў
Пры выкананні задач, нярэдка прыходзіцца змяняць тып зменных. Разгледзім, напрыклад, як пераўтварыць string ў integer. Pascal не дазваляе складаць колькасці, запісаныя ў радку, таму, для творы сумы, іх тып неабходна змяніць. Для гэтага тут маюцца спецыяльныя працэдуры:
- Каб пераўтварыць string ў integer ў Pascal неабходна скарыстацца працэдурай StrToInt. Атрыманае цэлалікавых значэнне можна як запісаць у зменную, так і вырабляць з ёй матэматычныя дзеянні.
- Калі неабходна атрымаць лік з якая плавае пункту з зададзенай радкі, выкарыстоўваецца працэдура StrToFloat. Гэтак жа, як і з цэлалікавага, вынік яе выканання можна адразу ж выкарыстоўваць.
- Каб здзейсніць зваротныя аперацыі - пераўтварыць чысла ў радок - неабходна скарыстацца працэдурамі FloatToStr для лікаў з якая плавае кропкай і IntToStr для цэлалікавых значэнняў.
- Яшчэ адным спосабам змены тыпу з'яўляецца выкарыстанне спецыяльных працэдур, для якіх не патрабуецца ведаць пачатковы або канчатковы тып дадзеных, - Str і Val. Першая вырабляе пераклад з ліку ў радок і мае ў якасці аргументу два значэння - пачатковую колькасць і зменную з імем радка. Другая ж выконвае зваротную аперацыю, і мае на адзін параметр больш - акрамя лікавага і маленькага значэння, у працэдуры прадугледжаны код, які паведамляе пра карэктнасць пераўтварэнні. Так, напрыклад, спрабуючы запісаць дробавую лік у цэлалікавых зменную, код пакажа нумар сімвала, на якім адбыўся збой, а пры правільным пераўтварэнні, яе значэнне будзе роўна 0.
Similar articles
Trending Now