Символҳо (рамзҳо) ва сатрҳо

  1. Символҳо
  2. Сатрҳо

Хулоса ва мустаҳкамкунии дарс

Адабиёт

1. Зелковиц М., Шоу А., Гэннон Дж. Принципы разработки программного обеспечения / Пер. с англ. — М.: Мир, 1982. — 386 с., ил.

2.Фаронов В.В. Система программирование Delphi. – СПб.: БВХ Петербург, 2003. – 912 с.: ил.

3. http://gluk.weӣhost.ru/delphi.html.

1. Символҳо

Барои нигоҳдорӣ ва коркарди символҳо таѓирёбандаҳои типи Ansichar ва wideChar истифода бурда мешаванд. Типи Ansichar ба худ ANSI-символҳоро мегирад, ки дар он ҳар як символ ба ададӣ дуии ҳаштразряда кодиронида мешавад (байтӣ). Типи wideChar бошад ба худ символҳоро дар кодиронии Unicode мегирад. Барои таъминоти ҳамҷоягӣ бо версияи пештара типи Char, ки ба типи AnsiChar эквивалент аст мусоидат мекунад.

Қиммати таѓирёбандаи типи символӣ метавонад дилхоҳ символи инъикосдодашуда бошад:

  • ҳарфҳои русӣ ё ин ки лотинӣ;
  • рақам;
  • нишонаҳои китобатӣ.

Символҳои махсус, мисол, “сатри нав”.

Таѓирёбандаҳои типи символиро аввал бояд дар қисми эълони таѓирёбандаҳо эълон карда шавад. Инструксияи эълони таѓирёбандаҳои символӣ дар намуди умумӣ чунин аст:

Ном: char;

дар ин ҷо:

Ном — номи таѓирёбандаи типи символӣ;

char — калимаи махсус барои ишораи типи символӣ.

Мисолҳо:

fam: char; Nam: char;

ё ин ки

fam,Nam:char;

Таѓирёбандаи типи char –ро метавонем бо дигар таѓирёбандаи типи char ё ин ки бо доимии символӣ муқоиса кунем.

Дар матни программа ба ҷои символ коди онро нишон додан мумкин аст. Дар ин ҷо пеш аз адад оператори # истифода бурда мешавад. Мисол, ба ҷои ҳарфи ‘Б’ метавонем #193 нависем. Ин тарзи навишт, барои навишти символҳои хизматӣ ё ин ки символҳо хизмат мекунад, ки онҳо дар вақти навишти программа аз клавиатура дохил карданашон мумкин нест. Мисол, бисёр вақт ба ҷои навишти символи «сатри нав» навишти #13 –ро истифода мебаранд.

Дар программаи коркарди информатсияи символӣ бисёр вақт функсияҳои chr ва Ord – ро истифода мебаранд. Қимати функсияи chr символ мебошад, ки коди он ба сифати параметр нишон дода шудааст. Мисол, дар натиҷаи иҷроиши инструксияи c:=chr(32) ба таѓирёбандаи с қимати «фосилаи холигӣ (пробел)» бахшида мешавад. Функсияи ord бошад, имконияти муайян кардани коди символеро медиҳад, он ба сифати параметр дода мешавад. Мисол, дар натиҷаи иҷроиши инструксияи k:=ord(‘*’) таѓирёбандаи k адади 42 (коди символи *) –ро мегирад .

Программае, ки текстӣ он оварда мешавад баровардани ҷадвали кодиронии ҳарфҳои алфавити русӣ мебошад .

Кори асосиро проседураи коркарди ҳодисаи OnActivate иҷро мекунад, ки он иҷро ва дар Laӣel1 инъикос менамояд. Ҳодисаи OnActivate дар вақти фаъол гардонидани формаи программа ба вуҷуд меояд ва барои ҳамин проседураи TForm1.FormActivate яку якбора ба таври автомати баъди пайдо шудан форма дар экран иҷро карда мешавад.

Ҷадвали 1. Формаи иҷроиши программа.

procedure TForm1.FormActivate(Sender: TOӣject);

var

st:string;

dec: ӣyte;

i,j:integer;

ӣegin

st:=”;

dec:=192;

for i:=0 to 15 do

ӣegin

dec:=i + 192;

for j:=1 to 4 do

ӣegin

st:=st+chr(dec)+ ‘-‘ +IntToStr(dec)+’ ‘;

dec:=dec + 16;

end;

st:=st + #13;

end;

Laӣel1.caption:=st;

end;

end.

2. Сатрҳо

Сатрҳо метавонанд бо типҳои зерин муарифи шаванд: shortstring, Longstring и widestring. Ин типҳо бо якдигар аз ҳудудӣ қабули дарозии сатрҳо, тарзи ҷудонамоии хотира барои таѓирёбандаҳо ва методи кодиронии символҳо фарқ мекунанд.

