Ақпаратты компьютердің сыртқы құрылғыларында көрсету. Файлдармен жұмыс істеу.
жоспары:
1. Берiлгендер файлы
2.Тiзбектi ену файлымен жұмыс
3. Еркiн ену файлы
Негізгі ұғымдардың сөздігі: файлдар, жазу өрістері, көрсеткіш, REWRITE, WRITE,
CLOSE.
Студенттерде қалыптасу керек білім мен дағды: файл компоненттерін, түрлерін,файлдың бір өлшемді массивтерден айырмашылығын меңгеру.
1. Берiлгендер файлы
Бейсиктегi сияқты, Паскальда ерекше орын алатын берiлгендер файлы - жазулардан тұратын элементтер тiзбегi. Жазулар санын файлдың ұзындығы деп атайды, оны алдын ала анықтап қою мiндеттi емес. Мысалы, мынадай мәлiметтiк тiзiмдi қарастырайық.
Т i з i м
1011 Имантайұлы Оспан 1975 қазақ
1012 Ысқақұлы Камардiн 1974 қазақ
1013 Шәймерденқызы Гүлнар 1976 қазақ
Тiзiм - үш жазудан құралған берiлгендер файлы, жазу-
файлдың төрт өрiстен тұратын бiр элементi (бiрiншi өрiс үшiн студент шифры алынған, өрiстер төрт бағанға орналасқан). Кұрылымы:
Студент (шифры, аты-жөнi, туған жылы, ұлты)
Файл типiн сипаттау үлгiсi мынадай:
type <тип атауы>=file of <элементтер типi>;
var <айнымалы атауы> : <тип атауы>;
Мұндағы file (қатар, тiгiндi), of (тиiстi) -қызметшi сөздер. Тип және айнымалы атауларын пайдалануға ыңғайлы етiп, түсiнiктi түрде таңдап алған жөн. Мысалы, жоғарыда қарастырылған мәлiметтiк тiзiмнен тұратын файлды мынадай түрде сипаттау мүмкiн :
type student=file of record a1: integer;
a2: string[17];
a3: integer; a4: string[5]
end;
var v : student;
(student-файл типiнiң атауы; record, end-жазуды анықтайтын синтаксистiк шектеулер, v - student типтi айнымалы, a1, a2, a3, a4 - атрибут атаулары). Сипаттаудың екiншi түрi:
type student = record a1:integer;
a2:string[17]; a3:integer;
a4:string[5]
end;
var f : file of student; v : student;
Мұндағы student - жазу типiне берiлген атау; f - элемент-
терi сипатталған жазулардан тұратын файлды, v-осы жазуларды анықтайтын айнымалылар.
Жазу өрiстерi нүкте арқылы бөлiнген жазу мен атрибут
атауларынан тұрады: v.a1, v.a2, v.a3, v.a4
Сипаттаудың соңғы түрi есте тезiрек сақталатыны белгiлi. Бұдан әрi бiз де сипаттаудың осы түрiн пайдаланамыз.
Жоғарыдағы сипаттаудан түрлi жазулардың және олардың
өрiстерiнiң мәндерi кезегiмен бiрдей айнымалыларға меншiк-телетiнi көрiнiп тұр. Оларды компьютердiң ажырату түрi мынадай:
Жадқа файлдың әр элементiн (v) көрсеткiш деп аталатын магниттiк бүршiк жазады да, к-элементтi жазуды аяқтаған кезде ол автоматты түрде (k+1 )- элемент жазылатын орынға жылжиды.
Файл элементтерiн дискiге жазудағы ерекшелiктердiң бiрi-олар 0-ден бастап ретiмен автоматты түрде нөмiрленiп қо-йылуы. Файлды жадқа тиеудi файлды жазу деп, сыртқы құ-рылғыдан оны мәшиненiң жадына ендiрудi файлды оқу деп атайды. Файл элементтерiн жазу мен оқу әр жолы көрсеткiш тұрған элементтен басталады.
Файлды жазу, оқу операторларымен таныстыру алдында мынадай белгiлеулер енгiзейiк:
f - файлдық айнымалы,
bf - берiлгендер файлының атауы меншiктелетiн айныма- лы (мысалы,ңВ19ңатауы берiлген файл үшiн bf := 'B19'),
v - файлдық элементтер (жазулар), v.a1, v.a2, v.a3, v.a4 -
өрiстiк айнымалылар (нақты жағдайда өрiстер саны 4-тен аз не көп те болуы мүмкiн).
Турбо Паскальда файлды жазу үшiн мынадай операторлар пайдаланылады:
ASSIGN (f, bf)- bf файлына f атауын беру (assign-тағайын-
дау). Ол bf -тiң мәнiн f айнымалысына меншiктейдi де, одан әрi осы айнымалымен жұмыс bf мәнiмен анықталған файл жұмысына баламалы болады (компьютер f - тi саны белгiсiз элементтерден тұратын БФ-тiң атауы деп қабылдайды. Ол мә-шиненiң элементер санын алдын ала бiлiп алуының қажет-сiздiгiне байланысты. Оның үстiне, бұл тәсiл бiр программа бойынша түрлi БФ-тi өңдеуге мүмкiндiк бередi);
REWRITE(f)-атауы assign операторында анықталған файлды жазу үшiн дискiлiк файлды ашу (rewrite-жаңадан жазу). Ол БФ үшiн дискiден арнайы орын бөледi де, көрсеткiштi (бас-тиектi) осы орынның басына орналастырады.
Ескерту. Егер сыртқы құрылғыда таңдап алынған атаулы
басқа БФ бұрыннан жазулы болса, rewrite (f) операторын оқы-ған соң компьютер алдымен оны өшiрiп тастайды. Сондықтан жаңадан жазылатын файлға берiлетiн атауды мұқияттықпен таңдап алу керек;
WRITE (f,v) - f арқылы белгiленген дискiлiк файлға v элементiн жазу. Ол элементтi бастиек тұрған орыннан бастап жазып шығады да, оператор орындалған соң бастиек келесi элемент жазылатын орынның басына ауысады;
CLOSE (f) - файлды жабу (close - жабу).
Программаға while true do циклi ендiрiлген; Шифр-? сұрағына жауап ретiнде 100 саны жадқа енгiзiлгенше бұл цикл қайталанып орындала бередi. Әр қайталану алдында write (f,v) операторы кезектi жазуды дискiлiк файлға тиеп отырады да, 100 саны жадқа ендiрiлген кезде IF шартты өту операторы орындалып, close (f) операторы дискiлiк файлды жабады. Осы-дан соң кездескен halt нұсқауы программаның әрi қарай орындалуын тоқтатып, басқаруды программалау жүйесiне қайтарып бередi.
Жадқа соңғы рет ендiрiлетiн 0 саны-программадан шығу белгiсi. Белгiнi басқа өрiс элементтерiне сәйкестендiрiп алу да ықтимал екенi белгiлi.
2. Тiзбектi ену файлымен жұмыс
А. Дискiде жазулы берiлгендер файлын сыртқы файл деп, дискiде файл жазылатын орынды дискiлiк файл деп те атайды, файлды оқып, экранға шығару үшiн пайдаланылатын операторлар:
ASSIGN(f, bf) - bf файлына f атауын меншiктеу;
RESET(f) - атауы f арқылы берiлген сыртқы файлды ашып, көрсеткiштi осы файлдың басына орналастыру (reset- қайта орнату);
WHILE NOT EOF(f) DO - көрсеткiш файлдың соңына жеткенге дейiн орындау циклi. (EOF - көрсеткiштiң файл соңына жетуiн тексеретiн стандартты функция (end of file-файл соңы). Егер көрсеткiш файлдың соңғы элементiнен ендi асса, eof мәнi - true, әйтпесе - false.);
READ (f, v) - файлды оқу. Атауы f арқылы белгiленген файлдың бiр элементiн (v.a1, v.a2, v.a3, v.a4) дискiлiк файлдан оқу. Оператор орындалып болған соң көрсеткiш келесi элементтiң басына ауысады;
Write (v.a1, ' ', v.a2, ' ', v.a3, ' ', v.a4) - файл элементiн экранға шығару. Әдетте бұл оператордың параметрлерiне арнайы орындар бөлiп, файлды экранға оқуға ыңғайлы түрде шығарады, мысалы, v.a1:6, v.a2:18,... String типтi айнымалы мәнiн бағанның сол жағынан бастап шығарған дұрыс. Ол үшiн v.a2:18 параметрiнiң орнына
' ', v.a2, ' ':18-length(v.a2)
параметрлерiн алса болғаны. Бұл кезде адамның аты-жөнi енiне 18 символ сиятын бағанның сол жағынан бастап орналастырылады да, ' ' : 18-lеngth (v.a2) параметрi артық қалған жердi бос тастап кетедi.
Файлды оқу мен оны экранға шығару циклiне read (f,v), write (v.a1,...) операторларының енгiзiлуi тиiс. With v do операторын пайдаланып, write операторының параметрлерiне v. қосымшасын енгiзбеуге де болады.
3. Еркiн ену файлы
Турбо Паскальда f сыртқы файлы жазуларының саны Filesize(f) функциясы арқылы анықталады. Жазуды бiрден iз-деп табу үшiн пайдаланылатын оператор: seek (f, k-1). Ол көрсеткiштi к - жазудың басына орналастырады (seek (iз-деу)- стандартты атау). (Дискiде файл жазулары 0 -ден бастап ретiмен нөмiрленетiндiктен, к - жазудың нөмiрi к-1 санына тең. Мысалы, сыртқы файлдың 3-жазуын оқу үшiн програм-маға seek(f, 2) операторының енгiзiлуi тиiс.)
Сыртқы файл жазуларына осы сияқты тездеп жету тәсiлi файлға еркiн (тiкелей) ену тәсiлi деп, файлдың өзiн еркiн ену файлы деп атайтыны белгiлi.
Үш жазудан тұратын жоғарыда берiлген мәлi-
меттiк тiзiмдi 1719 атауы бойынша дискiге тиеу керек
(bf := '1719').
Program f1; (1)
{файл құру}
type student = record a1 : integer;
a2:string[17]; a3:integer;
a4:string[5]
end;
var f : file of student; v : student; bf : string[8];
begin write('Жазылатын файл атауы -?'); readln(bf);
assign (f,bf); rewrite (f);
with v do
while true do
begin writeln ('шифр үшiн');
writeln('0-дi ендiру-прог.дан шығу')
write('шифр-?'); readln(a1);
if a1=0 then begin close(f); halt end;
write('аты-жөнi-?'); readln(a2);
write('туған жылы-?'); readln(a3);
write('ұлты-?); readln(a4);
write(f,v)
end {while}
end. {программа соңы}
Программаның орындалу барысында бiрiншi рет экранда «Жазылатын файл атауы-?» сұрағы көрiнедi. Оған жауап ретiнде 1719 атауын клавиатурадан терiп алып, жадқа ендiру керек.
'1719' файлын оқып, оны экранға шығару программасын құру керек (bf:='1719').
Program f2; (2)
{файлды оқып, экранға шығару}
type ... {(1)-программадағыдай}
var ... {(1)-программадағыдай}
begin write ('Сыртқы файл атауы -?'); readln (bf);
assign (f,bf); reset(f); writeln;
write(' ':10, bf, '-топ студенттерi'); writeln;
with v do
while not еof(f) do
begin read(f,v);
writeln(a1:6, ' ', a2, ' ':18-length(a2), a3:5, a4:6)
end; close(f)
end.
Б. Таңдап алынған белгi бойынша файлдың бiр элементiн экранға шығаруды тiзбектi ену және еркiн ену тәсiлдерi бойынша орындау мүмкiн.
Тiзбектi ену тәсiлi бойынша 1719 атаулы сыртқы файлдың бiрiншi өрiс мәнi b-ға тең болатын жазуын экранға шығару керек (белгi үшiн b=1012 алынсын).
Program f3; (3)
{файл жазуын экранға шығару}
type ... {(1)-программадағыдай}
var b:integer; ... {(1)-программадағыдай}
begin write('сыртқы файл атауы -?'); readln(bf);
assign(f,bf); reset(f);
writeln('экранға шығарылатын жазудың');
write('1- өрiс мәнi -?'); readln(b);
with v do
while not eof(f) do
begin read(f,v);
if a1=b then begin
write (a1:6, ' ', a2 , ' ':18-length(a2),
a3:5, a4:6);
close(f); halt end
end;
write('Ондай жазу табылған жоқ');
close(f)
end.
Бұл программа да (2)-программа сияқты құрылған. Оның соңындағы write ('Ондай жазу табылған жоқ') операторы компьютер оқылған жазулардың iшiнен b белгiсi бар жазуды таппаған кезде орындалады.
(1)-(2) программаларды бiрiктiрiп, бiр программа түрiнде жазған дұрыс. Ол үшiн құрылған программалардың әрқайсысын көмекшi программа - процедура түрiне өзгертiп жазса болғаны.
Программа:
Program tizim1; (4)
uses crt;
type student = record a1:integer; a2:string[17];
a3:integer; a4:string[5];
end;
өar f : file of student; v : student;
bf : string[8]; b,m,r : integer;
Procedure kuru; {файл қғру}
begin assign(f,bf); rewrite(f);
with v do
while true do
begin writeln ('шифр үшiн');
writeln ('100-дi ендiру-проц.дан шығу');
write ('шифр -?') ; readln (a1);
if a1 = 0 then begin
close (f); exit end;
write ('аты - жөнi-?'); readln (a2);
write ('туған жылы -?'); readln (a3);
write ('ғлты -?'); readln(a4);
write (f,v)
end
end; {процедура соңы}
Procedure ekran; {файлды оқып, экранға шығару}
begin assign(f,bf); reset(f); writeln;
write(' ':10, bf, '-топ студенттерi');
writeln;
with v do
while not eof(f) do
begin read(f,v);
write(a1:6,' ',a2,' ':18-length(a2));
writeln(a3:5,a4:6)
end; close(f)
end; {процедура соңы}
Procedure jazu;
{таңдап алынған белгi бойынша жазуды экранға шығару}
begin assign(f,bf); reset(f);
writeln('экранға шығарылатын жазудың');
write(' 1-өрiс мәнi-?') ; readln(b);
with v do
while not eof (f) do
begin read(f,v);
if a1=b then begin
write (a1:6,a2:18,a3:5,a4:6);
close (f); exit end
end;
writeln ('Ондай жазу табылған жоқ');
close (f)
end; {процедура соңы}
begin clrscr; {негiзгi программа}
while true do
begin writeln;
write('Жазылатын не оқылатын БФ атауы : bf-?');
readln (bf); writeln; writeln;
writeln ('1: файл құру');
writeln ('2: файлды экранға шығару');
writeln ('3: файл жазуын көру');
writeln ('4: программадан шығу'); writeln;
write ('Кай режим керек : m -?');
readln (m); writeln; clrscr;
Case m of
1 : kuru;
2 : ekran;
3 : jazu;
4 : halt
end {case}
end {while}
end. {программа соңы}
4-мысал. В10 тобы студенттерiнiң математика, физика,информатика пәндерiнен алған бағалары жинақталып көрсетiлген тiзiмге мынадай өңдеу жұмыстарын жүргiзу керек:
1) студенттердiң аты-жөндерiн бiрiншi әрiптерi бойынша реттеп дискiге жазу;
2) дискiден осы файлды оқып, экранда көрсету;
3) математика және информатика пәндерiнен 5 алған студенттер тiзiмiн экранға шығару;
4) файлды қағазға басу (bf:='B10').
Тiзiм
Нұрғалиқызы Жәмилә 5 4 5
Бахытжанұлы Жәнiбек 5 5 5
Мұратбекқызы Шолпан 4 5 5
Файл құрылымы:
Студент2 (аты-жөнi, мат.бағасы, физ.бағасы, инф.бағасы)
Тiзiм жолдарын студенттердiң аты-жөнi бойынша реттеу мәшине жадында жүргiзiлетiндiктен, әр бағандық өрiс мәндерi массив элементтерi түрiнде қарастырылуы тиiс.
Студенттердiң саны белгiлi деп құрылған программа:
Program tizim2; (5)
uses crt, printer;
const n1=50;
type student2 = record
a1:array[1..n1] of string[20]
a2:array[1..n1] of integer;
a3:array[1..n1] of integer;
a4:array[1..n1] of integer
end;
student3 = record
c1:array[1..n1] of string[20];
c2:array[1..n1] of integer;
c3:array[1..n1] of integer;
c4:array[1..n1] of integer;
end;
var f1:file of student2; f2:file of student3;
v1: student2; v2: student3; bf: string[6];
b1 : string[30]; r,k,j,i,n,m : integer;
procedure kuru; {файл элементт.реттеп жазу}
begin assign(f1,bf); rewrite(f1);
with v2 do
for k := 1 to n do
begin
write ('аты-жөнi-?'); readln (c1[k]);
write ('мат.бағасы-?');readln (c2[k]);
write ('физ.бағасы-?');readln (c3[k]);
write ('инф.бағасы-?');readln (c4[k])
end; i:=0 ;
b1:='АӘБВГFДЕЖЗИЙККЛМНҢОӨПРСТУФХЦЧШЩЫЬЭЮЯ';
L=Length (b1);
for j:=1 to L do for k:=1 to n do
begin
if copy (v2.c1[k],1,1)=copy (b1,j,1) then
begin i:=i+1; v1.a1[i]:=v2.c1[k];
v1.a2[i]:=v2.c2[k];
v1.a3[i]:=v2.c3[k]; v1.a4[i]:=v2.c4[k];
write (f1,v1)
end
end; close (f1)
end;
procedure ekran; {файлды экранға шығару}
begin assign(f1,bf); reset(f1);
with v1 do
for k:=1 to n do
begin read (f1,v1);
write (a1[k],' ':21-length(a1[k]));
writeln(a2[k]:5, a3[k]:5, a4[k]:5)
end; close (f1)
end;
procedure jazular; {таңдап алынған белгi бойынша}
{жазуларды экранға шығару }
begin assign (f1,bf); reset (f1); r:=0;
with v1 do
for k:=1 to n do begin read(f1,v1);
if (a2[k]=5) and (a4[k]=5) then
begin r := r+1;
write (a1[k], ' ':21 -length(a1[k]));
writeln (a2[k]:5, a3[k]:5, a4[k]:5)
end end;
if r=0 then begin
writeln ('Ондай жазу табылған жоқ.'); close (f1);
end
end;
procedure prbasu; {файлды принтерде басу}
begin assign (f1,bf); reset (f1);
writeln (lst,' ':10,bf,'-топ студенттерi');
writeln(lst); with v1 do
for k:=1 to n do
begin read (f1,v1);
write(lst, a1[k], ' ':21-length(a1[k]));
writeln(lst, a2[k]:5 , a3[k]:5, a4[k]:5)
end
end;
begin clrscr; {негiзгi программа}
while true do
begin writeln;
write ('Жазылатын не оқылатын файл атауы-?');
readln (bf); writeln;
write ('Студенттер саны:n=?'); readln (n);
writeln ('1:файл құру');
writeln ('2:файлды экранға шығару');
writeln ('3:белгi бойынша файл жазуларын көру');
writeln ('4:файлды қағазға басу');
writeln ('5:программадан шығу'); writeln;
write ('Кай режим керек :m=?'); readln(m);
writeln; clrscr;
case m of
1: kuru;
2: ekran;
3: jazular;
4: prbasu;
5: halt
end {case}
end {while}
end. {программа соңы}
Турбо Паскальдағы PRINTER - стандартты модуль (кiтапхана) атауы. (Бұл модульде принтерде басуды бiлдiретiн LST файлдық айнымалысы орналастырылған). Uses printer- printer модулiн пайдалану, prbasu процедурасына енген параметрсiз writeln (Lst) қағазда бiр жолды тастап кету нұсқаулары.
4-мысалда берiлген тiзiм kuru процедурасы бойынша student3 файлы түрiнде жадқа ендiрiледi де, ол тiзiмдi студенттердiң аты-жөндерi бойынша реттеу үшiн пайдаланылады. Реттелген жолдар дискiге student2 файлының элементтерi ретiнде тиеледi.
Ескерту. Jazular процедурасы бойынша сыртқы файлдың a2[k]=5 және a4[k]=5 белгiсi бар жазулары экранға шығарылады. Белгiнi басқа түрде алу қажет болса, процедураға енген if операторын сәйкес түрде өзгертiп алса болғаны.
Тапсырма
1.Студенттер саны кез келген сан болатын жағдай үшiн (5)-программаны қайта құрып шығыңыз.
2.(4)-программаға prbasu (файлды басып шығару) процедурасын енгiзiңiз.
қарастырылған тiзiмнен тұратын '1719'
атаулы файл дискiде жазулы. Осы файлға мынадай өңдеу жұмыстарын жүргiзу керек:
1) екiншi жазуын
1012 Тассейiтұлы Айтжан 1976 қазақ жазуына өзгерту;
2) файл соңына (4-жазу етiп)
1014 Нұрланқызы Маржан 1977 қазақ жазуын қосу;
3) үшiншi жазудың төртiншi өрiсiнiң мәнiн өзбек деп жөндеу.
өңдеу жұмысына (4) - программаны пайдалануға болады, тек оның jazu атты процедурасын мынадай етiп өзгертiп алса болғаны:
Procedure jazu; (6)
{Файл жазуын экранға шығару, өңдеу}
{ не файл соңына кезектi жаңа жазу қосу}
begin assign (f,bf); reset (f);
n:=filesize (f);
write ('Файл жазуларының саны=',n); writeln;
writeln ('Файлға жазу қосу керек болса,');
write ('К үшiн 'n+1' саны ендiрiлуi тиiс!');
write ('Қажеттi жазу нөмiрi : k-?'); readln (k);
seek (f, k-1); read(f, v);
with v do
begin writeln;
writeln (a1:6, ' ', a2:18, a3:5, a4:6); writeln;
writeln ('Жазу экранға шықса, онда');
writeln ('жөнделетiн өрiстердi өзгертiп ендiрiңiз,');
writeln ('қалған өрiстердi өзгерiссiз қайта ендiрiңiз');
writeln ('Файлға жазу қосу үшiн k саны ендiрiлген болса,');
writeln ('берiлген сұрақтарға жауап берiп, КК клавишiн басыңыз);
writeln;
write ('шифры-? '); readln (a1);
write ('аты - жөнi-?'); readln (a2);
write ('туған жылы -?'); readln (a3);
write ('ұлты-?'); readln (a4);
seek (f,k-1); write (f,v)
end;
close(f)
end;
Read(f, v) операторы орындалған соң көрсеткiш келесi жазудың басына барып тоқтайды. Cондықтан жазу экранға шығарылғаннан кейiн, оның кейбiріне барлық элементтерiн өзгертiп, бұрынғы орнына қайта жазу үшiн көрсеткiштi cол жердiң басына қайтып әкелу керек. (6) - процедураға енген екiншi seek операторы осы жұмысты атқарады.
Ескерту. 1. (6)-процедура бойынша жазудың кейбiр өрiстiк мәндерiн өзгерту қажет болса, өзгерiссiз қалдырылуға тиiс мәндердi де клавиатурадан қайта терiп, жадқа ендiрiп отыру керек. Әйтпесе олар дискiге жазылмай өшiп қалады.
2. Көрсеткiштi файл соңына орналастыру үшiн Seek(filesize(f)) операторын пайдалану да мүмкiн.
Әдебиеттер
1. Н.С. Заурбеков, Б.Ж.Жумажанов. Алгоритмдеу және программалау тілдері. Экономика баспасы. Алматы-2008.
2. Ж.Қ. Масанов, Б.А.Белгибаев, А.С.Бижанова, Қ.Қ.Мақұлов «Turbo Pascal». Алматы 2004.
3. Фаронов В.В. Тurbo Pascal 7.0. Практика программирования. Оку құралы.- М.: Нолидж, 2000ж. 416 бет.
Жарияланған-2014-06-03 21:24:33 Қаралды-2279
КЕМПРҚОСАҚ ДЕГЕНІМІЗ НЕ?

Адамдар бұл ең әдемі табиғат құбылысының табиғаты туралы бұрыннан қызықтырды.
- Информатика
- Қазақстан тарихы
- Математика, Геометрия
- Қазақ әдебиеті
- Қазақ тілі, әдебиет, іс қағаздарын жүргізу
- География, Экономикалық география, Геология, Геодезия
- Биология, Валеология, Зоология, Анатомия
- Әлеуметтану, Саясаттану
- Астрономия
- Ән, Мәдениет, Өнер
- Қаржы, салық және салық салу, банк ісі, ақша несие және қаржы
- Қоршаған ортаны қорғау, Экология
- Мәдениеттану
- ОБЖ
- Психология, Педагогика
- Тіл ғылымы, Филология
- Философия
- Физика, Химия
- Стандарттау және сертификаттау
- Спорт
- Автоматтандыру
- Аудит
- Ауыл шаруашылығы
- Биотехнология
- Бухгалтерлік есеп
- Журналистика
- Кедендік іс
- Құқық, Қоғам, Криминалистика
- Менеджмент, Маркетинг, Мемлекетті басқару
- Өндіріс, Өнеркәсіп, Құрылыс, Мұнай-газ, Электротехника
- Туризм
- Халықаралық қатынастар
- Экономика, макроэкономика, микроэкономика
- шет тілі
- Ауыл шаруашылық
- Медицина