PDA

نسخه کامل مشاهده نسخه کامل : کمـــــک: اشکال این برنامه ام چیه؟برنامه ++c ساختمان داده



mahsa_mahshar
10-12-2009, 19:51
سلام دوستان
یه برنامه میخوام به زبان ++c که تعدادی عدد از کاربر بگیره آنها را در لیست پیوندی ذخیره کند.(با گرفتن عدد صفر متوقف شود)تعداد گره ها را نمایش دهد.مقدار میانگین را محاسبه کند.گره هایی که مقادیرش بزرگتر از میانگین هستند رو نمایش بده .
تا قسمت محاسبه میانگینش درسته ولی برای چاپ اعداد بزرگتر از میانگین مشکل داره .ممنون میشم کمکم کنید
#include <iostream.h>
#include <conio.h>
//#include <stdlib.h>
class node{
public:
node();
int num;
node *next;
void function();
void find();

private:
node *first;
node *last;
};
////////////////////////////////////////////////////////////////
node::node()
{
first=last=NULL;
}
//////////////////////////////////////////////////////////////
void node::function()
{
int i=-1;
float s=0,ave;
node *newptr=new node;
newptr->next=NULL;
cout<<"enter numbers="<<endl;
do
{
cin>>newptr->num;
s+= newptr->num;
i++;
if (first==NULL)
first=last=newptr;
else {
last->next=newptr;
last=newptr;
}
}while (newptr->num !=0);

ave=s/i;
cout<<"number of nodes="<<i<<" ave="<<ave;
cout<<endl<<"nodes higher than ave=";
int t;
node *temp;
temp=first;
node *previous=NULL;
while (temp != NULL)
{
if (temp->num >ave)
{
t=temp->num;
cout<<t<<endl;}
temp=temp->next;
}
}
///////////////////////////////////////////////////////////
int main()
{
node x;
x.function();

getch();
return 0;
}