2 mundarija
C++ tilida stekni statik ko„rinishda, ya’ni bir o„lchamli massiv ko„rinishida amalga oshirishga misol
Download 0.61 Mb.
|
telekommuni
- Bu sahifa navigatsiya:
- Algoritm
- 2.4. Deklar
- Dek ustida bajariladigan amallar
C++ tilida stekni statik ko„rinishda, ya’ni bir o„lchamli massiv ko„rinishida amalga oshirishga misol:Masalaning qo„yilishi: Elementlari butun sonlardan iborat stekning juft qiymatli elementlari o„chirilsin. Aytaylik, stek uchun 10 ta joy ajratilgan bo„lsin, bunda dastlab stek bo„shligi sababli R=0 bo„ladi. Stekga yangi element qo„shish va chiqarish, stek bo„shligini va to„laligini tekshirish funksiyalaridan foydalanib shu masalani yechamiz. AlgoritmAgar stek to„lmagan bo„lsa elementlarni kiritamiz. Stekning toq elementlarini saqlab turish uchun yangi b[] massiv e‟lon qilamiz. Agar stek bo„sh bo„lmasa, 3-qadamga o„tish, aks holda 4-qadamga o„tish. Stek uchidagi elementni olamiz va juftlikka tekshiramiz. Agar element toq bo„lsa b massivga joylaymiz. 2-qadamga o„tish. b massiv elementlarini teskari tartibda stekka joylash. Stek tarkibini ekranga chiqarish. Dastur kodi #include int a[10],R=0,n;//bu yerda n stekka kiritilishi kerak bo'lgan elementlar soni. int kiritish(int s){ a[R]=s; R++; } int chiqarish(){ R--; return a[R]; } bool isEmpty(){ if(R==0) return true; 39 else return false; } bool isFull(){ if(R>=10) return true;else return false; } int print(){ int i=0,c[n]; while(!isEmpty()){ c[i]=chiqarish(); cout< for(int j=i-1;j>=0;j--) kiritish(c[j]); } int main(){ int n,s; cout<<"n=";cin>>n; for(int i=0;i if(!isFull()){ cin>>s; kiritish(s);} else{cout<<"stek to'ldi"; n=i;break;} } cout<<"\nstek elementlari: "; print(); int b[n],k=0; for(int i=0;i } for(int i=k-1;i>=0;i--) kiritish(b[i]); 40 cout<<"\nnatijaviy stek elementlari: "; print(); system("PAUSE"); } Dasturning bajarilishi natijasi: n =5 6 7 9 8 11 stek elementlari: 11 8 9 7 6 natijaviy stek elementlari: 11 9 7 2.4. DeklarDek so„zi (DEQ - Double Ended Queue) ingliz tilidan olingan bo„lib 2 ta chetga ega navbat degan ma‟noni bildiradi. Dekning o„ziga xos xususiyati shuki, unga elementlar har ikkala tomondan – chapdan va o„ng tomondan kiritilishi va chiqarilishi mumkin (2.3-rasm). 2.3-rasm. Dek tuzilmasi Dek ustida bajariladigan amallar:Chapdan element kiritish. O„ngdan element kiritish. Chapdan element chiqarish. 41 O„ngdan element chiqarish. Dek bo„shligini tekshirish. Dek to„laligini tekshirish. Download 0.61 Mb. Do'stlaringiz bilan baham: |
Ma'lumotlar bazasi mualliflik huquqi bilan himoyalangan ©fayllar.org 2024
ma'muriyatiga murojaat qiling
ma'muriyatiga murojaat qiling