|
Mustaqil ish Mavzu: Statik va yarimstatik ma’lumotlar tuzilmasi. Bajardi: swd001 guruh talabasi Iskandarov s tekshirdi: Raxmanov Asqar Tajibaevich Toshkent – 2020 Reja
|
bet | 4/4 | Sana | 11.01.2024 | Hajmi | 16,45 Kb. | | #134795 |
Bog'liq Mustaqil ish Mavzu Statik va yarimstatik ma’lumotlar tuzilmasi.-fayllar.org loyihalash 4- kurs test, MUSTAQIL ISH MAVZULARI VA SHAKLLARI, Raqamli qurilmalarni lоyihalashga kirish fani nazorat va test savollari(1), goshtmasja, 2, O`zbekiston respublikasi oliy va o`rta maxsus ta\'lim vazirligi a, 123, Иқрорбекка (2), 8, 5, BOZOR, Ma’lumotlar tuzilmasi va algoritmlar-fayllar.org, 6-Mavzu Superkompyuterlar va ularning xususiyatlari. Reja Supe, Umumiy fizika fan dasturi (KI AT serviz)C++ tilida dekni statik ko’rinishda, ya’ni bir o’lchamli massiv ko’rinishida amalga oshirishga misol: Berilayotgan butun sonlar ketma-ketligining 1-yarmini dekning chap tomonidan, qolgan yarmini dekning o’ng tomonidan kiriting. Dekning elementlarini bir safar chapdan, bir safar o’ngdan juftlikka tekshirib, toq elementlari o’chirilsin.
Algoritm
1. Dekka nechta element kiritilishi aniqlanadi – n, i=0.
2. i++; agar i
3. Agar in/2 bo’lsa, dekning o’ng tomonidan kiritiladi, 2-qadamga o’tish.
4. Agar dek bo’sh bo’lmasa, chapdan element chiqarib olamiz. Agar element juft bo’lsa, b[] massivga joylaymiz. 5-qadamga o’tiladi. Agar dek bo’sh bo’lsa, 6-qadamga o’tish.
5. Agar dek bo’sh bo’lmasa, o’ngdan element chiqarib olamiz. Agar element juft bo’lsa, b[] massivga joylaymiz. 5-qadamga o’tiladi. Agar dek bo’sh bo’lsa, 6-qadamga o’tish.
6. b[] massiv elementlarini dekka o’ng tomondan kiritamiz.
7. Dek tarkibini ekranga chiqaramiz.
Dastur kodi
#include
#include
using namespace std;
int a[10],n,R=0;
bool isEmpty(){
if(R==0) return true; else return false;
}
bool isFull(){
if(R>=10) return true; else return false;
}
int kirit_left(int s){
if(isFull()){cout<<"\ndek to'ldi";n=R;return EXIT_SUCCESS;}
for(int i=R;i>0;i--)
a[i]=a[i-1];
a[0]=s;R++;
}
int olish_left(){
if(isEmpty()){cout<<"\ndek bo'sh";return EXIT_SUCCESS;}
int t=a[0];
for(int i=0;i
a[i]=a[i+1];
R--;
return t;
}
int kirit_right(int s){
if(isFull()){cout<<"\ndek to'ldi";n=R;return EXIT_SUCCESS;}
a[R]=s;R++;
}
int olish_right(){
if(isEmpty()){cout<<"\ndek bo'sh";return EXIT_SUCCESS;}
R--;
return a[R];
}
int print(){
cout<
cout<
}
int main(int argc, char *argv[])
{ int n,s;cout<<"n="; cin>>n;
for(int i=0;i
if(!isFull()){
cout<<"kirit=";cin>>s;
if(i>=n/2) kirit_right(s);
else kirit_left(s);}
else {cout<<"dek to'ldi\n";break;}
}
print();
int b[n/2],k=0,c[n/2],p=0;
while(!isEmpty()){
int q=olish_left();
if(q%2==0) b[k++]=q;
if(isEmpty()) break;
int p=olish_right();
if(p%2==0) b[k++]=p;
}
int i=0;
while(i
kirit_right(b[i]);
i++;
}
print();
system("PAUSE");
return EXIT_SUCCESS;
}
Dastur natijasi
n=8
kirit=1
kirit=2
kirit=3
kirit=4
kirit=5
kirit=6
kirit=7
kirit=8
dek ele-tlari=4 3 2 1 5 6 7 8
dek ele-tlari=4 8 2 6
http://fayllar.org
http://fayllar.org
|
|
Bosh sahifa
Aloqalar
Bosh sahifa
Mustaqil ish Mavzu: Statik va yarimstatik ma’lumotlar tuzilmasi. Bajardi: swd001 guruh talabasi Iskandarov s tekshirdi: Raxmanov Asqar Tajibaevich Toshkent – 2020 Reja
|