WA#6求助
查看原帖
WA#6求助
1360373
SmileFaintly楼主2024/5/20 19:30

在线等

#include<iostream>
#include<cstring> 
using namespace std;

string s1,s2;
char cc;
int a,b,c,d,t,f,x,y;//值,未知数||值,未知数 

int main(){
	getline(cin,s1,'=');
	getline(cin,s2);
	int l1=s1.size(),l2=s2.size();
	for(int i=0;i<=l1;i++){
		if(s1[i]>='a'&&s1[i]<='z'){
			cc=s1[i];
		}	
	}
	for(int i=0;i<l2;i++){
		if(s2[i]>='a'&&s2[i]<='z'){
			cc=s2[i];
		}
	}	
	for(int i=0;i<=l1;i++){
		if(s1[i]>='0'&&s1[i]<='9'){
			t=t*10+s1[i]-'0';
		}else{
			//cout<<t<<'\n';
			if(s1[i]==cc&&f==1){
				b-=t;
			}else if(s1[i]==cc&&f==0){
				b+=t;
			}else if(f==1){
				a-=t;
			}else a+=t;
			t=0;
			f=0;
		}
		if(s1[i]=='-')f=1;
	}
	f=0;
	t=0;
	for(int i=0;i<=l2;i++){
		if(s2[i]>='0'&&s2[i]<='9'){
			t=t*10+s2[i]-'0';
		}else{
			//cout<<t<<'\n';
			if(s2[i]==cc&&f==1){
				d-=t;
			}else if(s2[i]==cc&&f==0){
				d+=t;
			}else if(f==1){
				c-=t;
			}else c+=t;
			t=0;
			f=0;
		}
		if(s2[i]=='-')f=1;
	}	
	x=a-c;
	y=b-d;
	if(-x/(y*1.0)==-0.000){
		printf("%c=0.000",cc);
	}
	else printf("%c=%.3lf",cc,-x/(y*1.0));
	return 0;
}
2024/5/20 19:30
加载中...