C++ proqramlaşdırma dili



Yüklə 362.54 Kb.
Pdf просмотр
səhifə1/10
tarix23.02.2020
ölçüsü362.54 Kb.
  1   2   3   4   5   6   7   8   9   10

C++ proqramlaşdırma dili

hm d Sadıxov

Ə

ə

3 – cü buraxılış 



10.02.2013

Önsöz

C++ proqramlaşdırma dili kitabının 3-cü buraxılışında hamınızı xoş gördük. Bu d rslik C+

ə

+ proqramlaşdırma dilini tam başlanğıcdan, heç bir proqramlaşdırma biliyi olmayan 



s viyy d n orta t crüb li s viyy y  q d r s rb st örg n nl r üçün n z rd  tutulub. 3 

ə

ə ə



ə

ə

ə



ə ə ə ə ə ə

ə ə ə


ə ə ə

-cü buraxılış  vv lki buraxılışlardan m zmun, struktur v.b. m s l l r  gör  ciddi 

ə ə

ə

ə ə ə ə ə



ə

f rql nir. Bir çox başlıqlar dem k olar ki, t mamil  yenid n işl nib. 

ə ə

ə

ə



ə

ə

ə



C++ dilinin örg nilm sini ç tinl şdir n  n  sas amil göst ricil rdir. Dig r C++ 

ə

ə



ə

ə

ə ə ə



ə

ə

ə



d rslikl rind  v  bu d rsliyin  vv lki buraxılışlarında göst ricil r mövzusu d rsliyin 

ə

ə



ə ə

ə

ə ə



ə

ə

ə



vv l rind  daxil olunur v  d rslik boyu göst ricil rin dig r proqramlaşdırma elementl ri 

ə ə ə


ə

ə ə


ə

ə

ə



ə

il   laq si paralel izah olunur. Bütün bu is  yeni başlayanlar üçün ciddi ç tinlikl r yaradır.

ə ə

ə

ə



ə

ə

 



Bunları n z r  alıb d rsliyin hazırkı braxlışında aşağıdakı d yişiklikl ri etdik. 

ə ə ə


ə

ə

ə



Göst ricil rl  bağlı bütün m s l l r d rsliyin  sas bölm l rind n t mamil  yığışdırıldı. 

ə

ə ə



ə ə ə ə ə

ə

ə ə



ə ə

ə

Bu mövqenin yeni başlayanlar üçün ilkin proqramlaşdırma t crüb si toplamaqda 



ə

ə

göst ricil rin yaratdığı mane ni aradan qaldırdığı q na tind yik.



ə

ə

ə



ə ə

ə

İlkin proqramlaşdırma t crüb si dedikd  d yiş nl r, operatorlar, c rg l r, s tirl r, strukt 



ə

ə

ə ə



ə ə

ə ə ə


ə ə

tipl r v  sinifl r n z rd  tutulur. Bütün bu anlayışlarla iş t crüb si topldıqdan sonra artıq 

ə ə

ə ə ə ə


ə

ə

orta s viyy li proqramçı öz proqramlaşdırma t crüb sini PHP, JAVA v  dig r bu tipli 



ə

ə

ə



ə

ə

ə



göst rici t l b etm y n dill r istiqam tind  inkişaf etdir  bil r. 

ə

ə ə



ə ə

ə

ə



ə

ə

ə



Göst ricil rl  bağlı bütün m s l l r 9 – cu paraqrafda daxil edilir. Burada göst ricil r, 

ə

ə ə



ə ə ə ə

ə

ə



onların dig r proqramlaşdırma elementl ri il   laq si, göst ricil r üz rind  hesab 

ə

ə



ə ə

ə

ə



ə

ə

ə



m ll ri, göst ricil rin funksiyalarla  lq si v.s. m s l l r tam  traflı izah olunur. Etiraf 

ə ə ə


ə

ə

ə ə



ə ə ə ə

ə

etm liy m ki, göst ricil r hal-hazırda istifad çi proqramlaşdırmasında(m lumatlar bazası,



ə ə

ə

ə



ə

ə

 



web v.s.) dem k olar ki istifad  olunmur v  göst ricil r mövzusunu örg nm k bu halda 

ə

ə



ə

ə

ə



ə

ə

siz  sad c  proqramın yaddaşı il  bağlı mü yy n q d r t crüb  qazandıracaq. Lakin 



