[size=3]السلام عليكم
مرحبا ياعضاء المنتدى الاعزاء ... لو سمحتوا عندي تسليم برنامج غداً بس فيه مشكله بسيطه لااعلم ماهي ؟؟
ممكن تشوفونها لي ؟؟
طريقة عمل البرنامج هي ادخل معادله تتكون من المعامل(coef) والمتغير(x) والأس(power)
الدوال / دالة انشاء وداله تجمع لي الحدود وداله تبحث عن المعامل صفرثم داله اخرى تحذف هذه الداله وداله تبحث عن الأسس المتساويه وداله تجمع معاملات الحدود لها نفس الأس وايضا دالة اضافه ودالة قراءه ودالة طباعه (توجد دالتين هما دالة الاضافه قبل الخليه التي تؤشر عليها المؤشر cursor ودالة الاضافة بعده طبعاً لم احتاجهما فقط شكل وذلك للتوضيح)
البرنامج
#include<iostream.h>
struct monome{
int power;
int coef;
monome *next;};
struct header_record{
monome*head;
monome *cursor;
int count;};
header_record header;
int power;
int coef;
monome *p1,*p2;
void create (){//create
header.head=NULL;
header.cursor=NULL;
header.count=0;}
monome *search(int power){//SEARCH
monome *p=header.head;
while(p!=NULL&&p->power!=power)
p=p->next;
header.cursor=p;
return p;}
void add(monome *address,int coef){//ADD
address->coef+=coef;}
void insert_in_front (int power,int coef){//INSERT_IN_FRONT
monome *p;
p=search(power);
if(p==NULL){
p=new monome;
p->power=power;
p->coef=coef;
p->next=header.head;
header.head=p;
header.cursor=header.head;
header.count++;}
else{add(p,coef);}}
void read_element(){//READ
int power,coef;
cout<<"ENTER THE POWER:\n";
cin>>power;
cout<<"ENTER THE COEFFICIENT:\n";
cin>>coef;
if(coef!=0&&power!=0){
insert_in_front(power,coef);}}
monome *search_0(int coef){//SEARCH_0
monome *p1,*p2;
p1=header.head;
p2=p1;
while(p1!=NULL){
if (p1->coef=0){
header.cursor=p1;
return p1;}
else{p2=p1;
p1=p1->next;
return NULL;}}
void remove (monome *s){//REMOVE
p2->next=p1->next;
delete s;}
void garbage_collector(){//GARBAGE
int coef;
monome *x;
x=search(coef);
while(x!=NULL)
remove(x);}
void print(){//PRINT
monome *ptr;
ptr=header.head;
while(ptr!=NULL){
if(ptr->power==0){
if(ptr->coef>0)
cout<<"+"<<ptr->coef;
else
if(ptr->coef<0)
cout<<"-"<<ptr->coef;}
else
cout<<"+"<<ptr->coef<<"x^"<<ptr->power>>endl;
ptr=ptr->next;}}
int calculate(int x){//CALCULATE
monome *ptr;
int sum=0;
ptr=header.head;
while(ptr!=NULL){
sum=ptr->coef*(x^ptr->power);
sum+=sum;
ptr=ptr->next;}
cout<<"THE SUM IS:"<<sum<<endl;}
void insert_in_middel(int power,int coef){//INSERT_IN MIDDEL
if(header.cursor!=NULL){
monome *p1=new monome;
p1->power=power;
p1->coef=coef;
p1->next=header.cursor->next;
header.cursor->next=p1;
header.cursor=p1;
header.count++;}
else{
header.cursor=new monome;
header.head=header.cursor;
header.head->power=power;
header.head->coef=coef;
header.head->next=NULL;
header.count++;}}
void insert_at_end(int power,int coef){//INSERT _AT_END
if(header.head!=null){
monome *p1=header.head;
while(p1->next!=NULL)
p1=p1->next;
p1->next=new monome;
p1->next->power=power;
p1->next->coef=coef;
header.count++;}
else{p1=new monome;
p1->power=power;
p1->coef=coef;
p1->next=NULL;
header.head=p1;
header.cursor=p1;
header.count++;}}
int main()
{
int p,c,x;
create();
read(p,c);
print();
calculate(x);
}
}
الاخطاء
error C2601: 'remove' : local function definitions are illegal
: error C2601: 'garbage_collector' : local function definitions are illegal
: error C2601: 'print' : local function definitions are illegal
error C2601: 'calculate' : local function definitions are illegal
: error C2601: 'insert_in_middel' : local function definitions are illegal
: error C2601: 'insert_at_end' : local function definitions are illegal
: error C2601: 'main' : local function definitions are illegal
Error executing cl.exe.
ppp.exe - 7 error(s), 0 warning(s)