2016-09-22 31 views
0

多項式の各項は、整数係数を持つ単一の変数x、たとえば3x^4 - 17x^2 - 3x +整数の(係数、指数)。多項式自体はそのようなペアのリストです。出力pythonが表示されず、エラーが表示されない

  • 規約が何語が
  • ませ二つの用語はありませんゼロ係数を持っていない指数
  • の降順にソートされています

    私たちは、各多項式がユニークな表現を持っていることを保証するために、次の制約があります同じ指数

  • 指数が、常にPO例えば

非負でありますlynomial導入が先

[(3,4)、( - 17,2)、( - 3,1)、(5,0)]のように表される

ゼロ多項式、0は、として表され空のリスト[]。非ゼロ係数の項がないためです。次の操作のための

書き込みPython関数:

addpoly(P1、P2)?

def addpoly(p1,p2): 
    p1=[] 
    p2=[] 
    for i in range(0,len(p1)): 
     for j in range(0,len(p2)): 
      L=[] 

      if p1[i][1]==p2[j][1]: 
       L=L[p1[i][0]+p2[j][0]][p1[i][1]] 
      elif p1[i][1]!=p2[j][1]: 
       L=L+p1[i][j] 
       L=L+p2[i][j] 
     print("L") 
+2

は、あなたのコードをインデントしてください。最後に "L"を印刷している別のことは、その意図か、代わりにリストLを印刷したいのですか? – JKT

+0

関数の最初にp1とp2を空のリストに再割り当てしています。 – elethan

答えて

0

関数の先頭にある空のリストにp1引数とp2引数を再割り当てします。これは、常にfor i in range(0, 0)をチェックすることを意味します。これは空の範囲です。つまり、ループ内の何も実行されません。このため、出力が表示されません。構文に間違いがないので、エラーメッセージは表示されません。問題はロジックにあります。

私の数学のスキルは存在しないので、あなたのコードのロジックの大部分の正確さについてコメントすることはできませんが、関数の最初の2行(p1 = []p2 = [])何もしません。

また、あなたのリストを印刷するには、文字列"L"ではなく、変数Lを印刷してください:あなたが達成しようとしているかを確認することは困難である今のよう

print(L) 
関連する問題