Я пытаюсь прочитать два полинома из текстового файла в моей программе на C ++, и я написал следующий код, моя проблема в том, что читает только первый , а второй выходит каквсе нули? Кроме того, я думаю, это, вероятно, потому что я знаю, как прекратить чтение первого поли, потому что, очевидно, вы не можете написать:
в то время как (f! = '=')
в любом случае здесьcode:
....
int main()
{
poly *p1,*p2;
p1=NULL;
p2=NULL;
fstream f; //error: only reading first polynomial
f.open("input1.txt");
// string x1="4X7-2X6-1X3+4X2+3X0=0"; //these are the polynomials im trying to read
// string x2="2X6+3X2-2X0=0";
int c,e;
char b;
int x,i=0;
cout<<"Number of terms of poly 1: ";
cin>>x;
while(i<x)
{
f>>c>>b>>e;
cout<<c<<b<<e;
p1=p1->create(p1,c,b,e);
i++;
}
p1->display(p1);
cout<<"\nNumber of terms of poly 2: ";
cin>>x;
i=0;
while(i<x)
{
f<<endl;
f>>c>>b>>e;
cout<<c<<b<<e;
p2=p2->create(p2,c,b,e);
i++;
}
p1->display(p2);
poly *p3;
cout<<"\nThe addition of polynomials is:";
p3=p3->polyaddition(p1,p2);
p3->display(p3);
}
Я хотел прочитать полиномы, не спрашивая количество элементов на консоли. Любая помощь будет оценена. Спасибо!