Презентация, доклад на тему Паскаль программалау тілі презентация

Содержание

Паскаль тілінде бағдарламалау II БөлімТақырып 1. Жиымдар

Слайд 1Паскаль тілінде бағдарламалау II Бөлім
Массивтер
Массивтің максималь элементі
Масситерді өңдеу
Массивтерді іріктеу
Массивтегі элементті

іздеу

Символдық жолдар
Рекурсивті іріктеу
Матрицалар
Файлдар

Паскаль тілінде бағдарламалау   II БөлімМассивтерМассивтің максималь элементіМасситерді өңдеуМассивтерді іріктеуМассивтегі элементті іздеуСимволдық жолдарРекурсивті іріктеуМатрицаларФайлдар

Слайд 2Паскаль тілінде бағдарламалау II Бөлім
Тақырып 1. Жиымдар

Паскаль тілінде бағдарламалау   II БөлімТақырып 1. Жиымдар

Слайд 3
Жиымдар
Массив – бұл бір атаумен белігілеп, біріктірілген біртекті реттелген элементер жиыны.
Ерекшеліктері:
барлық

элементтерінің типі бірдей болады
жиымның бір атауы болады
жадыда барлық элементтері бірінен соң бірі реттеліп орналасады
Мысалдар:
сыныптағы оқушылар тізімі
үйдегі пәтерлер
қаладағы мектептер
Бір жылдағы ауа-райының температурасы туралы мәлімет
ЖиымдарМассив – бұл бір атаумен белігілеп, біріктірілген біртекті реттелген элементер жиыны.Ерекшеліктері:барлық элементтерінің типі бірдей боладыжиымның бір атауы

Слайд 4
Жиымдар

A
жиым
3
15
жиым элементінің НӨМЕРІ (ИНДЕКСІ)
A[1]
A[2]
A[3]
A[4]
A[5]
Жиым элементінің МӘНІ
A[2]
Жиым элементінің НӨМЕРІ (ИНДЕКСІ): 2
Жиым

элементінің
МӘНІ : 10



ЖиымдарAжиым315жиым элементінің НӨМЕРІ  (ИНДЕКСІ)A[1]A[2]A[3]A[4]A[5]Жиым элементінің МӘНІ A[2]Жиым элементінің НӨМЕРІ (ИНДЕКСІ): 2Жиым элементінің МӘНІ : 10

Слайд 5

Жиымды ұйымдастыру
Неге ұйымдастырамыз?
жиымның атын анықтау үшін
жиымның типін анықтау үшін
элементтерінің

санын анықтау үшін
жадыдан орын бөлу үшін
Бүтін сандардың жиымы:


Констант арқылы өлшемін көрсету:

аты

бастапқы индексі

соңғы индексі


Элементтер тип


var A: array[1.. ] of integer;

const N=5;

N





var A : array[ 1 .. 5 ] of integer ;

Жиымды ұйымдастыруНеге ұйымдастырамыз? жиымның атын анықтау үшін жиымның типін анықтау үшінэлементтерінің санын анықтау үшінжадыдан орын бөлу үшінБүтін

Слайд 6Жиымды ұйымдастыру
Жиымның басқа типтері:
Индекстердің басқа диапозоны:
Индекстердің басқа типтері:
var X,

Y: array [1..10] of real;
C: array [1..20] of char;

var Q: array [0..9] of real;
C: array [-5..13] of char;

var A: array ['A'..'Z'] of real;
B: array [False..True] of integer;
...
A['C'] := 3.14259*A['B'];
B[False] := B[False] + 1;

Жиымды ұйымдастыруЖиымның басқа типтері: Индекстердің басқа диапозоны: Индекстердің басқа типтері:var X, Y: array [1..10] of real;

Слайд 7Не дұрыс емес?
var a: array[10..1] of integer;
...
A[5] := 4.5;
[1..10]
var a:

array ['z'..'a'] of integer;
...
A['B'] := 15;

A['b']

['a'..'z']

var a: array [0..9] of integer;
...
A[10] := 'X';

Не дұрыс емес?var a: array[10..1] of integer;... A[5] := 4.5;[1..10]var a: array ['z'..'a'] of integer;... A['B'] :=

Слайд 8жиымдар
Ұйымдастыру:
Пернетақтадан енгізу:
Элементермен орындалатын әрекеттер:
Экранға шығару:
const N = 5;
var a: array[1..N]

of integer;
i: integer;

for i:=1 to N do begin
write('a[', i, ']=');
read ( a[i] );
end;

a[1] =
a[2] =
a[3] =
a[4] =
a[5] =

5
12
34
56
13

for i:=1 to N do a[i]:=a[i]*2;

writeln(' A жиымы:');
for i:=1 to N do write(a[i]:4);

A жиымы :
10 24 68 112 26

жиымдарҰйымдастыру:Пернетақтадан енгізу:Элементермен орындалатын әрекеттер:Экранға шығару:const N = 5; var a: array[1..N] of integer;  i: integer;for i:=1

Слайд 9
Тапсырмалар
"4": Перентақта арқылы 5 элементтен тұратын элементерді енгізіп, жиымның барлық элементердің

орташа арифметикалық мәнін табыңдар.
Мысалы:
бес сан енгізіңдер:
4 15 3 10 14
орташа арифметикалық мәні: 9.200
"5": Пернетақтадан 5 элемент енгізіп, жиымның ең кіші элементін табыңдар.
Мысалы:
бес сан енгізіңдер :
4 15 3 10 14
минимальный элемент 3
Тапсырмалар

Слайд 10Паскаль тілінде бағдарламалау II Бөлім
2 тақырып. Жиымның максималь

элементі
Паскаль тілінде бағдарламалау   II Бөлім2 тақырып. Жиымның максималь

Слайд 11Максималь элемент
Есеп: жиымның максималь элементін табу.
Алгоритм:




код:
{әзірше, максималь мән- бірінші элемент

деп есептейік}
for i:=2 to N do
if a[i] > {максимальдан} then
{a[i] жаңа максималь элементті есте сақта}
Максималь элементЕсеп: жиымның максималь элементін табу.Алгоритм: код:{әзірше, максималь мән- бірінші элемент деп есептейік}for i:=2 to N do

Слайд 12Максималь элемент
max := a[1];{бірінші элемент – максималь деп есептейік}
iMax := 1;
for

i:=2 to N do {қалғандарын тексерік}
if a[i] > max then {жаңа максимальді таптық}
begin
max := a[i]; {a[i] есте сақта}
iMax := i; {i есте сақтау}
end;

Қосымша: максималь элементтің нөмерін табу?