ə

ə ə


ə

ə ə


ə ə ə

ə

g l c kd  Unix sisteml rin  keçm k ist y n proqramçılar(sistem proqramlaşdırma) üçün



ə ə ə ə

ə ə


ə

ə ə


 

göst ricil ri örg nm k mütl q vacibdir. 

ə

ə

ə



ə

ə

Bu buraxılışda dig r bir yenilik is  Buta_PM proqramlaşdırma mühitinin hazırlanması 



ə

ə

oldu. C++ v  dig r dill ri örg nm k ist y nl rin  n başlanğıcda qarşılaşdıqları problem 



ə

ə

ə



ə

ə

ə ə ə



ə

düzgün kompilyatorun seçilm si, quraşdırılması v  istifad si problemidir. Bir qayda olaraq

ə

ə

ə



 

yeni başlayan proqramçılar bu m rh l d  t crüb , dil, v.s. probleml r s b bind n hal-

ə ə ə ə ə

ə

ə ə ə



ə

hazırda geniş istifad  olunan v  daha çox peş kar proqramçılar üçün n z rd  tutulmuş 

ə

ə

ə



ə ə ə

kompilyatorların quraşdırılmasında ç tinlik ç kirl r. Bunları n z r  alıb biz yeni 

ə

ə

ə



ə ə ə

başlayanlar üçün Az rbaycan dilind  olan, çox asanlıqla quraşdırılan v  olduqca sad  

ə

ə

ə



ə

istifad çi interfeysin  malik Buta_PM C++ proqramlaşdırma mühitini t rtib etdik. Buta_PM

ə

ə

ə



 

proqramlaşdırma mühitini 



asadikhov.net

 s hif sind n yükl y  bil rsiniz.

ə ə

ə

ə ə



ə

Mü llif hüquqları:

ə

Kitabda daxil olunan materialın v  proqram nümun l rinin sizin hansısa işiniz  

ə

ə ə


ə

yarayacağına mü llif t r find n heç bir t minat verilmir. Bu proqramlardan istifad  

ə

ə ə


ə

ə

ə



n tic sind  yaranan ist nil n ziyana gör  m suliyy ti oxucu özü daşıyır, mü llif heç bir 

ə ə


ə

ə ə


ə ə

ə

ə



m suliyy t daşımır.

ə

ə



Siz bu kitabda daxil olunan material, proqram nümun l ri v  ş kill ri çap etm k, başqa 

ə ə


ə ə ə

ə

ş xs  ötürm k, öz saytınızda yerl şdirm k kimi hüquqlara sahibsiniz.



ə ə

ə

ə



ə

Kitabda veril n m lumatlardan istifad  üçün mü llif  istinad verm k z ruri deyil. 

ə

ə

ə



ə ə

ə

ə



g r sizin C++ proqralaşdırma t crüb niz varsa v  kitabın g l c k versiyalarının 

Ə ə


ə

ə

ə



ə ə ə

hazırlanmasında köm klik göst rm k ist yirsinizs  mü llifl  aşağıdakı ünvandan  laq  

ə

ə ə


ə

ə

ə ə



ə

ə

saxlaya bil rsiniz.



ə

ahmed.sadikhov@gmail.com



Münd ricat

ə

1 Giriş….............................................................................. 5

2 D yiş nl r….................................................................... 17

ə

ə ə



3 Operatorlar….................................................................... 28

4 Funksiyalar….................................................................... 39

5 C rg l r…......................................................................... 45

ə ə ə


6 S tirl r…........................................................................... 49

ə ə


7 Strukt tipl r….................................................................... 53

ə

8 Sinifl r…........................................................................... 55



ə

9 Göst ricil r........................................................................63

ə

ə

10 Makroslar v  başlıq fayllar …......................................... 72



ə

lav l r…............................................................................ 74

Ə

ə ə


$1 Giriş.

Bu m tnd  C++ dilind  proqram t rtibind n b hs olunur. Bu m tnd n istifad  ed  bilm k 

ə

ə

ə



ə

ə

ə



ə

ə

ə



ə

ə

üçün ilkin olaraq heç bir proqramlaşdırma dilini bilm k t l b olunmur.



ə ə ə

H r bir paraqrafın sonunda verilmiş çalışmalar mütl q yerin  yetirilm lidir. Bu siz  

