السلام عليكم اخواني
ارجو منكم المساعده وربي يجزيكم الجنه
كتبت كود لتطبيق طابور دائري على مصفوفة
وعند امتلا الطابور ثم حذف عنصر ثم طباعه العناصر بعد الحذف يعمل صح
ثم عند اضافه عنصر وطباعة العناصر يطبع اعداد غير منتهية
اعتقد ان الخطا في داله الطباعه وفي شرط التكرار بالتحديد لكن لم استطع حلها حتى يعمل الطابور بشكل صحيح ويضيف بعد الحذف
وهذا هو الكود:
#include<iostream>using namespace std;const int size = 8; int c=0;struct queue { int item [size]; int front, rear; }p; void print(queue *pq) { int i; i=pq->front; if(i==size) i=0; while(i!= pq->rear+1) { cout<< pq->item<<" "; i++; } } void insert ( queue *pq) { int x; x = rand()%1000; if(c == size) cout<<"queue is full"; if(pq->rear== size-1) pq->rear=-1; pq->rear++; pq->item[pq->rear]=x; c++; } int remove (queue *pq) { if(c == 0) cout<<"queue is empty"; if(pq->front== size-1) pq->front=0; c--; return( pq->item[pq->front++]); } int main () { int i,n,s; p.front=0; p.rear=-1; cout<<" enter no element to be added to the queue "; cin>>n; cout<<endl; for(i=0;i<n;i++) insert(&p); do { cout<<endl<<"----------------------------"<<endl; cout<<" 1 : add value to the queue "<<endl; cout<<" 2 : delete value from the queue "<<endl; cout<<" 3 : print the value from the queue "<<endl; cout<<" 4 : exit "<<endl; cout<<endl<<"----------------------------"<<endl; cout<<" enter your selction "<<endl; cin>>s; cout<<endl<<"----------------------------"<<endl; if(s == 1) insert(&p); if(s == 2) cout<<remove(&p); if(s == 3) print(&p); } while(s!=4); return 0; }الرجااااء ممن عنده معلومه لا يتاخر في الرد وله كل الشكر....