Таѓирёбандаи типи shortstring хотираро бо таври статики то саршавии иҷроиши программаҳо ҷудо мекунад ва миқдори символҳои ин сатр наметавонад аз 255 зиёд шавад. Таѓирёбандаҳои типи Longstring ва widestring хотираро бо таври динамикӣ дар вақти корӣ программа ҷудо мекунанд, барои ҳамин дарозии чунин сатр амалан бе маҳдуд аст.

Бар замми типҳои дар боло қайдшуда типи универсалии сатрии String –ро истифода бурдан мумкин аст. Типи String эквивалент аст ба типи Shortstring.

Таѓирёбандаи типи сатрӣ бояд дар қисми эълони таѓирёбандаҳо эълон карда шавад. Инструксияи эълонкунӣ дар намуди умумӣ чунин аст:

Ном: String;

ё ин ки

Ном: String ҳдарозӣ];

дар ин ҷо:

ном — номи таѓирёбанда;

string — калимаи махсус барои ишораи типи сатрӣ;

дарозӣ — доимии типи бутун, ки он дарозии максималии сатрро ифода мекунад.

Мисоли эълони таѓирёбандаи типи сатрӣ инҳо шуда метавонанд:

name: stringҳ30];

car: string;

Агар дар эълони таѓирёбандаи сатрӣ дарозии сатр дода шуда набошад, онгоҳ дарозии он баробар ба 255 символ дода мешавад. Бинобар ин

stroka: string ҳ255]; stroka: string; ба якдигар баробаранд.

Дар матни программаҳо символҳои пайдарпайии сатрӣ дар нохунак (‘’) гирифта мешаванд. Мисол, барои он, ки ба таѓрёбандаи сатрии parol қимат бахшем чунин навиштан мумкин аст:

parol:= ‘Сири махфӣ’;

Амалиётҳои =, <, >, <=, >= -ро истифода бурда, таѓирёбандаи типи string – ро бо дигар типи string ё ин ки бо доимии сатрӣ муқоиса кардан мукин аст. Строки сравниваются посимвольно, начиная с первого символа. Агар тамоми символҳои сатрҳои муқоисашаванда баробар бошанд, онгоҳ ин сатрҳо баробаранд. Агар сатрҳои баробар дорои як хел мавқеъ бошанду символҳои гуногун, онгоҳ ҳамон сатр калон ҳисобида мешавад, ки дар он символҳои дорои кодҳои калон бошанд.

Дар Чадвали 2 мисоли муқоисаи сатрҳо оварда шудааст.

Ҷадвали 2. Муқоисаи сатрҳо

Сатри 1 Сатри 2 Натиҷаи муқоиса
Сомон Сомон Сатрҳо баробаранд
Фотимабиби Фотима Сатри 1 аз сатри 2 калон аст.

Ѓайр аз амалиёти муқоиса бо таѓирёбанда ва доимии сатрӣ амалиёти ҷамъро истифода бурдан мукин аст, ки дар натиҷаи иҷроиши он сатри навро ба даст овардан мумкин аст.

Мисол, дар натиҷаи иҷроиши инструксия зерин

f irst__name: =’Сомон’ ;

last_name:=’Ѓафуров’;

ful_name:=first_name+last_name;

таѓирёбандаи fui_name қимати ‘Сомон Ѓафуров’ -ро қабул мекунад..

Амалиёт ба сатр

Дар забони Delphi барои кор бо сатр якчанд функсия ва просудураҳо мавҷуданд. Дар поён маълумоти мухтасар оид ба ин функсия ва просудураҳо оварда шудаст.

Функсияи length

Функсияи length дарозии сатрро муайян мекунад. Ин функсияи дорои як параметр мебошад.

Мисол,

procedure TForm1.Ӣutton1Click(Sender: TOӣject);

var

n:string;

ӣegin

n:=Edit1.Text;

Edit2.Text:= inttostr(Length(n));

end;

end.

Проседураи delete

Проседураи delete имконият медиҳад, ки як қисми сатрро тоза(нест) кунад. Дар намуди умуми ин проседура чунин аст:

delete(Сатр, р, п)

дар ин ҷо:

Сатр — таѓирёбанда ё ин ки доимии типи сатрӣ;

р — рақами символе, ки аз он тоза кардан сар мешавад;

п — дарозии зерсатри нестшаванда.

Мисол,

p:=’Город Санкт-Петербург’;

delete(s,7,6);

қимати s сатри ‘ город Петербург’ – ро мегирад.

Хулоса ва мустаҳкамкунии дарс

Компютер метавонад на танҳо информатсияи ададӣ балки информатсияи символиро ҳам коркард кунад. Забони Delphi ба информатсияи символӣ такя мекунад, ки он метавонад ҳамчун символи алоҳида нишон дода шавад, инчунин сатр ҳам.

О MUHAMMAD SALOH

Добавить комментарий

Ваш адрес email не будет опубликован.