PDA

View Full Version : وجود خطا ;



vB.N3T
دوشنبه 16 آبان 1390, 13:56 عصر
[B]لام
دوستان برنامه زیر صف حلقوی هست که فکر میکنم ساختار برنامه درست باشد
و چند خطا میدهد که یکیش خطا ; است و من همه ; ها را گذاشته ام و چند خطا ساده دیگه هم داره
اما نتونسم برطرفشون کنم
کد برنامه رو قرار میدم ممنون میشم برسی کنید و مشکل را بهم بگید

من خودم فکر میکنم مشکل از این دستور باش


int new rear;

کد اماده را ضمینه کردم من با TC کامپایل میکنم



#include<iostream.h>
#include<conio.h>
#define size 100
struct queue{
int items[size];
int front;
int rear;};
int empty(queue q){
if (q.rear==q.front)
return 1;
return 0;}
//--------------------------------------------------
void addq (queue &q, int x){
int new rear;
new rear=(q.rear+1)% size;
if (q.front==new rear)
cout<<"error";
else
{q.items[q.rear]=x;
q.rear=new rear;}}
//--------------------------------------------------
void removeq(queue &q ,int &x){
if (empty(q))
cout<<"error";
else
{x=q.items[q.front];
q.front=(q.front+1)%size;}}
//----------------------------------------------------
void retq(queue &q, int &x){
if (empty(q))
cout<<"error";
else
x=q.items[q.front];}
//---------------------------------------------------
void main(){
struct queue q;
int x;
int b;
q.front=0;
q.rear=-1;
do{
cout<<"enter number:";
cout<<"Delet Number:";
cout<<"Show Index:";
cout<<"EXIT";
cin>>b;
switch(b){
case 1:
cout<<"Enter Number:";
cin>>x;
addq(q,x);
cout<<x;
break;
case 2:
cout<<"Delet Index";
removeq(q,x);
cout<<x;
break;
case 3:
cout<<"show";
retq(q,x);
cout<<x;
break;}}
while (b!=4);
getch(); }

developing
سه شنبه 17 آبان 1390, 09:39 صبح
با سلام



من خودم فکر میکنم مشکل از این دستور باش


int new rear;



همونطور كه خودتون هم پي برديد مشكل از تعريف متغير int هست:
نكته: در نامگذاري متغيرها خط فاصله مجاز نمي باشد.
پس با توجه به نكته ي بالا بايد تعريف خودتون رو به شكل زير تغيير دهيد:
int newrear;

و همينطور در تمامي قسمتهايي كه از new rear استفاده كرديد آنرا به newrear تغيير دهيد.