Yarimstatik ma’lumotlar tuzilmasi




Download 156,95 Kb.
bet5/5
Sana06.12.2023
Hajmi156,95 Kb.
#112306
1   2   3   4   5
Bog'liq
Asilbek

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

Queue ga misol
Masala sharti:

  1. Navbat eng kichik elementi topilsin va uning o‘rniga 0 joylashtirilsin.


Dastur kodi:
#include
#include
#include

using namespace std;

int main() {

const int N = 10;
int queue[N];

cout << "Navbat: ";
for (int i = 0; i < N; ++i) {
queue[i] = rand() % 100;
cout << queue[i] << " ";
}

int minIndex = 0;
for (int i = 1; i < N; ++i) {
if (queue[i] < queue[minIndex]) {
minIndex = i;
}
}

queue[minIndex] = 0;

cout << "\nEng kichik elementni 0 ga almashtirgandan keyin navbat: ";
for (int i = 0; i < N; ++i) {
cout << queue[i] << " ";
}

return 0;
}
Dastur natijasi:

Xulosa
Xulosa o'rnida shuni aytish joizki men ushbu amaliy ishni bajarish mobaynida queue navbat funksiyasini chuqur o'rganib chiqib shundan olgan ilmlarim yuzasidan amaliy ishni bajarishga harakat qildim



Download 156,95 Kb.
1   2   3   4   5




Download 156,95 Kb.

Bosh sahifa
Aloqalar

    Bosh sahifa



Yarimstatik ma’lumotlar tuzilmasi

Download 156,95 Kb.