logo

C va C++ tillari yaratilish tarixi 11v

Загружено в:

08.08.2023

Скачано:

0

Размер:

76 KB
C va C++ tillari yaratilish tarixi
R e j a:
 1.   Ifodalar 
2. Masalaning quyilishi va tahlili
3.  Algoritm  blok - sxemasi
4.   Algoritm dasturiiy kodi va natijalar
Xulosa
Foydalanilgan adabiyotlar Ifodalar
Dastur   biror   bir   aniqlangan   ketma   -   ketlikda   bajariluvchi   komandalar
to'plamidan iborat. .
C++   tilida   ifodalar   biror   bir   hisoblash   natijasini   qaytaruvchi   boshqa   ifodalar
ketma-ketligini boshqaradi yoki hech nima qilmaydi (nol ifodalar).
C++   tilida   barcha   ifodalar   nuqtali   vergul   bilan   yakunlanadi.   Ifodaga   misol
qilib o'zlashtirish amalini olish mumkin.
     x=a+b;
Algebradan farqli ravishda bu ifoda x a+v ga teng ekanligini anglatmaydi. Bu
ifodani quyidagicha tushinish kerak:
a va v o'zgaruvchilarni qiymatlarini yig'ib natijasini  x o'zgaruvchiga beramiz
yoki x o'zgaruvchiga a+v qiymatni o'zlashtiramiz. Bu ifoda birdaniga ikkita amalni
bajaradi,   yig'indini   hisoblaydi   va   natijani   o'zlashtiradi.   Ifodadan   so'ng   nuqtali
vergul  qo'yiladi.  (=)  operatori  o'zidan  chap tomondagi  operandga o'ng tomondagi
operandlar ustida bajarilgan amallar natijasini o'zlashtiradi.
Bo'sh joy (probel) belgisi.
Bo'sh   joy   belgilariga   nafaqat   probel,   balki   yangi   satrga   o'tish   va   tabulyasiya
belgilari   ham   kiradi.   Yuqorida   keltirilgan   ifodani   quyidagicha   ham   yozish
mumkin:
x      = a+ b   ;
Bu variantda keltirilgan ifoda ko'rimsiz va tushunarsiz bo'lsa ham to'g'ridir.
Bo'sh joy belgilari dasturning o'qilishliligini ta'minlaydi. Bloklar va kompleks ifodalar.
Ba'zan  dastur  tushunarli  bo'lishi  uchun o'zaro mantiqiy bog'langan ifodalarni
blok   deb   ataluvchi   komplekslarga   birlashtirish   qulaydir.   Blok   ochiluvchi   figurali
qavs   ({)   bilan   boshlanadi   va   yopiluvchi   figurali   qavs   (})   bilan   tugaydi.   Blok
ochilganda va yopilganda nuqtali vergul qo'yilmaydi.
{
  temp= a;
  a = b;
  b = temp;
}
Bu   blok   xuddi   bir   ifodadek   bajariladi,   u   a   va   v   o'zgaruvchilar   qiymatlarini
almashtiradi.
     
Amallar.
Bajarilishi natijasida biror bir qiymat qaytaradigan barcha ifodalar C++ tilida
amallar deyiladi. Amallar albatta biror bir qiymat qaytaradi. Masalan, 3+2 amali 5
qiymatni qaytaradi.
Operatorlar.
Operator  - bu qandaydir amalni bajarish tug'risida kompilyatorga uzatiladigan
literaldir.   Operatorlar   operandlarga   ta'sir   qiladi.   C++   da   operandlar   deb   alohida
literallar va butun ifodalar tushuniladi.
C++ tilida ikki ko'rinishdagi operatorlar bor:
o'zlashtirish operatorlari
matematik operatorlar
O'zlashtirish operatori . O'zlashtirish   operatori   (=)   o'zidan   chap   tomonda   turgan   operand   qiymatini
tenglik   belgisidan   o'ng   tomondagilarni   hisoblangan   qiymatiga   almashtiradi.
Masalan, 
       x = a+b;