ə

ə

ə



ə

ə

materialı daha da aydın başa düşm y  köm k etm kl  yanaşı, sizd  g l c k inkişaf 



ə ə

ə

ə ə



ə ə ə ə

üçün  v zedilm z olan proqramlaşdırma t crüb si yaradacaq v  artıracaq.

ə ə

ə

ə



ə

ə

Yadda saxlayın ki, proqramlaşdırmanı örg nm nin yegan  yolu ancaq v  ancaq s rb st 



ə

ə

ə



ə

ə ə


proqram yazmaqdır.

Ç tinliyi artırılmış m s l l r * simvolu il  qeyd edilir.

ə

ə ə ə ə


ə

G l c kd  Unix sistem proqramlaşdırmanı örg nm k ist y nl r $9 – Göst ricil r 

ə ə ə ə

ə

ə



ə ə ə

ə

ə



bölm sin  xüsusi il  diqq t yetirm lidirl r.

ə

ə



ə

ə

ə



ə

1.1 Ümumi m nz r y  baxış.

ə ə ə ə

C++ dilinin öyr nilm sin  keçm d n önc   vv lc  ist rdim ki, kompüter ,proqram, 

ə

ə

ə



ə ə

ə ə ə ə


ə

proqramlaşdırma dili kimi m s l l r  bir balaca aydınlıq g tir k. Bugünkü günümüzd  

ə ə ə ə ə

ə ə


ə

kompüterl rin h yatımıza inteqrasiyasının getdikc  daha da gücl ndiyini hiss edirik. 

ə

ə

ə



ə

Kompüterl r dem k olar ki, bizi h r t r fd n  hat  edir. 

ə

ə

ə ə ə ə ə



ə

Kompüterl r  sas n idar etm  işl rind  istifad  olunur. Son d r c  d qiq, s hvsiz v  

ə ə

ə

ə



ə

ə

ə



ə

ə ə ə ə


ə

ə

h dd n artıq sür tli olmaları onların bütün keçmiş r qibl rini durmadan sıxışdırmaqdadır. 



ə ə

ə

ə



ə

n maraqlı m qam is  bu q d r müxt lif işl ri gör n kompüterin  sas istifad  

Ə

ə

ə



ə ə

ə

ə



ə

ə

ə



predmetinin m lumat olmasıdır. Kompüterin h r-hansı bir işi görm si üçün ona lazım olan

ə

ə



ə

 

n  sas şey m lumatdır. 



ə ə

ə

M lumatsız kompüter heç-bir işi yerin  yetir  bilm z. Kompüter bütün işl rini m lumat 



ə

ə

ə



ə

ə

ə



vast sil  h yata keçirir. Bundan  lav  günümüzd  biz  xidm t ed n kompüterl r 

ə ə ə


ə

ə

ə



ə

ə

ə



ə

t kbaşına deyil, ş b k  halında f aliyy t göst rirl r. V  bel  halda m lumat n inki h r-

ə

ə ə ə


ə

ə

ə ə



ə

ə

ə



ə

ə

hansı kompüterin bu v  ya dig r işi yerin  yetirm sini h md , kompüterl rin ş b k  



ə

ə

ə



ə

ə

ə



ə

ə ə ə


vast sil   laq  qurmasını t min edir.

ə ə ə


ə

ə

Kompüterin m lumat üz rind  gördüyü işl rin son n tic sinin kifay t q d r r ngar ng bir



ə

ə

ə



ə

ə ə


ə ə ə ə

ə

 



spektr  hat  etm sin  baxmayaraq , ümumi halda kompüter m lumat üz rind  aşağıdakı

ə

ə



ə

ə

ə



ə

ə

 



işl ri h yata keçirir, bunu h r bir proqramçı  zb r bilm lidir:

ə

ə



ə

ə ə


ə

1) Kompüter m lumatı q bul edir. Kompüter m lumatı istifad çid n, h r-hansı qurğudan 

ə

ə

ə



ə

ə

ə



v  ya ş b k d ki dig r kompüterd n q bul ed  bil r.

ə

ə ə ə ə



ə

ə

ə



ə

ə

2) Kompüter m lumatı emal edir. Kompüter m lumat üz rind  müxt lif çevrilm , axtarış 



ə

ə

ə



ə

ə

ə



v.s.  m liyyatları apara bil r.

ə ə


ə

3) Kompüter m lumatı ötürür. Kompüter m lumatı istifad çiy , h r-hansı qurğuya v  ya 

ə

ə

ə



ə ə

ə

ş b k  vast sil  başqa bir kompüter  ötür  bil r.



ə ə ə

ə ə


ə

ə

ə



4) Kompüter m lumatı yadda saxlayır.

ə

Bütün bu deyil nl rd n is  m ntiqi olaraq aşağıdakı sual yaranır: B s kompüter h r-



ə ə ə

ə ə


ə

ə

hansısa bir m lumat üz rind , konkret hansı  m liyyatın aparılmalı oluğunu nec  



ə

ə

ə



ə ə

ə

mü yy n edir?



ə ə

lb td  ki, heç bir kompüter, heç-bir m lumat üz rind  nec  g ldi, hansısa  m liyyat 

Ə ə ə

ə

ə



ə

ə ə


ə ə

apara bilm z. Bütün bunlar  vv lc d n d qiq ölçülüb-biçilmiş, düşünülmüş, d f l rl  test

ə

ə ə ə ə


ə

ə ə ə ə


 

edilmiş instruksiyalar ardıcıllığı vast sil  h yata keçirilir.

ə ə ə

Bu instruksiyalar ardıcıllığı adlanır PROQRAM v  ya PROQRAM T MİNATI.



ə

Ə


Kompüterin h r-hansı bir işin görülm si üçün t l b olunan instruksiyalar ardıcıllığını t rtib

ə

ə



ə ə

ə

 



etm k is  adlanır proqramlaşdırma. 

ə

ə



Biz dedik ki, kompüterin h r-hansı işi görm si üçün t l b olunan  n  sas şey m lumatdır.

ə

ə



ə ə

ə ə


ə

 

Proqram t minatı da istisna deyil. Y ni proqram t minatı da, başqa sözl  kompüterin 



ə

ə

ə



ə

m lumat üz rind  icra etdiyi instruksiyalar ardıcıllığı da öz növb sind  kompüter üçün bir 

ə

ə

ə



ə

ə

m lumatdır, kompüter  hansı işl ri görm li olduğunu bildirir. Bu nöqteyi n z rd n biz 



ə

ə

ə



ə

ə ə ə


m lumatları iki tip  ayıra bil rik : kompüter instruksiyaları v  istifad çi m lumatları. 

ə

ə



ə

ə

ə



ə

1.2 M lumatın ifad  olunma formaları

ə

ə

Tipind n, növünd n, t yinatından asılı olmayaraq kompüter bütün m lumatları yalnız bir 

ə

ə

ə



ə

gözl  görür - 0 v  1 -l r ardıcıllığı ş klind . Misal üçün 011010101011 kimi verilmiş 

ə

ə

ə



ə

ə

m lumat kompüter üçün h r-hansı  d d, h rif, toplama  m liyyatı, h r-hansı ş klin 



ə

ə

ə ə



ə

ə ə


ə

ə

hansısa bir nöqt sinin r ngi v.s. ola bil r. Başqa sözl  h m kompüter proqramları, h m 



ə

ə

ə



ə ə

ə

d  istifad çi m lumatları kompüterin yaddaşında 0 v  1 -l r ardıcıllığı ş klind  verilir. 



ə

ə

ə



ə

ə

ə



ə

Müasir kompüterd  iki  d din c mini hesablayan proqramın bir hiss sin  n z r salaq:

ə

ə ə


ə

ə

ə ə ə



01110100 11001110 10011110 10110110 

00101110 10000110 01000110 00000000 

01110100 11001110 00101110 01001110 

00101110 10000110 01000110 00000000 

01110100 11001110 00010110 11001110 

00101110 01001110 00101110 10000110 

01000110 00000000 01110100 00101110 

10100110 00011110 00101110 00000000 

01110100 00100110 10000110 00101110

Bu 0 v  1 -l r kompüter prosessoru instruksiyalarının ikili ifad sidir. İlkin vaxtlarda 

ə

ə

ə



kompüter proqramları bu qayda il  t rtib olunurdu. Bu zaman proqramçı kompüterin 

ə ə


m rk zi prosessorunun bütün instruksiyalarının ikili ifad sini  zb rd n bilm li idi. 

ə ə