iMax элемент номері арқылы әрқашан оның мәнін a[iMax]-ті табуға болады. Сондықтан max-ті a[iMax]-пен алмастырамыз да max айнымалысын алып тастаймыз.

a[iMax]

Максималь элементmax := a[1];{бірінші элемент – максималь деп есептейік}iMax := 1;for i:=2 to N do

Слайд 13Программа
program qq;
const N = 5;
var a: array [1..N] of integer;

i, iMax: integer;
begin
writeln(‘берілген жиым:');
for i:=1 to N do begin
a[i] := random(100) + 50;
write(a[i]:4);
end;
iMax := 1; {бірінші элемент– максималь деп есептейік}
for i:=2 to N do { қалғандарын тексеру }
if a[i] > a[iMax] then { жаңа максималь мән }
iMax := i; { I еске сақтау }
writeln; {жаңа жолға өту}
writeln('Максималь элемент a[', iMax, ']=', a[iMax]);
end;

for i:=1 to N do begin
a[i] := random(100) + 50;
write(a[i]:4);
end;

iMax := 1; {бірінші элемент – максималь деп есептейік}
for i:=2 to N do { қалғандарын тексерйік }
if a[i] > a[iMax] then { жаңа максималь мәні }
iMax := i; {i-ді еске сақтау }

[50,150) аралықтағы кез-келген сан

Максимальді іздеу

Программаprogram qq;const N = 5;var a: array [1..N] of integer;  i, iMax: integer;begin writeln(‘берілген жиым:'); for

Слайд 14
Тапсырма
"4": [-10..10] аралықтағы сандармен 10 элементтен тұратын жиымды толтыру және оның

максималь және минималь элементтерін және нөмерін табыңдар.
Мысалы:
Берілген жиым:
4 -5 3 10 -4 -6 8 -10 1 0
максималь мәні a[4]=10
минималь мәні a[8]=-10
"5": [-10..10] аралықтағы сандармен 10 элементтен тұратын жиымды толтыру және оның екі максималь мәні және нөмерлерін табыңдар.
Мысалы:
Берілген жиым:
4 -5 3 10 -4 -6 8 -10 1 0
максималь мәндер a[4]=10, a[7]=8
Тапсырма

Слайд 15Паскаль тілінде бағдарламалау II Бөлім
3 тақырып. Жиымды іріктеу

Паскаль тілінде бағдарламалау   II Бөлім3 тақырып. Жиымды іріктеу

Слайд 16жиым реверс
Есеп: жиымның элементерін кері ретпен орналастыру керек.
Алгоритм:
Орындарын ауыстыру A[1] и

A[N], A[2] и A[N-1], …
код:




for i:=1 to N do
{ орындарын ауыстыру A[i] и A[N+1-i] }

N+1-индекстер қосындысы

N div 2

do



жиым реверсЕсеп: жиымның элементерін кері ретпен орналастыру керек.Алгоритм:Орындарын ауыстыру A[1] и A[N], A[2] и A[N-1], …код:for i:=1

Слайд 17Элементердің орнын қалай ауыстырады?
2
3
1
Есеп: екі кесе ішіндегілерінің орнын ауыстыру
Есеп: жадының екі

ұяшығының ішіндегілердің орнын ауыстыру керек.

4

6

?

4

6

4

x

y

c

c := x;
x := y;
y := c;

x := y;
y := x;


3

2

1

Элементердің орнын қалай ауыстырады?231Есеп: екі кесе ішіндегілерінің орнын ауыстыруЕсеп: жадының екі ұяшығының ішіндегілердің орнын ауыстыру керек. 46?464xycc

Слайд 18Программа
program qq;
const N = 10;
var A: array[1..N] of integer;
i,

c: integer;
begin
{ жиымды толтыру }
{ берілген жиымды енгізу }



{ жаңа жиымды шығару }
end;

for i:=1 to N div 2 do begin
c:=A[i]; A[i]:=A[N+1-i]; A[N+1-i]:=c;
end;

Программаprogram qq;const N = 10;var A: array[1..N] of integer;  i, c: integer;begin { жиымды толтыру }

Слайд 19
Тапсырма
"4": 10 элементтен тұратын массивті [-10..10] аралықтағы кездейсоқ сандармен толтырып және

массивтің 1-ші және 2-ші жартысына бөлек-бөлек инверсиялаңдар.
Мысал:
Берілген массив:
4 -5 3 10 -4 -6 8 -10 1 0
Нәтиже:
-4 10 3 -5 4 0 1 -10 8 -6
"5": 12 элементен тұратын массивті [-10..10] аралықтағы кездейсоқ сандармен толтырып және массивтің әр бір үшінші бөлігін жартысына инверсиялаңдар.
Мысалы:
Берілген массив :
4 -5 3 10 -4 -6 8 -10 1 0 5 7
Нәтиже :
10 3 -5 4 -10 8 -6 -4 7 5 0 1
Тапсырма

Слайд 20Циклдік ығысу
Есеп: Массивтің бірінші элементі соңғы элементтің орнына ауысатындай,элементтерді оңға қарай

1 ұяшыққа ығыстыру керек.




Алгоритм:
A[1]:=A[2]; A[2]:=A[3];… A[N-1]:=A[N];
Цикл:


for i:=1 to N-1 do
A[i]:=A[i+1];

Неге N емес?

Циклдік ығысуЕсеп: Массивтің бірінші элементі соңғы элементтің орнына ауысатындай,элементтерді оңға қарай 1 ұяшыққа ығыстыру керек. Алгоритм:A[1]:=A[2]; A[2]:=A[3];…

Слайд 21Программа
program qq;
const N = 10;
var A: array[1..N] of integer;
i,

c: integer;
begin
{ массивті толтыру }
{берілген массивті шығару }



{жаңа массивті шығару }
end;

c := A[1];
for i:=1 to N-1 do A[i]:=A[i+1];
A[N] := c;

Программаprogram qq;const N = 10;var A: array[1..N] of integer;  i, c: integer;begin { массивті толтыру }

Слайд 22
Тапсырмалар
"4": 10 элементтен тұратын массивті [-10..10] аралықтағы кездейсоқ сандармен толтырып және

оңға қарай циклдік ығысуды орындаңдар.
Мысал:
Берілген массив:
4 -5 3 10 -4 -6 8 -10 1 0
Нәтиже:
0 4 -5 3 10 -4 -6 8 -10 1
"5": 12 элементтен тұратын массивті [-12..12] аралықтағы кездейсоқ сандармен толтырып және 4 элементке оңға қарай циклдік ығысуды орындаңдар.
Мысал:
Берілген массив:
4 -5 3 10 -4 -6 8 -10 1 0 5 7
Нәтиже:
-4 -6 8 -10 1 0 5 7 4 -5 3 10
Тапсырмалар

Слайд 23Паскаль тілінде бағдарламалау II Бөлім
4 Тақырып. Массивті іріктеу

Паскаль тілінде бағдарламалау   II Бөлім4 Тақырып. Массивті іріктеу

Слайд 24Іріктеу
Іріктеу – бұл массив элементтерін берілген рет бойынша орналастыру. (өсуі бойынша,

кемуі бойынша, соңғы цифрі бойынша, еселіктерінің қосындысы бойынша, …).
Есеп: Массивтің элементтерін өсу реті бойынша орналастыру.
Алгоритмдер:
Қарапайым және түсінікті, бірақ үлкен масситер үшін эффективті емес.
Көпіршікті әдіс
Таңдау әдісі
Күрделі, бірақ эффективті
«шапшаң іріктеу" (Quick Sort)
«үйме» іріктеу (Heap Sort)
сортировка слиянием
пирамидалық іріктеу

қиындық O(N2)

қиындық O(N·logN)

ІріктеуІріктеу – бұл массив элементтерін берілген рет бойынша орналастыру. (өсуі бойынша, кемуі бойынша, соңғы цифрі бойынша, еселіктерінің

Слайд 25Көпіршікті әдіс
Идея –ауа көпіршігі стакандағы судың түбінен жоғары көтеріледі.
Массив үшін

– ең кішкентай («жеңіл") элементі жоғары қарай жылжиды («қалқып шығады.").
.




Төменгі жағындағы екі көршілес элементтерді салыстырамыз; егер дұрыс тұрмаса онда олардың орындарын ауыстырамыз.
1 жүріс бойынша бір (ең кішкетай)



1-ші жүріс

2-ші жүріс

жүріс


N элементтен тұратын массив үшін N-1 жүріс қажет (N-1 элементті өз орнына орналастырса болғаны).

Көпіршікті әдісИдея –ауа көпіршігі стакандағы судың түбінен жоғары көтеріледі. Массив үшін – ең кішкентай («жеңіл

Слайд 26Программа
1-ші жүріс:


Жұптар салыстырылады
A[N-1] и A[N], A[N-2] и A[N-1]

A[1] и A[2]

A[j] и A[j+1]

2-ші жүріс


for j:=N-1 downto 2 do
if A[j] > A[j+1] then begin
c:=A[j]; A[j]:=A[j+1]; A[j+1]:=c;
end;

2

for j:=N-1 downto 1 do
if A[j] > A[j+1] then begin
c:=A[j]; A[j]:=A[j+1]; A[j+1]:=c;
end;

1

I-ші жүріс

for j:=N-1 downto i do
...

i


Программа1-ші жүріс:Жұптар салыстырылады A[N-1] и A[N],  A[N-2] и A[N-1] … A[1] и A[2] A[j] и A[j+1]2-ші

Слайд 27Программа
program qq;
const N = 10;
var A: array[1..N] of integer;
i,

j, c: integer;
begin
{массивті толтыру }
{берілген массивті шығару }







{жаңа массивті шығару }
end;

for i:=1 to N-1 do begin
for j:=N-1 downto i do
if A[j] > A[j+1] then begin
с := A[j];
A[j] := A[j+1];
A[j+1] := с;
end;
end;

i

A[i] –ден жоғары элемент

Программаprogram qq;const N = 10;var A: array[1..N] of integer;  i, j, c: integer;begin {массивті толтыру }

Слайд 28Жалаушалы көпіршік әдісі
Идея – егер көпіршікті әдісте орын ауыстыру болмаса, онда

массив іріктелген және басқа жолдар керек емес.
Іске асыру: орын ауыстыру туралы көрсетіп тұратын жалауша-айнымалы.

repeat
flag := False; { жалаушаны қосу }
for j:=N-1 downto 1 do
if A[j] > A[j+1] then begin
с := A[j];
A[j] := A[j+1];
A[j+1] := с;
flag := True; { жалаушыны көтеру }
end;
until not flag; {flag=Falseб-да шығу }

flag := False;

flag := True;

not flag;

var flag: boolean;


Жалаушалы көпіршік әдісіИдея – егер көпіршікті әдісте орын ауыстыру болмаса, онда массив іріктелген және басқа жолдар керек

Слайд 29Жалаушалы көпіршік әдісі
i := 0;
repeat
i := i + 1;
flag

:= False; {жалаушаны тастау}
for j:=N-1 downto 1 do
if A[j] > A[j+1] then begin
с := A[j];
A[j] := A[j+1];
A[j+1] := с;
flag := True; { жалаушаны көтеру }
end;
until not flag; {flag=False б-да шығу}

i := 0;

i

i := i + 1;

Жалаушалы көпіршік әдісіi := 0;repeat i := i + 1; flag := False; {жалаушаны тастау} for j:=N-1

Слайд 30Таңдау әдісі
Идея:
Ең кіші элементті тауып, бірінші орынға орналастыру. (A[1] элементпен орын

ауыстыру)
қалғандарынан ең кіші элементті тауып, екінші орынға орналастыру (A[2]) элементпен орын ауыстыру, т.с.с.







Таңдау әдісіИдея:Ең кіші элементті тауып, бірінші орынға орналастыру. (A[1] элементпен орын ауыстыру)қалғандарынан ең кіші элементті тауып, екінші

Слайд 31


Таңдау әдісі
for i := 1 to N-1 do begin
nMin =

i ;
for j:= i+1 to N do
if A[j] < A[nMin] then nMin:=j;
if nMin <> i then begin
c:=A[i];
A[i]:=A[nMin];
A[nMin]:=c;
end;
end;

N-1

N

N-1 жүріс

A[i] -ден A[N]-дейін минимальді іздеу

Қажет болса, ауыстырамыз

i+1

i

Таңдау әдісіfor i := 1 to N-1 do begin nMin = i ; for j:= i+1 to

Слайд 32
Тапсырмалар
"4": 10 элементтен тұратын массивті [-10..10] аралықтағы кездейсоқ сандармен толтырып және

соңғы цифрлары бойынша іріктеу.
Мысал:
Берілген массив:
14 25 13 30 76 58 32 11 41 97
Нәтиже:
30 11 41 32 13 14 25 76 97 58
"5": 10 элементтен тұратын массивті [0..100] аралықтағы кездейсоқ сандармен толтырып және бірінші жартысын өсуі бойынша келесі жартысын кемуі бойынша іріктеу.
Мысал:
Берілген массив:
14 25 13 30 76 58 32 11 41 97
Нәтиже:
13 14 25 30 76 97 58 41 32 11
Тапсырмалар

Слайд 33Паскаль тілінде бағдарламалау II Бөлім
5тақырып. Массивтегі іздеу

Паскаль тілінде бағдарламалау   II Бөлім5тақырып. Массивтегі іздеу

Слайд 34Массив элементін іздеу
Тапсырма –массивте х –ке тең элемент бар немесе жоқтығын

анықтау.
Шешуі: массив үшін: сызықтық іздеу (іріктеу)
кемшілігі: жылдамдығы төмен
Қалай тездетуге болады? – алдын-ала іздейтін массивті әзірлеу
Қалай әзірлейміз?
«әзірленген массивті" қалай пайдаланамыз?
Массив элементін іздеуТапсырма –массивте х –ке тең элемент бар немесе жоқтығын анықтау. Шешуі: массив үшін: сызықтық іздеу

Слайд 35Сызықтық іздеу
nX := 0;
for i:=1 to N do
if A[i] =

X then begin
nX := i;
break; {циклден шығу}
end;

nX := 0; { әзірше табылған жоқ ...}



if nX < 1 then writeln(‘табылған жоқ...')
else writeln('A[', nX, ']=', X);

nX – қажетті элемент нөмірі

Жақсарту: X-ті тапқан соң, циклден шығамыз.

for i:=1 to N do { цикл}
if A[i] = X then { егер табылса, онда ... }
nX := i; { ... Номерді еске сақтау}

nX := 0; i := 1;
while i <= N do begin
if A[i] = X then begin
nX := i; i := N;
end;
i := i + 1;
end;

break;

i := N;

Сызықтық іздеуnX := 0;for i:=1 to N do if A[i] = X then begin  nX :=

Слайд 36
Екілік іздеу


X = 7
X < 8

8
4
X > 4

6

X > 6
A[c] орташа

элементін тауып және X-пен салыстыру.
Егер X = A[c], табылды (шығу).
Егер X < A[c], келесі жартысынан іздеу.
Егер X > A[c], екінші жартысынан табу.
Екілік іздеуX = 7X < 884X > 46X > 6A[c] орташа элементін тауып және X-пен салыстыру.Егер X

Слайд 37Екілік іздеу
nX := 0;
L := 1; R :=

N; {шекара: A[1]-ден A[N] дейін }









if nX < 1 then writeln(‘табылған жоқ...')
else writeln('A[', nX, ']=', X);

while R >= L do begin
c := (R + L) div 2;




if x < A[c] then R := c - 1;
if x > A[c] then L := c + 1;
end;

орташа элементтің номері

if X = A[c] then begin
nX := c;
R := L - 1; { break; }
end;

табылды

Цикл аяқталды

Шекараны жылжытамыз

Екілік іздеу nX := 0; L := 1; R := N; {шекара: A[1]-ден A[N] дейін } if

Слайд 38Іздеу әдістерін салыстыру

Іздеу әдістерін салыстыру

Слайд 39
Тапсырма
"4": X-ке тең элементтерді табатын программа құру керек. (бұл сан пернетақтадан

енгізілуі керек). Екілік санды іздеу.

"5": [0,100] аралығында 32 элементтен тұратын массивтен екілік іздеудегі қадамның орташа мәнін есептейтін программа құрыңдар. Іздеу үшін осы аралықтағы 1000 кездейсоқ сандарды пайдалану керек.
Тапсырма

Слайд 40Паскаль тілінде бағдарламалау II Бөлім
6 тақырып. Символдық жолдар

Паскаль тілінде бағдарламалау   II Бөлім6 тақырып. Символдық жолдар

Слайд 41Символдық массивпен жұмыстың қиындығы қандай?
var B: array[1..N] of char;
Символдық массив:
Әрбір символ

– бөлек нысан;
Сипаттау бөлімінде көрсетілген
массивтің ұзындығы N—ға тең

Не қажет:
Символдар тізбегін біртұтас түрде қарастырылуы
Жолдың ұзындығы айнымалы болуы

Символдық массивпен жұмыстың қиындығы қандай?var B: array[1..N] of char;Символдық массив:Әрбір символ – бөлек нысан;Сипаттау бөлімінде көрсетілгенмассивтің ұзындығы

Слайд 42Символьдық жолдар
Жол ұзындығы
Жұмыс аймағы
s[1]
s[2]
s[3]
s[4]
var s: string;
var s: string[20];
Жолдың ұзындығы:
n := length

( s );

var i: integer;


Символьдық жолдарЖол ұзындығыЖұмыс аймағыs[1]s[2]s[3]s[4]var s: string;var s: string[20];Жолдың ұзындығы:n := length ( s );var i: integer;

Слайд 43Символдық жолдар
Есеп: Символдық жолды пернетақтадан енгізіп, барлық "а" әріпін "б"

әріпіне алмастыру керек.

program qq;
var s: string;
i: integer;
begin
writeln(‘жолды енгізіңдер');
readln(s);
for i:=1 to Length(s) do
if s[i] = 'а' then s[i] := 'б';
writeln(s);
end.

readln(s);

writeln(s);

Length(s)

Жолды енгізу

Жолдың ұзындығы

Жолды шығару

Символдық жолдарЕсеп: Символдық жолды пернетақтадан енгізіп, барлық

Слайд 44
Тапсырма
"4": Символдық жолды енгізіп, барлық "а" әріпін "б" әріпіне

және кересінше алмастыру керек.
Мысал:
Жолды енгізіңіз:
ааббссААББСС
Нәтиже:
ббаассББААСС
"5": Символдық жолды енгізіп, оның палиндромды екенін анықтаңдар.
Мысал: Мысал:
Жолды енгізіңіз: Жолды енгізіңіз:
АБВГДЕ ҚАЗАҚ
Нәтиже: Нәтиже:
палиндром емес. Палиндром.
Тапсырма

Слайд 45Жолдармен орындалатын әрекеттер
Біріктіру: Бір жолды келесі жолдық соңына біріктіру.
Жаңа мәндерді жазу:
var

s, s1, s2: string;

s := 'Вася';

s1 := ‘Сәлем';
s2 := ‘Марат';
s := s1 + ', ' + s2 + '!';

‘Сәлем, Марат!'

Қиып алу: Бір жолда басқа жолды қиып алу

s := '123456789';

s1 := Copy ( s, 3, 6 );
s2 := Copy ( s1, 2, 3 );

'345678'

'456'

3 ші символдан

6 дана

Жолдармен орындалатын әрекеттерБіріктіру: Бір жолды келесі жолдық соңына біріктіру.Жаңа мәндерді жазу:var s, s1, s2: string;s := 'Вася';s1

Слайд 46Өшіру және енгізу
Жолдың бір бөлігін өшіріп тастау:
Жолды енгізу:
s := '123456789';
Delete (

s, 3, 6 );

3-ші символдан

6 дана

Жол өзгереді!

'123456789'

'129'

s := '123456789';
Insert ( 'ABC', s, 3 );
Insert ( 'Q', s, 5 );

Қайда қоямыз

Нені қоямыз?

3-ші символдан бастап

'12ABC3456789'

'12ABQC3456789'

Өшіру және енгізуЖолдың бір бөлігін өшіріп тастау:Жолды енгізу:s := '123456789';Delete ( s, 3, 6 ); 3-ші символдан6

Слайд 47Жол бөлігін іздеу
Жол ішінен іздеу:
s := ‘мектеп-гимназиясы';
n := Pos ( ‘к',

s );
if n > 0 then
writeln('Буква к – это s[', n, ']')
else writeln(‘табылмады');
n := Pos ( ‘мектеп', s );
s1 := Copy ( s, n, 6 );

s[3]

3

n = 1

Ерекшелігі:
функция возвращает номер символа, с которого начинается образец в строке
если слова нет, возвращается 0
поиск с начала (находится первое слово)

var n: integer;

Жол бөлігін іздеуЖол ішінен іздеу:s := ‘мектеп-гимназиясы';n := Pos ( ‘к', s );if n > 0 then

Слайд 48Мысалдар
s := ‘Алуа Ақан Мырза';
n := Pos ( ‘Ақан', s );
Delete

( s, n, 4 );
Insert ( ‘Ұлан', s, n );

‘Алуа Ұлан Мырза'

s := 'Алуа Ақан Мырза';
n := length ( s );
s1 := Copy ( s, 1, 4 );
s2 := Copy ( s, 11, 5 );
s3 := Copy ( s, 6, 4 );
s := s3 + s1 + s2;
n := length ( s );

‘Алуа Мырза'

15

‘Алуа'

‘Мырза'

‘Ақан'

' АлуаАқанМырза '

13

6

Мысалдарs := ‘Алуа Ақан Мырза';n := Pos ( ‘Ақан', s );Delete ( s, n, 4 );Insert (

Слайд 49Есептерді шешу мысалдары
Есеп: Атын, әкесінің атын және фамилиясын енгізу. «фамилия-инициалы» форматына

түрлендіру.
Мысал:
Атынды, әкеңнің атын және фамилияңды енгіз:
Алуа Данияровна Қуанова
Нәтиже:
Қуанова А.Д.

Алгоритм:
Бірінші бос орынды тауып, атын бөліп алу
Негізгі жолдан атты бос орынмен бірге өшіру
Бірінші бос орынды тауып алып әкесінің атын бөліп алу
Әкесінің атын өшіріп тастау
Фамилияны бірінші әріптермен біріктіру…

Есептерді шешу мысалдарыЕсеп: Атын, әкесінің атын және фамилиясын енгізу. «фамилия-инициалы» форматына түрлендіру.  Мысал:	 Атынды, әкеңнің атын

Слайд 50Программа
program qq;
var s, name, otch: string;
n: integer;
begin
writeln('Введите

имя, отчество и фамилию');
readln(s);
n := Pos(' ', s);
name := Copy(s, 1, n-1); { атты ерекшелеу }
Delete(s, 1, n);
n := Pos(' ', s);
otch := Copy(s, 1, n-1); {әкесінің атын қиып алу}
Delete(s, 1, n); {фамилия қалады }
s := s + ' ' + name[1] + '.' + otch[1] + '.';
writeln(s);
end.
Программаprogram qq;var s, name, otch: string;  n: integer;begin  writeln('Введите имя, отчество и фамилию');  readln(s);

Слайд 51
Тапсырма
"4": Файлдың атын енгізу (кеңейтілімін жазбауға болады) және кеңейтілімін ".exe“ деп

өзгерту.
Мысал:
Файл атын енгізіңіз: Файлдфң атын енгізіңіз:
qqq qqq.com
Нәтиже: Нәтиже:
qqq.exe qqq.exe
"5": Файлға бару жолын енгізу және әр бір қапшықты жаңа жолдан бастап ашып көресету
Пример:
Файлға бару жолын енгізіңіз:
C:\Мои документы\1-Б\Акан\qq.exe
Нәтиже:
C:
Мои документы
1-Б
Акан
qq.exe
Тапсырма

Слайд 52Паскаль тілінде бағдарламалау II Бөлім
Тақырып 7. Рекурсивті іріктеу

Паскаль тілінде бағдарламалау   II БөлімТақырып 7. Рекурсивті іріктеу

Слайд 53Рекурсивті іріктеу
Есеп: «Тумба-юмба« тілінің алфавиті Ы, Ц, Щ және О.

К әріптен тұратын барлық сөздерді экранға шығарып, олардың санын табыңыз. K саны пернетақтадан енгізіледі.

1

K

Әр ұяшықта 4 әріптің кез-келгені болуы мүмкін

4 нұсқа

4 нұсқа

4 нұсқа

4 нұсқа

Нұсқалар саны:

Рекурсивті іріктеуЕсеп: «Тумба-юмба« тілінің алфавиті  Ы, Ц, Щ және О. К әріптен тұратын барлық сөздерді экранға

Слайд 54Рекурсивті іріктеу
1
K
Рекурсия: К Рәріптен тұратын сөздер үшін K-1 әріптен тұратын 4

мақсатты шешу.

1

K

1

K

1

K


Барлық нұсқаларды


Барлық нұсқаларды


Барлық нұсқаларды


Барлық нұсқаларды

Рекурсивті іріктеу1KРекурсия: К Рәріптен тұратын сөздер үшін K-1 әріптен тұратын 4 мақсатты шешу.1K1K1KБарлық нұсқаларды Барлық нұсқалардыБарлық нұсқалардыБарлық

Слайд 55


Процедура
procedure Rec(p: integer);
begin
if p > K then begin
writeln(s);

count := count+1;
end
else begin
s[p]:='Ы'; Rec ( p+1 );
s[p]:='Ц'; Rec ( p+1 );
s[p]:='Щ'; Rec ( p+1 );
s[p]:='О'; Rec ( p+1 );
end;
end;

1

K

p

s

p+1

рекурсивті шақыртулар

Рекурсия соңы

Глобальды айнымалылар :
var s: string;
count, K: integer;

Процедураprocedure Rec(p: integer);begin if p > K then begin  writeln(s);  count := count+1; end else

Слайд 56Процедура
procedure Rec(p: integer);
const letters = 'ЫЦЩО';
var i: integer;

begin
if p > k then begin
writeln(s);
count := count+1;
end
else begin
for i:=1 to length(letters) do begin
s[p] := letters[i];
Rec(p+1);
end;
end;
end;

const letters = 'ЫЦЩО';

for i:=1 to length(letters) do begin
s[p] := letters[i];
Rec(p+1);
end;

Барлық әріптер

Барлық әріптер бойынша цикл

Локальді айнымалы

Процедура procedure Rec(p: integer); const letters = 'ЫЦЩО'; var i: integer; begin  if p > k

Слайд 57Программа
program qq;
var s: string;
K, i, count: integer;
begin
writeln(‘сөздің ұзындығын

енгіз:');
read ( K );
s := '';
for i:=1 to K do s := s + ' ';
count := 0;
Rec ( 1 );
writeln(‘Барлығы ', count, ‘сөз');
end.

procedure Rec(p: integer);
...
end;

процедура

s := '';
for i:=1 to K do s := s + ' ';

K пробелден тұратын жол

Глобальді айнымалылар

Программаprogram qq;var s: string;  K, i, count: integer;begin writeln(‘сөздің ұзындығын енгіз:'); read ( K ); s

Слайд 58
Тапсырма
«Тумба-юмба» тілінің алфавиті Ы, Ц, Щ и О әріптерінен тұрады. K

саны пернетақтадан енгізіледі.

"4": К әріптен тұратын Ы әріпі 1 реттен артық кездеспейтін барлық сөздерді экранға шығарып, және олардың санын санау қажет.
"5": Қатар тұрған бірдей әріптері бар К әріптен тұратын барлық сөздерді экранға шығарып, (мысал, ЫЩЩО) және олардың санын санау керек.

Тапсырма«Тумба-юмба» тілінің алфавиті Ы, Ц, Щ и О әріптерінен тұрады. K саны пернетақтадан енгізіледі.

Слайд 59Паскаль тілінде бағдарламалау II Бөлім
Тақырып 8. Матрицалар

Паскаль тілінде бағдарламалау   II БөлімТақырып 8. Матрицалар

Слайд 60Матрицалар
Есеп: Шахмат тақтасындағы фигуралардың орнын естеріңе сақтаңдар.
1
2
3
4
5
6

c6
A[6,3]

МатрицаларЕсеп: Шахмат тақтасындағы фигуралардың орнын естеріңе сақтаңдар. 123456c6A[6,3]

Слайд 61Матрицалар
Матрица – бұл, тікбұрышты сандар кестесі.
Матрица – бұл әрбір элементі

екі индекстен тұратын массив. (жол нөмірі және баған номері).

A

баған 2

баған 3

ұяшық A[3,4]

МатрицаларМатрица – бұл, тікбұрышты сандар кестесі. Матрица – бұл әрбір элементі екі индекстен тұратын массив. (жол нөмірі

Слайд 62Матрицалар
Сипаттау:
const N = 3;
M = 4;
var A: array[1..N,1..M]

of integer;
B: array[-3..0,-8..M] of integer;
Q: array['a'..'d',False..True] of real;

Пернетақтадан енгізу:

for i:=1 to N do
for j:=1 to M do begin
write('A[',i,',',j,']=');
read ( A[i,j] );
end;

A[1,1]=

25

A[1,2]=

14

A[1,3]=

14

...

A[3,4]=

54

i

j

for j:=1 to M do
for i:=1 to N do begin

МатрицаларСипаттау:const N = 3;   M = 4;var A: array[1..N,1..M] of integer;  B: array[-3..0,-8..M] of

Слайд 63Матрицалар
Кездейсоқ сандармен толтыру
for i:=1 to N do
for j:=1 to M

do
A[i,j] := random(25) - 10;

Жол бойынша цикл

Баған бойынша цикл

Экранға шығару

for i:=1 to N do begin


writeln;
end;

Жаңа жолға өту

for j:=1 to M do
write ( A[i,j]:5 );

Жолды шығару


Сол жолда

МатрицаларКездейсоқ сандармен толтыруfor i:=1 to N do for j:=1 to M do  A[i,j] := random(25) -

Слайд 64Матрицаның элементтерін өңдеу
Есеп: 3 жолдан және 4 баған тұратын матрица кездейсоқ

сандармен толтырып, экранға шығару керек. Матрица элементтерінің қосындысын табыңыз.

program qq;
const N = 3; M = 4;
var A: array[1..N,1..M] of integer;
i, j, S: integer;
begin
{матрицаны толтырып,экранға шығару}
S := 0;



writeln(‘элементтердің қосындысы ', S);
end;

for i:=1 to N do
for j:=1 to M do
S := S + A[i,j];

Матрицаның элементтерін өңдеуЕсеп: 3 жолдан және 4 баған тұратын матрица кездейсоқ сандармен толтырып, экранға шығару керек. Матрица

Слайд 65
Тапсырма
[-10,10] аралықтағы кез-келген сандармен 8 жолдан және 5 бағаннан тұратын матрицаны

толтырып экранға шығару керек.

"4": Матрицаның минималь және максималь элементтерін және олардың нөмірлерін табу керек.
Шығару пішіні:
Минималь элемент A[3,4]=-6
Максималь элемент A[2,2]=10
"5": Элементтерінің қосындысы максималь болатын жолды экранға шығару керек.
Шығару пішіні:
Жол 2: 3 5 8 9 8

Тапсырма[-10,10] аралықтағы кез-келген сандармен 8 жолдан және 5 бағаннан тұратын матрицаны толтырып экранға шығару керек.

Слайд 66Матрицамен орындалатын әрекеттер
Есеп 1. N жол және N бағаннан тұратын квадрат

матрицаның бас диагоналін басып шығару керек.

A[1,N]

A[2,2]

A[3,3]

A[N,N]

for i:=1 to N do
write ( A[i,i]:5 );

Есеп 2. Екінші диагоналді экранға шығару.

A[N,1]

A[N-1,2]

A[2,N-1]

for i:=1 to N do
write ( A[i, ]:5 );

N+1-i

жол мен баған нөмірінің қосындысы N+1

A[1,1]

Матрицамен орындалатын әрекеттерЕсеп 1. N жол және N бағаннан тұратын квадрат матрицаның бас диагоналін басып шығару керек.A[1,N]A[2,2]A[3,3]A[N,N]for

Слайд 67Матрицалармен орындалатын әрекеттер
Есеп 3. Бас диагоналда орналасқан элементтердің қосындысы
жол 1: A[1,1]
жол

2: A[2,1]+A[2,2]
...
жол N: A[N,1]+A[N,2]+...+A[N,N]

S := 0;
for i:= 1 to N do

жол бойынша цикл

for j:= 1 to i do
S := S + A[i,j];

I жолдың қажет элементерін қосу

Матрицалармен орындалатын әрекеттерЕсеп 3. Бас диагоналда орналасқан элементтердің қосындысыжол 1: A[1,1]жол 2: A[2,1]+A[2,2]...жол N: A[N,1]+A[N,2]+...+A[N,N]S := 0;for

Слайд 68Матрицамен орындалатын әрекеттер
Есеп 4. Жолдың немесе бағандардың орнын ауыстыру. N жол

мен M баған тұратын матрицаның 2-ші және 4-ші жолдарын ауыстыру.

2

4

j

A[2,j]

A[4,j]

for j:=1 to M do begin
c := A[2,j];
A[2,j] := A[4,j];
A[4,j] := c;
end;

Есеп 5. 3-ші бағанға алтыншыны қосу.

for i:=1 to N do
A[i,3] := A[i,3] + A[i,6];

Матрицамен орындалатын әрекеттерЕсеп 4. Жолдың немесе бағандардың орнын ауыстыру. N жол мен M баған тұратын матрицаның 2-ші

Слайд 69
Тапсырма
7 жол және 7 баған тұратын матрицаны [-10,10] аралығындағы кездейсоқ сандармен

толтырып, экранға шығару. Жаслы түспен ерекшеленген аймақтағы элементерді нөлге айналдырып экранға шығару.

"4": "5":

Тапсырма7 жол және 7 баған тұратын матрицаны [-10,10] аралығындағы кездейсоқ сандармен толтырып, экранға шығару. Жаслы түспен ерекшеленген

Слайд 70Паскаль тілінде бағдарламалау II Бөлім
Тақырып 9. Файлдар

Паскаль тілінде бағдарламалау   II БөлімТақырып 9. Файлдар

Слайд 71Файлдар
Файл – дискідегі аты бар аймақ.
Файлдар
Безенділімеген мәтін, басқару символдары жоқ (кодтары

32)

ACSII (1символ=1 байт)
UNICODE (1символ =2 байт)

*.txt, *.log,
*.htm, *.html

символы кодтық кестенің кез-келген символы

*.doc, *.exe,
*.bmp, *.jpg,
*.wav, *.mp3,
*.avi, *.mpg

Мәтіндік

Екілік

Қапшықтар (каталог)

ФайлдарФайл – дискідегі аты бар аймақ.ФайлдарБезенділімеген мәтін, басқару символдары жоқ (кодтары < 32)ACSII (1символ=1 байт)UNICODE (1символ =2

Слайд 72Сэндвичтің принципі
I этап. Файл ашу :
f айнымалыны файлмен байланыстыру
Файлды ашу

(оны белсенді жасап жұмысқа әзірлеу)


assign(f, 'qq.dat');

reset(f); {оқу үшін}

rewrite(f); {жазу үшін}

II этап: файлдармен жұмыс

Айнымалы типі «мәтіндік файл": var f: text;

III этап: файлды жабу

close(f);


read ( f, n ); {n-ді енгізу }

write ( f, n ); {n-нің мәнін жазу }
writeln ( f, n );{жаңа жолға шығу }

Сэндвичтің принципі I этап. Файл ашу :f айнымалыны файлмен байланыстыруФайлды ашу (оны белсенді жасап

Слайд 73Файлдармен жұмыс
Ерекшеліктері:
файл аты assign командасында ғана айтылады, файлды шақыру файлдық айнымалы

арқылы жүреді
оқығанда ашылатын файл бар болуы керек
жазу үшін ашылатын файл бар болса, ескі мазмұны өшіріледі
мәліметтер файлға мәтін түрін жазылады
программа аяқталғанда барлық файлдар авторматты түрде жабылады.
файл жабылған соң f айнымасын басқа файлмен жұмыс істеу үшін пайдалануға болады.
Файлдармен жұмысЕрекшеліктері:файл аты assign командасында ғана айтылады, файлды шақыру файлдық айнымалы арқылы жүредіоқығанда ашылатын файл бар болуы

Слайд 74Тізбектелген
Файл ашылғанда меңзер файл басында орналасады
меңзер тұрған жерден бастап оқылады
оқыған

соң меңзер келесі оқылмаған символға қарай қозғалады.

12 5 45 67 56●

Файл соңы
(end of file, EOF)


12 5 45 67 56●

assign ( f, 'qq.dat' );
reset ( f );

read ( f, x );












Тізбектелген Файл ашылғанда меңзер файл басында орналасадымеңзер тұрған жерден бастап оқыладыоқыған соң меңзер келесі оқылмаған символға қарай

Слайд 75Жол соңына дейін оқу
Қалай кері қайтуға болады?
Тізбектелген
close ( f );
reset

( f ); { басынан бастау }

readln ( f, x );

12 5 45¤ 36 67¤ 56●

конец строки
(end of line, EOL)









Жол соңына дейін оқуҚалай кері қайтуға болады?Тізбектелгенclose ( f ); reset ( f ); { басынан бастау

Слайд 76
Мысал
Есеп: input.txt файлында сандар (бағанға) жазылған, нешеу екені белгісіз. output.txt файлына

олардың қосындысын жазу керек.
Алгоритм:
Файлды ашу input.txt оқу үшін.
S := 0;
Егер сан қалмаса, 7 қадамға көшу.
Келесі x айнымалыны оқу.
S := S + x;
3 қадамға көшу.
input.txt файлын жабу.
Жазу үшін output.txt файлын ашу.
S-тің мәнін файлға жазу.
output.txt файлды жабу.

цикл с условием "пока есть данные"

МысалЕсеп: input.txt файлында сандар (бағанға) жазылған, нешеу екені белгісіз. output.txt файлына олардың қосындысын жазу керек.Алгоритм:Файлды ашу input.txt

Слайд 77Программа
program qq;
var s, x: integer;
f: text;
begin
assign(f,

'input.txt');
reset(f);
s := 0;




close(f);




end.

while not eof(f) do begin
readln(f, x);
s := s + x;
end;

f: text;

eof(f)

егер файлдың соңы болса логикалық функция, True болады,

assign(f, 'output.txt');
rewrite(f);
writeln(f, 'Сумма чисел ', s);
close(f);

output.txt файлына нәтижені жазу

Программаprogram qq;var s, x: integer;  f: text; begin  assign(f, 'input.txt');  reset(f);  s :=

Слайд 78
Тапсырма
input.txt файлында сандар жазылған, нешеу екені белгісіз.
"4": output.txt файлына барлық сандардың

орташа арифметикалық мәндерін жазу керек.
"5": output.txt файлына максималь және минималь сандарды тауып жазыңдар.

Тапсырмаinput.txt файлында сандар жазылған, нешеу екені белгісіз.

Слайд 79Массивтерді өңдеу
Есеп: input.txt файлында сандар жазылған (бағандап), саны – белгісіз, бірақ

100-ден артық емес. Өсуі бойынша output.txt. файлында жазу керек
Қиындықтар:
Іреіктеу үшін барлық сандарды жадыда массив түрінде ұстау керек;
Қанша сан екені белгісіз.
Шешімі:
100 элементі бар массивке жадыдан орын әзірлейміз;
Оқылған сандарды массив түрінде жазып және олардың санын N айнымалысы арқылы санаймыз;
массивтің алғашқы N элементін сорттаймыз;
файлға жазамыз.
Массивтерді өңдеуЕсеп: input.txt файлында сандар жазылған (бағандап), саны – белгісіз, бірақ 100-ден артық емес. Өсуі бойынша output.txt.

Слайд 80Массивтен берілгендерді оқу
var A: array[1..100] of integer;
f: text;
function

ReadArray: integer;
var i: integer;
begin
assign(f, 'input.txt');
reset(f);
i := 0;




close(f);
ReadArray := i;
end;

Ауқымды айнымалылар:

Функция: массивті енгізу, элементтер санын шақырады

while (not eof(f)) and (i < 100) do begin
i := i + 1;
readln(f, A[i]);
end;

ReadArray := i;

Егер файл соңына жеткенсек немесе100 сан оқылса, цикл аяқталады

Массивтен берілгендерді оқуvar A: array[1..100] of integer;  f: text; function ReadArray: integer; var i: integer; begin

Слайд 81Программа
program qq;
var A: array[1..100] of integer;
f: text;

N: integer;
Begin
N := ReadArray;
{ сортировка первых N элементов }




end.

function ReadArray: integer;
...
end;

assign(f, 'output.dat');
rewrite(f);
for i:=1 to N do
writeln(f, A[i]);
close(f);

сортталған массивмассивті файлға жазып шығару

Программаprogram qq;var A: array[1..100] of integer;  f: text;    N: integer;Begin  N :=

Слайд 82
Тапсырма
input.txt файлында сандар жазылған (бағанға),, саны 100 артық емес екені белгілі.


"4": Кемуі бойынша массивті іріктеп және оны output.txt. файлына жазу керек
"5": Массивті цифрларының қосындысының өсуі бойынша сорттап және оны output.txt. файлына жазу керек

Тапсырмаinput.txt файлында сандар жазылған (бағанға),, саны 100 артық емес екені белгілі.

Слайд 83Мәтіндік мәліметтерді өңдеу
Есеп: input.txt файлында жолдар жазылған, олардың арасында «қысқаша» деген

қыстырма-сөз бар. Мәтінді тазартып output.txt. файлына жазу керек.
input.txt файлы :
қысқасы, кеше, қысқасы, мамам, қысқасы, үй, қысқасы тазалады.
Шеше қысқасы кеше қысқасы неше қысқасы кесе қысқасы сынды
Роза қысқасы тікенді қысқасы гүл.

Нәтиже - output.txt файлында :
Кеше мамам үй тазалады.
Шеше кеше неше кесе сынды
Роза тікенді гүл.
Мәтіндік мәліметтерді өңдеуЕсеп: input.txt файлында жолдар жазылған, олардың арасында «қысқаша» деген қыстырма-сөз бар. Мәтінді тазартып output.txt. файлына

Слайд 84
Мәтіндік мәліметтерді өңдеу
Алгоритм:
файлдан (readln) жолды оқу.
", қысқасы," деген сөзді

алып таста (Pos, Delete).
1-ші қадамға өту.
s жолын өңдеу :
Ерекшелігі:
Бір уақытта екі файлдыда ашық қою. (оқу режимінде, екінші – жазу режимінде).

мәліметтер аяқталған жоқ

repeat
i := Pos(', короче,', s);
if i <> 0 then Delete(s, i, 9);
until i = 0;

", қысқасы,» іздеу

9 символды өшіру

Мәтіндік мәліметтерді өңдеу Алгоритм: файлдан (readln) жолды оқу.

Слайд 85


Бір уақытта екі файлмен жұмыс істеу
program qq;
var s: string;

i: integer;
fIn, fOut: text;
begin
assign(fIn, 'input.txt');
reset(fIn);
assign(fOut, 'output.txt');
rewrite(fOut);
{файлды өңдеу }
close(fIn);
close(fOut);
end.

fIn, fOut: text;

Файлдық айнымалылар

оқу файлын ашу

жазу файлын ашу

Бір уақытта екі файлмен жұмыс істеуprogram qq; var s: string;   i: integer;   fIn,

Слайд 86Файлды өңдеудің толық циклі
while not eof(fIn) do begin

readln(fIn, s);
writeln(fOut, s);
end;

repeat
i := Pos(', короче,', s);
if i <> 0 then
Delete(s, i, 9);
until i = 0;

Әзірше файлдың соңы емес

Жолды өңдеу

«тазарған" жолды жазу

Файлды өңдеудің толық циклі while not eof(fIn) do begin   readln(fIn, s);   writeln(fOut, s);

Слайд 87
Тапсырма
input.txt файлында жолдар жазылған, саны– белгісіз.
"4": «қысқасы" сөзін «жалпы» сөздеріне

ауыстырып, және output.txt. файлына жазу керек.
"5": output.txt файлына 5 сөз артық жолдарды шығару (сөздер бір бос орынмен бөлінген).
Тапсырмаinput.txt файлында жолдар жазылған, саны– белгісіз.

Слайд 88Конец фильма

Конец фильма

Что такое shareslide.ru?

Это сайт презентаций, где можно хранить и обмениваться своими презентациями, докладами, проектами, шаблонами в формате PowerPoint с другими пользователями. Мы помогаем школьникам, студентам, учителям, преподавателям хранить и обмениваться учебными материалами.


Для правообладателей

Яндекс.Метрика

Обратная связь

Email: Нажмите что бы посмотреть