codevs1015

题目地址:http://codevs.cn/problem/1015/

分析:

模拟

代码:

var
  i,j,k,n,x,y,max,min:longint;
  a,b,c,d,e:longint;
  ch,ch1,ch2:char;
  s,s1,s2:string;

procedure jjj(ss:string;Var x,y:longint;VAR ch:char);
var
  z,i:longint;
  c,fu:char;
  zimu:boolean;
begin
  x:=0;
  y:=0;
  z:=0;
  fu:='+';
  zimu:=false;
  for i:=1 to length(ss) do
    begin
       c:=ss[i];

       case c of
         '0'..'9':begin

             z:=z*10+ord(c)-48;
                  end;
         'a'..'z':begin
                    zimu:=true;
                    ch:=c;
                  end;
         '+','-': begin
                    if zimu then
                       begin
                         if fu='+' then x:=x+z else x:=x-z;
                       end
                    else
                       begin
                          if fu='+' then y:=y+z else y:=y-z;

                       end;
                    z:=0;
                    fu:=c;
                    zimu:=false;
                  end;


       end;

       if i=length(ss) then
         begin
             if zimu then
                begin
                  if fu='+' then x:=x+z else x:=x-z;
                end
             else
                begin
                  if fu='+' then y:=y+z else y:=y-z;
                end;
         end;
    end;
end;


begin
   readln(s);
   i:=pos('=',s);          //找到等号位置
   s1:=copy(s,1,i-1);     
   s2:=copy(s,i+1,length(s)-i);
   jjj(s1,a,b,ch1);         //计算左边的X项系数,常数项
   jjj(s2,c,d,ch2);         //计算右边的X项系数,常数基
   writeln(ch1,'=',(d-b)/(a-c):0:3);   //解 AX+B=CX+D
end.

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值