不是VIP会员,不能显示答案

题目解答

题目:
多项式的乘法。
例如有如下多项式:
P(X)=2X2-X+1, Q(X)=X+1
则:
P(X)•Q(X)=(2X2-X+1)(X+1)=2X3+X2+1

程序说明:
多项式的表示:系数、指数
如上例中: P(X): 系数 指数 Q(X) 系数 指数
2 2 1 1
-1 1 1 0
1 0 0 0
0 0
PXQ的结果存入C中。其输出格式是:依次用一对括号内的(系数,指数)分别来表示。如上例的输出结果表示为:(2,3)(1,2)(1,0)
程序清单
PROGRAM NOI_007;
  VAR 
        I, J, K, L , JP, JQ, JC, X, Y, X1, Y1  :  INTEGER;
        P, Q :  ARRAY[1..10,1..2]  OF  INTEGER;
        C :  ARRAY[1..20,1..2]  OF  INTEGER;
  BEGIN
    
    JP:=0;
    READLN(X,Y);    
  WHILE X<>0 DO
      BEGIN   JP:=JP+1;  P[JP,1]:=X;  P[JP,2]:=Y;  READLN(X,Y)   END;   
    JQ:=0;
READLN(X,Y);

    WHILE X<>0 DO
      BEGIN   JQ:=JQ+1;  Q[JQ,1]:=X;  Q[JQ,2]:=Y;  READLN(X,Y)   END;     
     JC:=1;  C[JC,1]:=0;  C[JC,2]:=-1000;
     FOR  I:=1 TO JP DO
       BEGIN
             x:=p[i,1];               
      Y:=P[I,2];
          FOR  J:=1 TO JQ DO
            BEGIN
                        x1:=x*q[j,1];                   
       Y1:=Y+Q[J,2];
              K:=1;
              WHILE  Y1<C[K,2]  DO  K:=K+1;
              IF  Y1=C[K,2]  THEN        c[k,1]:=c[k,1]+x1            
                             ELSE
                                 BEGIN
                                    FOR  L:=JC DOWNTO K DO
                                     BEGIN
                                       C[L+1,1]:=C[L,1]; 
                    C[L+1,2]:=C[L,2]
                                  END;
                           C[K,1]:=X1;  C[K,2]:=Y1;
                                   jc:=jc+1             
                       END
          END
      END;
    FOR  I:=1 TO JC DO
      IF       c[i,1]<>0              THEN  WRITE(‘(’,C[I,1],‘,’,C[I,2],')');
    READLN
 END.
考点:
分析:
解答:
评论:
老师: