Мысалдар. Бағдарлама.
type
< типтің аты> =string [символдар саны];
var < идентификатор>: < типтің аты>;
String типтегі айнымалыны типті алдын-ала сипаттамай-ақ кө рсетуге болады: var < идентификатор>: string[жолдың ұ зындығ ы];
N символдан тұ ратын жолғ а жадыдан N+1 байт бө лінеді. N байт-символдарды сақ тау ү шін, ал бір байт – жолдың ұ зындығ ын сақ тау ү шін.
Жолдық ө рнектер. Олар жолдық тұ рақ тылардан, айнымалылардан, функциялардан жә не операция таң баларынан тұ рады. Мысал: ’ма’+’ма’
Жолдық процедуралар мен функциялар
Аты, жазылуы
| Қ ызметі
| Ескерту
| 1. жою
delete(a, p, n)
| a жолындағ ы р пози-циядан бастап, ұ зындығ ы n символды жояды.
| p< =255; нә тиже басқ а айны-малығ а меншіктелмейді.
| 2. кіргізу
insert (a, s, p)
| a жолын s жолына р по-зициядан бастап кіргізеді.
| нә тиже басқ а айны-малығ а меншіктелмейді.
| 3. типті ауыстыру
str(x, a)
| x сандық шаманы жолғ а ө ң деп, а-ғ а меншіктейді
| х-ті шығ ару форматымен жазуғ а болады. Х сандық типте, а –жолдық типте.
| 4. типті ауыстыру
val(a, x, c)
| a жолын сандық шамағ а ө ң деп, х айнымалығ а орналастырады. А жо-лында бос символ болмау керек.
| c-ө ң деу нә тижесі, бү тін сан. Егер ө ң деуде қ ате болмаса c=0 болады. А: string, х сандық типте, c: integer.
| 5. ұ зындық
length(a)
| a жолының ұ зындығ ын табады.
| Нә тижені айнымалығ а меншіктеуге болады.
| 6. ретімен тіркестіру
concat(a, b,.. s)
| a, b,.. s жолдарын сол ретімен тіркестіреді
| -
| 7. белгілеу
copy (a, p, n)
| a жолынан р позициядан бастап, ұ зындығ ы n символды белгілейді.
| егер p> length(a) болса, нә тижесі бос символ;
p> 255 болса, қ ате.
| 8. позиция
pos (a, s)
| a жолы s жолында нешінші позицияда тұ рғ анын табады.
| егер a жолы s жолында болмаса, нә тиже=0
| 9. регистрді ауыстыру
upcase(ch)
| кіші ә ріпті бас ә ріпке ө згертеді.
| тек латын алфавитін ғ ана.
|
Мысалдар
Берілгені:
| Қ олданылғ ан процедура, функция
| Нә тиже
| 1. a: =’абвгде’
| delete(a, 4, 2)
| ‘aбве’
| 2. s1: =’интика’
s2: =’форма’
| insert(s2, s1, 3)
| ‘информатика’
| 1. var x: integer;
a: string;
-------------
x: =72584
| str(x, a)
str(-x: 7, a)
| ‘72587’
‘-72584’
| 2. var a: string;
cod: integer;
---------------
a: =’25’;
a: =’14. 2Е+2’;
a: =’14. 2’
|
val(a, x, cod)
val(a, x, cod)
val(a, x, cod)
|
cod=0
cod=0
cod=5
| 3. st: =’1237’
st: =’klassio’
| length(st)
length(st)
|
| 4. a1: =’ ab’;
a2: =’cd’;
a3: =’ej’
| concat(a1, a2, a3)
concat(a1, ’nm’, a2)
| ‘abcdej’
‘abnmcd’
| 5. st: =’abcdefjk’
| copy(st, 2, 4)
copy(st, 5, 7)
| ‘bcde’
‘efjk’
| 8. a1: =’abcdef’;
a2: =’def’;
| pos(a2, a1)
pos(‘e’, a2)
pos(‘k’, a1)
|
| 9. Ch: =’d’
A: =’x’
| UpCase(Ch)
UpCase(A)
UpCase(‘a’)
| ‘D’
‘X’
‘A’
|
1-мысал. Енгізілген сө здегі ‘a’ ә ріптерін санау, ‘b’ә рпіне ауыстыру.
1- ә діс: Алгоритм:
1. Сө зді енгізу.
2. Сө здің бірінші ә рпін белгілеу.
3. Белгіленген символды ’a’ символымен салыстыру.
4. Егер сә йкес болса, санауышты бірге арттыру, сол символдың орнына ’b’ символын қ ою;
5. Осылайша барлық символдарды қ арастыру.
Бағ дарлама.
program sanau;
var s: string; n, l, i: byte; {n-‘a’ә рпін санауыш }
begin
n: =0; readln(s); l: =length(s); { l сө здің ұ зындығ ы}
for i: = 1 to l do
if copy(s, і, 1)=’a’ {кезектегі ә ріпті белгілеп,
then ’a’ ә рпімен салыстыру}
begin
delete (s, і, 1); insert(‘b’, s, i);
n: =n+1; { а ә рпін санау}
end;
writeln (‘сө зде, ’n, ’ a ә рпі бар’);
end.
2-ә діс. Алгоритм:
1. Сө зді енгізу.
2. ’a’ә рпін санайтын санауыш енгізу.
3. Сө здегі ‘a’ә рпі тұ рғ ан позицияны тауып, сол орынғ а ‘b’ ә рпін жазу.
4. Сө здегі барлық позициялар ү шін 3 пунктті қ айталау.
5. Нә тижені шығ ару.
Бағ дарлама.
program sanau;
var
s: string; n: byte;
begin
write (‘сө зді енгіз’); readln(s); n: =0;
while pos (‘a’, s)> 0 do
begin
n: =n+1; s[pos(‘a’, s)]: =’b’;
end;
writeln (‘сө зде’, n, ’ a ә рпі бар’);
end.
|