Студопедия

Главная страница Случайная страница

Разделы сайта

АвтомобилиАстрономияБиологияГеографияДом и садДругие языкиДругоеИнформатикаИсторияКультураЛитератураЛогикаМатематикаМедицинаМеталлургияМеханикаОбразованиеОхрана трудаПедагогикаПолитикаПравоПсихологияРелигияРиторикаСоциологияСпортСтроительствоТехнологияТуризмФизикаФилософияФинансыХимияЧерчениеЭкологияЭкономикаЭлектроника






Массивтер






Массив дегеніміз – бір типті берілгендер жиыны. Басқ аша айтқ анда, массив – бір атауғ а біріктірілген айнымалылардың реттелген тізбегі. Массивтің ә р элементі массивтің атымен белгіленеді де, оның индексі қ ойылады. Паскаль тіліндегі массив элементтерінің индексі алгоритмдік тілдегі тә різді тік жақ шағ а алынып жазылады, мысалы a[i]. a – массив аты, [i]- индексі. Массив айнымалы бө лігінде былай сипатталады:

Var массив аты: array [массив ө лшемі] of элементтер типі;

Паскаль тілінде массивтер бір ө лшемді жә не екі ө лшемді болып екіге бө лінеді.

Бір ө лшемді массив бір ғ ана жол тү рінде бейнеленеді.

Бір ө лшемді массив элементтерін енгізу жә не шығ ару.Массив элементтерін енгізуді жә не шығ аруды цикл операторының кө мегімен ұ йымдастырамыз. Циклды массив индексіне қ олданамыз.

Екі ө лшемді массив деп, реттелген элементтері тік тө ртбұ рышты таблица тү рінде анық талатын мә ліметтер жиынын айтамыз немесе екі ө лшемді массив дегеніміз, алгебра курсындағ ы – матрицалар.

Массив n жолдан, m бағ аннан тұ рады. a[n, m] – элементіміз жол мен бағ анның қ иылысуында анық талады.

Екі ө лшемді массивті сипаттау мысалы:

const n=3; m=3;

var a: array [1.. n, 1.. m] of real;

немесе

const n=3; m=3;

type a = array [1.. n, 1.. m] of byte;

var c, d: a;

Екі ө лшемді массив элементтерін енгізуде бірінің ішіне бірі іштестірілген екі циклды қ олданамыз. Мұ ның мағ ынасы: сыртқ ы циклдың ә р мә нінде ішкі цикл 1-ден бастап n-ге дейін ө згеріп отырады.

массив элементтерін матрицатү рінде шығ ару:

for i: =1 to n do

begin

for j: =1 to m do

write (a[I, j]);

writeln;

end;

Жолдар

Паскаль тілінде жол символдар тізбегінен қ ұ ралады. Басқ а тілдер тә різді Паскаль тілінде де жолдық айнымалылар пайдаланылады. Жолдық айнымалылардың типін кө рсету ү шін string қ ызмет сө зі пайдаланылады. Жолдық тұ рақ ты деп символдарының саны 256-дан аспайтын апосторфтар ішіне алынғ ан символдар тізбегін айтады.

Бейнеленуі:

Var < айнымалы аты>: string [жолдың max ұ зындығ ы];

Жолдармен жұ мыс істеуге арналғ ан процедуралар мен функциялар

Паскаль тілінде жолдармен жұ мыс істеуге арналғ ан мынадай стандартты процедуралар мен функциялар бар:

chr (i) – I санына (кодына) сә йкес символды береді. Мысалы, chr (1)=’! ’, chr(250)=‘з’

ord (s)s символының кодын береді.

copy (s, n, m)s жолының n орындағ ы символынан бастап m символ бө ліп алады.

concat (s1, s2, …, sn) – жолдарды реті бойынша жалғ астырады.

Мысалы, concat(‘a’, ‘b’, ‘c’) = ‘abc’

insert(s1, s, n)s1 жолын s жолына n символдан бастап ығ ыстырып қ ояды.

length (s)s жолдық айнымалысының мә ніндегі символдар санын береді.

length(‘abcd’) = 4

delete(s, n, m)s жолынан n символдан бастап m символды жояды.

pos(s1, s)s1 ішкі жолының s жолына ену позициясын анық тайды.

str(x, s)x санын s жолдық айнымалысына тү рлендіреді

val(s, x, code)s жолдық айнымалысын x санына тү рлендіреді.

upcase(c)c символын бас ә ріпке тү рлендіреді.

 

16-17-39-48-49. Символдық ақ параттарды ө ң деу. Жиынар

Паскаль тіліндегі жиындар саналымды типті еске тү сіреді. Математикадағ ы жиындар – табиғ аты ә ртү рлі элементтердің кез келген жиынтығ ы. Программалау тіліндегі жиын ұ ғ ымы математикалық тү сініктегідей кең ауқ ымда қ аралмайды.

Паскаль тіліндегі жиын дегеніміз белгілі бір базалық типке жататын элементтер жиынтығ ы. Базалық тип ретінде келесі типтерді қ арастыруғ а болады:

Саналымды тип;

Символдық тип;

Шектелген тип.

Паскалда жиындарды келесі тү рде сипаттаймыз:

Type < тип_атауы> = set of < базалық _тип>

[] тү ріндегі конструктор бос жиынды білдіреді.

Программада жиындар тұ рақ ты ретінде де қ олданылуы мү мкін, бұ л жағ дайда олар келесі тү рде анық талады:

Const YesOrNo= [‘Y’, ‘y’, ‘N’, ‘n’];

Сонымен қ атар жиынды типтелген тұ рақ ты ретінде кө рсетуге болады:.

Const digits: set of char= [‘0’.. ‘9’];

Жиындарды тұ рақ ты ретінде сипаттауда оларғ а «+» (жиындарды біріктіру) таң басын қ олдануғ а болады.

Мысалы:

Const Yes= [‘Y’, ‘y’]; No= [‘N’, ‘n’];

YesOrNo= Yes+ No;

Ә ртү рлі типті ақ параттарды біріктіру жазба деп аталады. Жазба типі саны белгіленген ә р тү рлі типті ө рістерден немесе компоненттерден тұ рады. Паскаль тілінде жазба типі Record қ ызметші сө зінің кө мегімен сипатталады. Жазба типін хабарлау ә рбір ө рістің типін жә не ө рістін атын білдіретін идентификатордан тұ рады. Жалпы тү рде жазылуы:

type < тип атауы > =record

< 1-ө ріс>: тип;

< 2-ө ріс>: тип;

………………….

< K-ө ріс>: тип

end;

Паскальда жазба ө рістерін қ олдану ә деттегі айнымалыларды қ олдану тә різді жү зеге асырылады. Кез келген операциялар жазбаның жеке ө рістеріне жү ргізіледі.

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

with < жазба атауы> do < оператор>;

18-19-49. Ішкі программалар. Процедуралар жә не функциялар

Жеке программа тү рінде бө лек жазылғ ан, қ ажет кезінде оғ ан оралып, оны пайдаланып отыруғ а болатын негізгі программаның арнайы бө лігін ішкі программа (подпрограмма) дейді. Ішкі программағ а автоматты тү рде енуге жә не одан шығ уғ а болады.

Паскаль тілінде ішкі программаның 2 тү рі бар:

процедуралар;

функциялар.

Бір программада бір немесе бірнеше процедура жә не функция пайдаланылуы мү мкін.

Процедуралар.

Кез-келген процедура программағ а ұ қ сас тү рде жазылады. Олардың басы, бейнелеу жә не операторлық бө ліктері болады.

Procedure аты (формальды параметрлер тізімі);

Бейнелеу бө лігі;

Begin

Операторлар бө лігі

End;

Процедуралар.

Кез-келген процедура программағ а ұ қ сас тү рде жазылады. Олардың басы, бейнелеу жә не операторлық бө ліктері болады.

Procedure аты (формальды параметрлер тізімі);

Бейнелеу бө лігі;

Begin

Операторлар бө лігі

End;

Басқ а тілдер тә різді Паскаль тілінде де функцияны арнайы программа ретінде жеке жазуғ а болады. Сондық тан оны кө мекші программа ретінде қ арастырамыз.

Функцияның процедурадан ерекшелігі мынада:

функция бір ғ ана белгілі мә н қ абылдайды, яғ ни функциядан алынатын нә тиже біреу-ақ.

Нә тиже функция аты арқ ылы алынады да, негізгі программада пайдаланылады.

Функцияның жазылу тү рі:

Function аты (формальды параметрлер): тип;

Бейнелеу бө лігі

Begin

Операторлар бө лігі

End;

Функция ө з аты арқ ылы шақ ырылады. Сонымен қ атар функцияны тікелей ө рнектің ішінде шақ ыруғ а болады.

20. Рекурсия. Рекурсивті алгоритмдер

Программалау барысында ішкі программаның ө зін ө зі шақ ыруы рекурсия деп аталады. Рекурсия тура немесе жанама тү рде болуы мү мкін.

Рекурсия терең дігі дегеніміз – функция мә нін есептеуде ө зін-ө зі шақ ыру саны.

Рекурсивті программалау стек принципіне сү йенеді.

Рекурсия тү рлері мынадай:

· сызық тық рекурсия;

· параллель рекурсия;

· қ осалқ ы рекурсия;

· жоғ ары ретті рекурсия.

21.Локальды жә не глобальды идентификаторлар(айнымалылар)

Негізгі программада бейнеленген атау, негізгі жә не ішкі программада да пайдаланыла алады. Мұ ндай атаулар ортақ (глобальды) атаулар. Ішкі программада бейнеленген атаулар тек сол ішкі программада ғ ана пайдаланылады. Мұ ндай атауларды жергілікті (локальды) атаулар дейді.

 






© 2023 :: MyLektsii.ru :: Мои Лекции
Все материалы представленные на сайте исключительно с целью ознакомления читателями и не преследуют коммерческих целей или нарушение авторских прав.
Копирование текстов разрешено только с указанием индексируемой ссылки на источник.