КампутарыПраграмаванне

Радковы аператар у 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

 

 

 

 

Newest

Copyright © 2018 be.delachieve.com. Theme powered by WordPress.