Tiplarni dinamik tarzda


Massiv yordamida navbatlarni yaratish


Download 1.83 Mb.
bet32/131
Sana16.06.2023
Hajmi1.83 Mb.
#1503422
1   ...   28   29   30   31   32   33   34   35   ...   131
Bog'liq
Tiplarni dinamik tarzda

Massiv yordamida navbatlarni yaratish. Yuqorida aytganimizdek, navbatni massiv orqali amalga oshirish mumkin. Odatda, agar dasturchi bunday navbatni yarasa, massiv navbat deb ataladi. Shuningdek, buni massiv deb ham aytish mumkin, ammo massiv so‘zi C++ da bor. Shuning uchun, navbat shablon deb aytish ham mumkin va bir xil tarzda uni chaqiriladi.
Buning uchun 2 ta ko‘shimcha o‘zgaruvchi yaratish kerak. Birinchisi start bo‘lsin va navbatning birinchi elemenitini bildirsin. Ikkinchisi ends bo‘lsin va navbatning oxirgi elemenitini bildirsin.
queue[ends] - ifodasini ishlatib navbatning oxirgi elementini qiymatini qaytaradi.
queue[start] - ifodasini ishlatib navbatning oxirgi elementini qiymatini qaytaradi.
Navbatdagi birinchi elementni o‘chirish uchun start ni birga kamaytirish kerak xolos, navbatni bo‘shligini tekshirish uchun start=ends mantiqiy shartni tekshirishning o‘zi kifoyadir. Agar mantiqiy shart true qaytarsa navbat bo‘sh, akas holda bo‘sh emas.
4.6-dastur. Massiv yordamida navbatlardan foydalanish.


// Created by MBBahodir #include "stdafx.h" #include #include
using namespace std;

int main() {


//queue q; int q[3];
int start = 0, ends = 0;
for (int h = 0; h < 3; h++) { int a; cin >> a; q[start++] = a;
}

cout << "Navbatdagi birinchi element " << q[start - 1] << endl; start--; // bir elementni oʻchirish


cout << " Navbatdagi birinchi element (oʻchirilgandan soʻng) " << q[start - 1] << endl;

cout << " Navbatdagi oxirgi element " << q[ends] << endl;

cout << "Navbat boʻsh " << ((start == ends)?"":" emas ") << endl;


system("pause"); return 0;
}




4.6-dastur.Output

9
7
5
Navbatdagi birinchi element 5
Navbatdagi birinchi element (oʻchirilgandan soʻng) 7 Navbatdagi oxirgi element 9
Navbat boʻsh emas


Download 1.83 Mb.

Do'stlaringiz bilan baham:
1   ...   28   29   30   31   32   33   34   35   ...   131




Ma'lumotlar bazasi mualliflik huquqi bilan himoyalangan ©fayllar.org 2024
ma'muriyatiga murojaat qiling