Автор работы: Пользователь скрыл имя, 23 Декабря 2011 в 06:17, курсовая работа
Қазақстан Республикасындағы білімді ақпараттандыру жүйесі ары қарай дамыту процесін оқып үйренудің ақпараттық ресурсы болып табылатын оқытуға арналған программалық құралдарды дайындамай жүзеге асыруы мүмкін емес. Олардың атқаратын қызметтерінің ауқымы кең, мысалы, бақылайтын және тест жүргізетін программалар, компьютерлік ойындар, ақпараттық жүйелер, оқыту орталары, электрондық оқулықтар және мультимедиалық программалар.
2.6 Жиымдар (Массивтер)
Мәліметтерді ұйымдастырудың кестелік тәсілі.
Мәліметтерді ұйымдастыру тәсілдерінің кең тараған түрі – кестелік тәсіл. Кестелік мәліметтермен күнде жұмыс істейміз десек, артық болмас. Шахмат турнирінің кестесі, сынып журналы, көбейту кестесі, көрермендер залындағы орындар схемасы – барлығы да мәліметтерді кестелік түрде ұйымдастыру тәсілінің мысалы.
Мысалы, 3-курс білімгерлері Жоғарғы
математика негіздерінен
Сабақтан соң театрға бардық делік. Билетке сәйкес залдағы орныңды қалай табамыз? Алдымен тура жүріп, өз қатарымызды, сонан соң қатар бойымен жылжып керекті орынды табамыз.
Осы мысалдардың ұқсас екені
айтпаса да түсінікті. Топ
Сызықтық және тікөртбұрышты кесте элементтерімен жұмыс істеу үшін оларды бір ережеге сәйкес (жүйелік тәртіппен) белгілеп алу керек. Әдетте кесте элементтерін белгілеуде латын әріптері қолданылады. Кесте жолдарын жоғарыдан төмен қарай, ал бағаналарды солдан оңға қарай белгілеу қабылданған. А сызықтық кестесінің і-орнында тұрған элементі А[i] болып жазылады, ал тіктөртбұрышты Х кестесінің і-ші жолы мен j-ші бағанасының қиылысында орналасқан элемент Х[I,j] болып белгіленеді. Мысалы, төмендегі А кестесінде:
7
4
1
A[1,1]=7, A[2,3]=0, A[1,3]=3, A[2,4]=-3,2.
Программалау тілдерінде
Әртүрлі программалау тілінде
жиымдарды жазу ережесі
Жиым элементтері нөмірленген (индекстелген) айнымалылар болып табылады. Айнымалы аты жиым атымен бірдей болады. Топ білімгерлерінің бойлары жиым түрінде берілсін делік. Сонда R[N] жиымы элементтерінің әрқайсысы үшін ашып жазуға болады: R[N]=[156,162,…,R[i],…, 164], мұндағы индекстер (тік жақша ішінде) жиым элементтері нөмірін анықтайды; R[i] – жиымының і – ші элементі.
Жоғарыдағы мысалда бірөлшемді (сызықтық) жиым берілген. Екіөлшемді жиымның мысалы ретінде көбейту кестесін натурал T[1..9,1..9] қарастыруға болады. Оның әрбір элементі T[I,j] индекстерінің көбейтіндісіне тең болады. Екіөлшемді жиым индекстері оның әрбір элементтерінің кесте ішінде орналасуын көрсетеді: і- жол нөмірі, j-бағана нөмірі. Алгоритмдік тілде ол былай болып жазылады: кесте бүтін G[I:N].
Төмендегі кесте алты
№ | Фамилиясы
F[I:N] |
Туған жылы
G[I:N] |
Бойы
R[I:N] |
Салмағы
W[I:N] |
Спорт
S[I:N] |
1 | Боранова | 1992 | 156 | 52,2 | 0 |
2 | Байжанов | 1991 | 162 | 61,5 | 1 |
... | … | … | … | … | … |
N | Сармантаева | 1991 | 164 | 59,4 | 0 |
Бірінші жиым – тізімдегі
Екіншісі – білімгердің аты-жөні – литерлік (символыдық, жолдық) шамалар жиымы лит F[1:N].
Үшінші, төртінші жиымдар – туған жылы мен бойларының ұзындығы – бүтін сандар жиымы бүтін G[1:N] және бүт R[1:N].
Бесінші жиым – білімгерлер салмағы – нақты сандар жиымы нақ W[1:N].
Соңғы, алтыншы жиым – олар айналысатын спорт түрі. Бұл логикалық шамалар жиымы, лог S[1:N].
Кесте жолдарында берілген мәліметтер-жазба болып табылады. Мысалы, кестенің екінші жолының жазбасы мынадай:
Нат N[2], лит F[2], бүт G[2] бүт R[2] нақ W[2] лог S[2]
Ол мына мәліметке сәйкес келеді.
2, Байжанов, 1991, 162, 61,5, 1;
Паскаль тілінде мәліметтер қарапайым және күрделі типтерге жіктеледі.
Қарапайым типтерге – стандартты деп саналатын және шектеулі типтегі мәліметтер, ал күрделі типтерге жиымдар (массивтер), жиындар (множества), жазбалар (записи) және файлдар жатады. Күрделі типтің ішкі элементтерінің өзі қарапайым немесе құрамды тип те болуы мүмкін.
2.7 Паскаль тіліндегі жиымдар
Жиым-бұл бір атаумен (жиым
идентификаторы) белгіленіп біріктірілген
біртекті элементтер жиыны.
Жиымның жазылу түрі әр тілде әрқалай бола береді. Мысалы, бір топтағы N білімгердің бойларын анықтайтын жиым алгоритмдік тілде бірөлшемді жиыммен былай беріледі: нат R[1:N], N-жиым элементтерінің ең үлкен максималды нөмірі. Бұл жиым паскаль тілінде былай жазылады: R[п].
Тұрмыста тізбектелге сандарды,
кестелердің реттелген
Паскаль тілінде қарапайым
Мысалы, нақты сандардан құрылған төмендегі тізбекті
1.6, 14.9, -5.0, 8.5, 0.46, 2.25, -9.85, 6.27, 5.7, -3.2
бірөлшемді жиым деп, оған А деп атау беруге болады. Жиымның әр элементі жиымның атымен белгіленеді де, тік жақша ішіне оның индексі қойылады, яғни жиым элементтері индекстері бойынша реттеліп жазылады. Математикада жиым вектор түрінде көрсетіледі де, немесе жалпы түрде болып өрнектеледі. Жоғарыдағы жиымда оның элементтері және т.б., тәрізді мәндер қабылдайды. Жиымның кез келген элементін оның реттелген нөмірін, яғни индексін көрсету жолымен пайдалана аламыз. Индекстер нақты типтен басқа кез келген скалярлық (реттелген) тұрақты немесе өрнек күйінде бола береді. Жиым элементтерінің саны оның индекстерінің мәнімен және олардың өзгерту аралығымен анықталады. Жиымды сипаттау үшін array of сөз тіркесі қолданылады.
Оның жазылу пішімі:
type <тип аты>=array[<индекс типі>] of <элемент типі>;
Var <идентификатор,...>:<тип аты>;
мұндағы array (жиым), of (-дан, -ден, -тан, -тен) – түйінді сөздер; [<индекс типі>] – real, integer базалық типтерінен өзге кез келген стандартты тип, яғни индекстің типі ретінде шектеулі саналатын, логикалық және литерлік типтер пайдаланылады; <элемент типі>-құраушылар (элементтер) типі, яғни Паскаль тілінде пайдалануға болатын жиым элементтерінің типі.
Бұдан программа жиым
Жиымның синтаксистік диаграммасы
Мысалы, программада нақты 40 элементтен
тұратын А жиымы
type m=array[1..40] of real;
var a,b,c,d:m;
Мұның артықшылығы –
Жиым типтер бөлігінде
var <идентификатор,...>:array [<индекс типі>] of
Мысалдар:
type
Klass=(K1,K2,K3,K4);
Znak=array[1..255] of char;
Var M1:znak; {Znak типі типтер бөлігінде анықталған}
M2:array[1..60] of integer; {M2 жиымын тікелей сипаттау}
M3:array[1..4] of Klass;
Mas:array[1..4] of integer;
Lit:array[char] of real;
org:array[5..15] of char;
Bol:array[Boolean] of integer;
A:array[1..5] of real;
Aj:array[қаңтар,...,
Бірөлшемді жиымды көбінесе сызықты жиым дейді, оларды тип бөлігінде сипаттаудың тағы да бірнеше мысалын қарастырайық.
Type S1=array[1..N] of real;
S2=array[1..M] of integer;
S3=array[1..K] of char;
S4=array[0..20] of Boolean;
Var A,B:S1;
L,G:S4;
C:S2;
D:S3;
Жиымды сипаттағанда индекстің
үлкен мәні үшін кез келген
(255-тен артпайтын) санды
Индекс типі стандартты, бүтін немесе нақты бола алмайды. Сондықтан, сипаттауды былай жазуға болмайды:
Var A:array[5] of real;
немесе
Var A:array[integer] of real;
Егер бірнеше жиым бірдей базалық және индекстік типте болса, онда оларды жиым ретінде сипаттағанда үтір арқылы бөліп жазуға болады:
Var A,B,C:array[1..10] of real;
Мұнда А,В,С – жиымдар, олар нақты типтегі 10 саннан (элементтен) тұрады.