ə

ə ə ə


ə

lb ttd  görüntüd n d  aydın olduğu kimi bu iş olduqca mür kk b bir prosesdir. S hv 

Ə ə ə

ə

ə



ə ə

ə

etm  ehtimalı h dd n artıq çox olması, proqramın gördüyü işi anlamağın ç tinliyi v.s. 



ə

ə ə


ə

proqramçıları daha asan v  t kmil yollar axarmağa vadar edir. N tic d  proqramçılar 

ə ə

ə ə ə


kompüter instruksiyalarının ikili formalarının özl rinin nisb t n asan başa düşdükl ri 

ə

ə ə



ə

formasından istifad  etm y  başlayırlar. H min forma adlanır assembler. 

ə

ə ə


ə

Misal üçün yuxarıdakı proqramın assembler kodunun bir hiss si aşağıdakı kimi olar:

ə

        movl x, %eax



        movl y, %ebx

        addl %eax, %ebx

        movl %ebx, z

Bu forma proqramçılar üçün ikili formaya nisb t n daha anlaşılan variantdır. Bu zaman 

ə ə

proqramlar assembler dilind  yazılır v  daha sonra xüsusi assemblyasiya proqramları 



ə

ə

vast sil  proqram assembler variantından ikili formaya çevrilir. Proqramın icraolunması 



ə ə

üçün onun ikili formaya çevrilm si mütl qdir, çünki yalnız ikili formada prosessor onu 

ə

ə

başa düş  bil r, assembler forması yalnız proqramçıların özl ri üçündür.



ə

ə

ə



Bir müdd t sonra is  artıq assembler dili d  proqramçılar üçün ç tin g lm y  başladı v  

ə

ə



ə

ə

ə ə ə



ə

proqramçılar 3-cü n sil dil adlandırılan proqramlaşdırma dill rini işl yib hazırladılar. 

ə

ə



ə

Bunlara misal olaraq Paskal, C, C++ v.s. proqramlaşdırma dill rini göst r  bil rik. C 

ə

ə ə


ə

dilind  iki  d din c mi proqramı aşağıdakı kimi olar:

ə

ə ə


ə

  

int

 main(){

  

   



int

 x,y,z;


    x=

10

;



    y=

15

;



    z=x+y;

  

}



Göründüyü kimi bu daha başadüşül n formadır. Proqramların m tni bu cür dill rd  

ə

ə



ə ə

yığıldıqdan sonra kompilyator adlandırılan xüsusi proqramlar vast sil   vv lc  müvafiq 

ə ə ə ə ə

assembler formasına, daha sonra is  ikili formaya çevrilirl r. Bir daha qeyd edim ki, hansı

ə

ə

 



dild  t rtib olunmasından asılı olmayaraq proqramın kompüter t r find n icra edil  

ə ə


ə ə

ə

ə



bilm si üçün onun ikili formaya çevrilm si mütl qdir. 

ə

ə



ə

Ümumi olaraq proqramın kompüter t r find n icra olunan formasına ikili kod, 

ə ə

ə

icraolunabil n kod v  ya obyekt kod deyirl r. Proqramçılar t r find n t rtib v  istifad  



ə

ə

ə



ə ə

ə ə


ə

ə

olunan yüks k s viyy li dild  olan formasına is  proqramın m nb  kodu deyirl r. Biz bu 



ə

ə

ə



ə

ə

ə ə



ə

kitabda yüks k s viyy li dill rd n biri olan v  3-cü n sil proqramlaşdırma dill ri arasında 

ə

ə

ə



ə ə

ə

ə



ə

reytinqi daima yüks kd  olan C++ dili il  tanış olacayıq. 

ə ə

ə

1.3 C++ dili il  ilk tanışlıq.



ə

G lin C++ dilind  ilk sad  proqram nümun si il  tanış olaq:

ə

ə

ə



ə

ə

  



int

 main ()


  {

    


  }

Gördüyünüz bu 3 s tird n ibar t sad  kod bitkin bir kompüter proqram kodudur. Bu 

ə

ə

ə



ə

proqram icra olunduqda heç bir iş görmur, sad c  proqram icraya başlayır v  d rhal başa

ə ə

ə ə


 

çatır. 


İndi is  ikinci proqram nümun si il  tanış olaq. El  proqram t rtib ed k ki, icra olunduqda 

