Pagini recente » Cod sursa (job #1199759) | Istoria paginii runda/1_martie_simulare_oji_2024_clasele_11_12/clasament | Cod sursa (job #343478) | Cod sursa (job #2967019) | Cod sursa (job #1370984)
#include <cstdio>
using namespace std;
char s[260];
int main()
{
FILE *in,*out;
in=fopen("ecuatii2.in","r");
out=fopen("ecuatii2.out","w");
int n,i,p,semn,val,ok,peste;
double ras,nrx,numar;
char c;
fscanf(in,"%d",&n);
c=fgetc(in);
for(i=1;i<=n;i++)
{
fscanf(in,"%s",&s);
p=0;
ok=1;
nrx=0;
numar=0;
while(s[p]!=0 && s[p]!='\n')
{
peste=1;
semn=1;
val=0;
if(s[p]=='=')
{
p++;
ok=-1;
peste=0;
}
if(s[p]=='-')
{
p++;
semn=-semn;
peste=0;
}
if(s[p]=='+')
{
p++;
peste=0;
}
while(s[p]>='0' && s[p]<='9')
{
val=val*10+s[p]-'0';
p++;
peste=0;
}
if(s[p]=='x')
{
p++;
nrx=nrx+val*(semn*ok);
peste=0;
if(val==0)
nrx=nrx+ok*semn;
}
else
numar=numar+val*(semn*ok);
if(peste==1)
p++;
}
numar=-numar;
if(nrx==0 && numar==0)
fprintf(out,"infinit\n");
if(nrx==0 && numar!=0)
fprintf(out,"imposibil\n");
if(nrx!=0)
{
if(numar!=0)
{
ras=numar/nrx;
fprintf(out,"%.4lf\n",ras);
}
else
fprintf(out,"0.0000\n");
}
}
return 0;
}