#include #include #include int main () { ifstream oqish; // fayldan o'qish oqimini hosil qilish string satr;
oqish.open("namuna.txt");
// faylni satr uzunligini aniqlash if (oqish.is_len()) { cout << "Satrlar soni aniqlandi." << endl; exit(1); // dasturni tugatish }
while (len.eof()) { // fayldan o'qish getline(oqish, satr); // ekranga chiqarish cout << satr << endl; }
// namuna.txt fayli bilan oqish oqimi aloqasini uzish oqish.close(); system (“pause”); return 0; }
Stekning eng kichik elementi topilsin va undan keyin 0 joylashtrilsin.
Dastur kodi:
#include #include using namespace std;
int main()
{
queue qu;
queue qu2;
int n;
cout<<"Stek elementlari sonini kiriting:";
cin >> n;
cout<<"Stek elementlarini kiriting:";
for(int i=0, a; i{
cin >> a;
qu.push(a);
qu2.push(a);
}
const int& k = qu2.front();
int min = k;
for(int i=0; i{
if(qu2.front() < min) min = qu2.front();
qu2.pop();
}
cout << "min=" << min << endl;
for(int i=0; i{
if(qu.front() == min)
{
qu2.push(qu.front());
qu2.push(0);
qu.pop();
continue;
}
qu2.push(qu.front());
qu.pop();
}
n = qu2.size();
for(int i=0; i{
cout << qu2.front() << " "; qu2.pop();
}
}
Natijasi:
Maxsulot nomlaridan tashkil topgan ro’yhat berilgan. Ro’yhat elementidagi Sony firmasida ishlab chiqarilgan maxsulotlardan tashkil topgan ro’yhat yarating.
Dastur kodi:
Node * p = lst;
Node * q = new Node;
int numb = “Sony”;
cout<<"maxsulotlar nomini kiriting: ";
cin>>numb;
q->number = numb;
int k;
cout<<" barcha maxsulotlar Sony kompaniyasiga tegishli k=";cin>>k;
for(int i=0;inext;
q->next = p->next;
p->next = q;
system (“pause”);
return 0;
}
Berilgan matnli fayldagi satrlar sonini aniqlang.
#include #include int main () { ofstream yozish; // faylga yozish oqimini hosil qilish yozish.open("namuna.txt"); // yangi namuna.txt nomli fayl hosil qilinadi. // agar namuna.txt fayli oldindan bo'lsa, // uning eski qiymatlari o'chiriladi // va yangi fayl hosil qilinadi yozish << "Matnli faylga ma'lumot yozish" << endl; yozish << "Juda oson!" << endl; yozish.close(); // faylni yopish system ("pause"); return 0; }
Matnli fayldagi satrlar nonini chiqarisi
#include #include #include int main () { ifstream oqish; // fayldan o'qish oqimini hosil qilish string satr;
oqish.open("namuna.txt");
// faylni satr uzunligini aniqlash if (oqish.is_len()) { cout << "Satrlar soni aniqlandi." << endl; exit(1); // dasturni tugatish }
while (len.eof()) { // fayldan o'qish getline(oqish, satr); // ekranga chiqarish cout << satr << endl; }
// namuna.txt fayli bilan oqish oqimi aloqasini uzish oqish.close(); system (“pause”); return 0; }
Transpozitsiya usulidan foydalanib massivning kichik elementi topilsin
Dastur kodi:
node *s=NULL;
node *q=NULL;
node *p=table;
while (p != NULL){
if (min == p->k){ //transponerlaymiz
if( q ==NULL){//eng kichik element topilsin
search=p;
exit(0);
}
q->nxt=p->nxt; p->nxt=q;
if (s == min)
table = p;
else s->nxt = p;
search=p; exit(0);
}
s=q; q=p;
p=p->nxt;
}
search=NULL;
exit(0);
Binar daraxtda berilgan tugungacha bo’lgan masofani aniqlashning algoritmi va dasturini keltiring
Dastur algoritmi:
Binar daraxt berilgan tugunigacha qaraydigan bo’lsak, oxir oqibatda, v tugunni, s esa bo’sh joyni ko’rsatishi lozim.
1) Elementni qidirish funksiyasi orqali tugunni topamiz. p ko’rsatkich tugunni ko’rsatadi.
2) tugunga v ko’rsatkich qo’yamiz va masofani aniqlaymiz qo’yamiz.
Nod lenght(node *tree,int key){
node *p=new node;
node *next=tree;
node *q=NULL;
while(next!=NULL)
{ if
(next->info==key){cout<<"Binar daraxtda "< p=next;
break;
}
if (next->info>key){ q=next; next=next->left;
} else
{q=next;next=next->right; }
}
If
(next==NULL) cout<<"Tugungacha bo’lgan masofa!!"<node *v=NULL,*t=NULL,*s=NULL;