Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- #include <iostream>
- using namespace std;
- #define max 5
- struct kq {
- int n, k, count;
- int q[max];
- };
- int sled(int i) {
- if (i < max - 1)
- return i + 1;
- else
- return 0;
- }
- bool isEmpty(kq* q) {
- return q->count == 0;
- }
- void init(kq * q) {
- q->n = 0;
- q->k = 0;
- q->count = 0;
- }
- void inQ(kq* q, int x) {
- if (q->count == max) {
- cout << "АЛЯРМ МЕСТА НЕТ ТРiВОГА ЯРiК!!!" << endl;
- } else {
- q->q[q->k] = x;
- q->k = sled(q->k);
- q->count++;
- }
- }
- int outQ(kq* q) {
- if (isEmpty(q)) {
- cout << "пусто..." << endl; return 0;
- } else {
- int elem = q->q[q->n];
- q->n = sled(q->n);
- q->count--;
- return elem;
- }
- }
- void main() {
- kq *q = new(kq);
- init(q);
- inQ(q, 2);
- inQ(q, 5);
- inQ(q, 7);
- cout << outQ(q) << endl;
- cout << outQ(q) << endl;
- cout << outQ(q) << endl;
- inQ(q, 3);
- inQ(q, 6);
- inQ(q, 8);
- inQ(q, 9);
- cout << outQ(q) << endl;
- cout << outQ(q) << endl;
- cout << outQ(q) << endl;
- cout << outQ(q) << endl;
- inQ(q, 11);
- inQ(q, 12);
- inQ(q, 13);
- inQ(q, 14);
- inQ(q, 15);
- cout << outQ(q) << endl;
- cout << outQ(q) << endl;
- cout << outQ(q) << endl;
- cout << outQ(q) << endl;
- cout << outQ(q) << endl;
- }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement