Студопедия.Орг Главная | Случайная страница | Контакты | Мы поможем в написании вашей работы!  
 

Атарларды өңдеу есебін программалау. Жолдар



Жол – ASCII кодтық кестесінің символдар тізбегі. Жолдың ұзындығы 255 символдан артық болмауы керек. Жолдық типті айнымалы келесі түрде айнымалылар бөлімінде сипатталады:

Var a: string; b: string[25];

Квадрат жақшаларға алынған мән 25-жолдың барынша мүмкін ұзындығын анықтайды, үнсіз келісім бойынша ол 255-ке тең. n символды жолды сақтауға қажет жадының көлемі n+1 байт, өткені нөлдік байтта жолдың ұзындығы сақталады.

Жолдың жекеленген символдарына берілген символдың жолдағы нөмірі (индексі) бойынша қатынасуға болады. Мысалы, а[3] өрнегі а жолының санау бойынша үшінші символына қатынас құруды қамтамасыз етеді. а[0] – жолдың ұзындығы бар нөлдік байтқа қатынас құруға мүмкіндік бреді.

Бір өрнекте жолдық және символдық типті шамаларды жылжытуға болады.

Жолдық типтерді өндеу үшін арнайы функциялар мен Turbo Pascal процедураларын пайдалануға болады.

1. concat(s1,s2,…,sn) – тіркесу (жолдардың жалғасуы): concat(‘прог’, ’грамма’) ® программа

2. length(s) – жолдың ұзындығын анықтау: length(‘программа’) ® 9

3. copy(s,n,k) – s жолындағы n позициясынан (орнынан) бастап k дана символ қиып алу керек. Егер а:=’программа’, онда copy(a, 4, 5) ® грамм

4. pos(s1,s) – s жолынан s1 ішкі жолдың бірінші пайда болуын іздейді. Нәтиже – одан s жолындағы s1 ішкі жолы басталатын позицияның нөмірі: pos(‘a’, ’мама’) ® 2

5. delete(s,n,k) – s жолындағы n позициясынан бастап k символдарды жою. Егер a:=’абвгде’, онда delete(a,4,2) ® ‘абве’

6. insert(s1,s,n) – s жолына s1 ішкі жолын n позициясынан бастан кірістіру. Егер s1:=’ EC ’; s:=’ЭЕМ1841’, онда insert(s1,s,4) ® ‘ЭЕМ ЕС 1841’

7. str(n, s) – n санын s жолына айналдыру.

8. val(s, n, l) – s жолын бүтін сандық типті n шамасына айналдыру. l – айналдыру нәтижесінде алынған бірінші қате символдың позициясының нөмірін сақтайды

9. upcase(ch) – кіші әріпті бас әріпке түрлендіру. Егер ch:=’d’, онда upcase(ch) ® ‘D’

Мысал 1. Мәтінде ‘н’ әріптерін санау программасын жазу керек.

Program esep1;

Var t: string; k,i: integer;

Begin

Writeln(‘Жолды енгізініз’);

Readln(t);

k:=0;

for i:=1 to length(t) do

if copy(t, i, 1)=’н’ then k:=k+1;

writeln(‘«н» әріп саны =’, k);

End.





Дата публикования: 2015-10-09; Прочитано: 670 | Нарушение авторского права страницы | Мы поможем в написании вашей работы!



studopedia.org - Студопедия.Орг - 2014-2024 год. Студопедия не является автором материалов, которые размещены. Но предоставляет возможность бесплатного использования (0.009 с)...