ə

ə



ə

ə

ə



ə

n s  bir iş görsün, misal üçün ekranda “Salam Dunya” s trini çap etsin:

ə ə

ə

  



#include 

  

int



 main ()

  {


  std::cout<<

"Salam dunya 

\n

"

;



    

  }


1.3.1 C++ proqramlarının strukturu

C++ dilind  t rtib olunmuş proqramlar müxt lif funksiyalardan, qarışıq kodlardan, müxt lif

ə ə

ə

ə  



m nb  fayllarında yerl ş n kodlardan, h tta ayrı kompilyasiya olunmuş ikili fayllarda 

ə ə


ə ə

ə

yerl ş n funksiyalardan ibar t olur. Bütün bunlarla biz g l c kd  m şğul olacayıq. 



ə ə

ə

ə ə ə ə ə



H l lik is  (funksiyaları örg n n  kimi) bizim baxacağımız proqramların hamısı aşağıdakı

ə ə


ə

ə ə ə


 

strukturdan ibar t olacaq: 

ə

1)  #include 



2)  int

 main(){


3)  PROQRAM KODU HİSSƏSİ:

4)  }


1) #include 

 s tri daxiletm  direktividir(direktivl ri (10 Makroslar )bölm sind  

ə

ə

ə



ə

ə

örg n c yik). Onun vast sil  proqrama iostream faylı  lav  olunur harada ki, yalnız b zi 



ə ə ə

ə ə


ə

ə

ə



standart funksiyaların elanı yerl şir. Burada icra olunan heç bir kod yerl şdirilm diyind n 

ə

ə



ə

ə

h l lik bizim üçün maraqlı deyil.



ə ə

2) int main (){

 s tri proqramın icraya başalama yeridir. C++ dilind  t rtib olunmuş bütün 

ə

ə ə


proqramlar bu yerd n icra olunmağa başlayır. 

ə

3) 

Proqram Kodu Hiss sind  biz operatorların v  d yiş nl rin köm yi il  proqramın 

ə

ə



ə ə

ə ə


ə

ə

görm li olduğu işi kodlaşdırırıq. Bura ist diyimiz q d r proqram kodu yerl şdir  bil rik v  



ə

ə

ə ə



ə

ə

ə



ə

h min kod  vv ld n sona doğru icra olunacaq. 

ə

ə ə ə


4) } 

möt riz si proqram kodu hiss sinin sonunu bildirir. 

ə ə

ə

1.3.2 C++ proqramlarının icrası



 

Bizim C++ dilind  t rtib etdiyimiz kod, misal üçün 

ə ə

  

#include 



  

int


 main (){

     std::cout<<

"Salam dunya 

\n

"



;

    


  }

kodu proqramın m nb  kodu adlanır. Bu m nb  kodu C++ dilinin sintaksis t l bl rin  

ə ə

ə ə


ə ə ə ə

uyğun yazılmış adi m tndir v  o icra oluna bilm z. Lakin xüsisu sistem proqramlar 

ə

ə

ə



vast sil  biz bu m tnd n icra oluna bil n proqram kodu alırıq. H min xüsusi sistem 

ə ə


ə

ə

ə



ə

proqramlar adlanır kompilyator. Proqramın m nb  kodundan icraolunabil n proqram 

ə ə

ə

kodunun alınması prosesin  is  deyirl r kompilyasiya v  ya proqramın kompilyasiyası. 



ə ə

ə

ə



Dem li biz C++ dilind  t rtib etdiyimiz proqram kodunu icra etm k üçün  vv lc  onu 

ə

ə ə



ə

ə ə ə


kompilyator vast sil  kompilyasiya edib ondan icraolunabil n proqram kodu almalıyıq. 

ə ə


ə

Daha sonra artıq icraoluna bil n proqram kodunu adi proqramları icra etdiyimiz kimi icra 

ə

ed  bil rik (üstünd  2 d f  klik etm kl  v  ya proqramın adını terminaldan daxil 



ə

ə

ə



ə ə

ə ə ə


etm kl ).

ə ə



Поделитесь с Вашими друзьями:
  1   2   3   4   5   6   7   8   9   10


Verilənlər bazası müəlliflik hüququ ilə müdafiə olunur ©www.azkurs.org 2019
rəhbərliyinə müraciət

    Ana səhifə