ifodasi   x   operandga   a   va   v   o'zgaruvchilarni   qiymatlarini   qo'shishdan   hosil
bo'lgan natijani o'zlashtiradi.
O'zlashtirish   operatoridan   chapda   joylashgan   operand   adresli   operand   yoki
l–kiymat (chap-chap so'zidan olingan) deyiladi. O'zlashtirish   operatoridan o'ngda
joylashgan operand operasion operand yoki r–kiymat   deyiladi.
O'zgarmaslar   faqatgina   r–kiymat   bo'lishi   mumkin   va   hech   qachon   adresli
operand   bo'la   olmaydi,   chunki   dasturning   bajarilishi   jarayonida   o'zgarmas
qiymatini o'zgartirib bo'lmaydi.
35 = x // notugri!
l–kiymat esa  r–kiymat  bo'lishi mumkin.
Matematik operatorlar .
C++ tilida 5 ta asosiy matematik operatorlar ko'llaniladi: qo'shish (+), ayirish
(-), ko'paytirish (*), butun songa bo'lish (\) va modul bo'yicha bo'lish (%)(qoldiqni
olish).
Ishorasiz butun sonlarni ayirishda, agarda natija manfiy son bo'lsa g'ayrioddiy
natija beradi.
Ayirish natijasida butun sonni to'lib qolishiga misol
# include < iostream.h >
int main()
{
unsiegned int ayirma unsisgned int kattaSon = 100;
unsigned int kichikSon = 50;
ayirma = kattaSon – kichikSon;
cout << “Ayirma“:<< ayirma<< “ ga teng\n”;
ayirma = kichikSon - kattaSon ;
cout << “Ayirma“:<< ayirma<< “ ga teng\n”;
endl;
return 0;
}
NATIJA:
Ayirma: 50 ga teng
Ayirma: 4294967246 ga teng ifodasining   qiymati,   agarda   x   o'zgaruvchisi   5   ga   teng   bo'lmasa   true   qiymat
qaytaradi. Bu ifodani boshqacha ham yozish mumkin:    
if(x!=5)
Masalaning quyilishi va tahlili
2 ta   matrisa   berilgan.   Ularni   o'zaro   ko'paytirib   yangi   matrisa hosil qilish. Bu
erda 1-matrisaning ustunlar soni 2-matrisaning satrlar soniga teng bo'lishi kerak.
Algoritm blok-sxemasi. Algoritm dasturiiy kodi va natijalar
# include <iostream.h> 
# include <conio.h> 
# include <stdlib.h> 
# include <time.h> 
void main ( )  boshlash
kiritish
tamom {  
{ srand ( time (0)); 
int a[3][3], b[3][3],c[3][3], i, j, k; 
cout<<"\n";
cout<<"Hosil bo'lgan yangi matrisa elementlari";
cout<<"\n";
for (i=0; i<3; i++)
for (j=0; j<3; j++)
a[i][j] = rand ( );
for (i=0; i<3; i++)
for (j=0; j<3; j++)
b[i][j] = rand ( );
for (i=0; i<3; i++)
{ for (j=0; j<3; j++)
{  c[i][j] = 0;
cout<<"\n";
for (k=0; k<3; k++)
c[i][j] = c[i][j] + a[i][k]*b[k][j]; 
cout <<"  c="<<c[i][j]<<"\t"; }
cout << endl; }
cout<<"\n";
cout<<"Davom etirish uchun ixtiyoriy klavishni bosing . . ."<<endl;
cout<<"\n";
system("pause");
}
}
Dastur ishga tusirib natija oladigan bo`lsak kompyuter ekranida quyidagini olamiz  XULOSA
Xulosa   qilib   aytganda,   C++   dasturlash   tili   va   unda   o`zgarmaslar,
o`zgaruvchilar toifalari, hamda ifodalar va operatorlar bilan ishlash xaqida umumiy
ma’lumotlarga   ega   bo`ldim.     Borland   C++   Builder   -   Windows   muhitida
ishlaydigan dastur  tuzish  uchun qulay bo`lgan vosita bo`lib, komp’yuterda dastur
yaratish   ishlarini   avtomatlashtiradi,   xatoliklarni   kamaytiradi   va   dastur   tuzuvchi
mehnatini   engillashtiradi.   Borland   C++   dastur   zamonaviy   vizual   loyihalash
texnologiyasi asosida ob`ektga yo`naltirilgan dasturlash nazariyasini hisobga olgan
holda tuziladi. 
Borland   C++   Builder   6   sistemasi   C++   tilining   rivoji   bo`lgan   ob`ektga
yo`naltirilgan   Object   C / C #   dasturlash   tillarini   ishlatadi.   Borland   C++   Builder
sistemasi   dasturni   loyihalash   va   yaratish   vaqtini   kamaytiradi,   hamda   Windows
muhitida ishlovchi dastur ilovalarini tuzish jarayonini osonlashiradi.
Men   C++   dasturi   strukturasi   xaqida,   belgilar   bayoni,   algoritm   va   dastur
tushunchasi,   ma’lumotlarni   kiritish   va   chikarish   operatorlari   xamda   dasturda
ishlatiladigan   toifalar,   ifodalar   va   operatorlar   hamda   sinflar   va   funksiya   bilan
ishlash xaqida bilim va kunikmalarga ega bo`ldim. Foydalanilgan adabiyotlar.
1. Sh.А.Nаzirоv, R.V.Qobulоv «Оb’еktgа mo‘ljаllаngаn dаsturlаsh   »
2. Xaldjigitov   A.A.,   Madraximov   Sh.   F.,   Adambayev   U.E.,   Eshboyev   E.A.,
Informatika va programmalash. T.:O`zMU, 2005, -148.
3. Гради   Буч.   Объектно   –ориентированной   анализ   и     проектирование   с
примерами приложений на С++. Невский диалект, 560 стр, 2001 г. 
4. Грехем И. Объектно ориентированные методы. Принципы и практика.
Вильямс. 879 стр, 2004 г.
5. Иванова Г.С. Объектно ориентированное программирование. Учебник.
МГТУ им Баумана. 320 стр, 2003 г.
6. www.ziyonet.uz
7. www.tuit.uz
8. www.tuit.kf.uz
9. www.referat.uz
10. www.intuit.ru

C va C++ tillari yaratilish tarixi R e j a: 1. Ifodalar 2. Masalaning quyilishi va tahlili 3. Algoritm blok - sxemasi 4. Algoritm dasturiiy kodi va natijalar Xulosa Foydalanilgan adabiyotlar

Ifodalar Dastur biror bir aniqlangan ketma - ketlikda bajariluvchi komandalar to'plamidan iborat. . C++ tilida ifodalar biror bir hisoblash natijasini qaytaruvchi boshqa ifodalar ketma-ketligini boshqaradi yoki hech nima qilmaydi (nol ifodalar). C++ tilida barcha ifodalar nuqtali vergul bilan yakunlanadi. Ifodaga misol qilib o'zlashtirish amalini olish mumkin. x=a+b; Algebradan farqli ravishda bu ifoda x a+v ga teng ekanligini anglatmaydi. Bu ifodani quyidagicha tushinish kerak: a va v o'zgaruvchilarni qiymatlarini yig'ib natijasini x o'zgaruvchiga beramiz yoki x o'zgaruvchiga a+v qiymatni o'zlashtiramiz. Bu ifoda birdaniga ikkita amalni bajaradi, yig'indini hisoblaydi va natijani o'zlashtiradi. Ifodadan so'ng nuqtali vergul qo'yiladi. (=) operatori o'zidan chap tomondagi operandga o'ng tomondagi operandlar ustida bajarilgan amallar natijasini o'zlashtiradi. Bo'sh joy (probel) belgisi. Bo'sh joy belgilariga nafaqat probel, balki yangi satrga o'tish va tabulyasiya belgilari ham kiradi. Yuqorida keltirilgan ifodani quyidagicha ham yozish mumkin: x = a+ b ; Bu variantda keltirilgan ifoda ko'rimsiz va tushunarsiz bo'lsa ham to'g'ridir. Bo'sh joy belgilari dasturning o'qilishliligini ta'minlaydi.

Bloklar va kompleks ifodalar. Ba'zan dastur tushunarli bo'lishi uchun o'zaro mantiqiy bog'langan ifodalarni blok deb ataluvchi komplekslarga birlashtirish qulaydir. Blok ochiluvchi figurali qavs ({) bilan boshlanadi va yopiluvchi figurali qavs (}) bilan tugaydi. Blok ochilganda va yopilganda nuqtali vergul qo'yilmaydi. { temp= a; a = b; b = temp; } Bu blok xuddi bir ifodadek bajariladi, u a va v o'zgaruvchilar qiymatlarini almashtiradi. Amallar. Bajarilishi natijasida biror bir qiymat qaytaradigan barcha ifodalar C++ tilida amallar deyiladi. Amallar albatta biror bir qiymat qaytaradi. Masalan, 3+2 amali 5 qiymatni qaytaradi. Operatorlar. Operator - bu qandaydir amalni bajarish tug'risida kompilyatorga uzatiladigan literaldir. Operatorlar operandlarga ta'sir qiladi. C++ da operandlar deb alohida literallar va butun ifodalar tushuniladi. C++ tilida ikki ko'rinishdagi operatorlar bor: o'zlashtirish operatorlari matematik operatorlar O'zlashtirish operatori .

O'zlashtirish operatori (=) o'zidan chap tomonda turgan operand qiymatini tenglik belgisidan o'ng tomondagilarni hisoblangan qiymatiga almashtiradi. Masalan, x = a+b; ifodasi x operandga a va v o'zgaruvchilarni qiymatlarini qo'shishdan hosil bo'lgan natijani o'zlashtiradi. O'zlashtirish operatoridan chapda joylashgan operand adresli operand yoki l–kiymat (chap-chap so'zidan olingan) deyiladi. O'zlashtirish operatoridan o'ngda joylashgan operand operasion operand yoki r–kiymat deyiladi. O'zgarmaslar faqatgina r–kiymat bo'lishi mumkin va hech qachon adresli operand bo'la olmaydi, chunki dasturning bajarilishi jarayonida o'zgarmas qiymatini o'zgartirib bo'lmaydi. 35 = x // notugri! l–kiymat esa r–kiymat bo'lishi mumkin. Matematik operatorlar . C++ tilida 5 ta asosiy matematik operatorlar ko'llaniladi: qo'shish (+), ayirish (-), ko'paytirish (*), butun songa bo'lish (\) va modul bo'yicha bo'lish (%)(qoldiqni olish). Ishorasiz butun sonlarni ayirishda, agarda natija manfiy son bo'lsa g'ayrioddiy natija beradi. Ayirish natijasida butun sonni to'lib qolishiga misol # include < iostream.h > int main() { unsiegned int ayirma

unsisgned int kattaSon = 100; unsigned int kichikSon = 50; ayirma = kattaSon – kichikSon; cout << “Ayirma“:<< ayirma<< “ ga teng\n”; ayirma = kichikSon - kattaSon ; cout << “Ayirma“:<< ayirma<< “ ga teng\n”; endl; return 0; } NATIJA: Ayirma: 50 ga teng Ayirma: 4294967246 ga teng