質問をすることでしか得られない、回答やアドバイスがある。

15分調べてもわからないことは、質問しよう!

新規登録して質問してみよう
ただいま回答率
85.35%
Python

Pythonは、コードの読みやすさが特徴的なプログラミング言語の1つです。 強い型付け、動的型付けに対応しており、後方互換性がないバージョン2系とバージョン3系が使用されています。 商用製品の開発にも無料で使用でき、OSだけでなく仮想環境にも対応。Unicodeによる文字列操作をサポートしているため、日本語処理も標準で可能です。

Q&A

2回答

512閲覧

pythonのエラーについて解消法を教えてください

omatusan

総合スコア0

Python

Pythonは、コードの読みやすさが特徴的なプログラミング言語の1つです。 強い型付け、動的型付けに対応しており、後方互換性がないバージョン2系とバージョン3系が使用されています。 商用製品の開発にも無料で使用でき、OSだけでなく仮想環境にも対応。Unicodeによる文字列操作をサポートしているため、日本語処理も標準で可能です。

0グッド

0クリップ

投稿2020/11/10 16:44

このエラーの解消方法を教えていただきたいです。

unsupported operand type(s) for *: 'int' and 'NoneType'

該当のソースコード

python

1import cryptomath 2def main(): 3 xp=input() 4 yp=input() 5 k=input() 6 a=input() 7 b=input() 8 p=7 9 zp=1 10 11 xp = int(xp) 12 yp = int(yp) 13 k=int(k) 14 a=int(a) 15 b=int(b) 16 17 (xq,yq)=binary(xp,yp,zp,k,p,a,b) 18 print(xq,yq) 19def kasan(xp,yp,xq,yq,a,b,p): 20 21 if xp==xq and yp!=yq: 22 outx=-1 23 outy=-1 24 if xp==xq and yp==0 and yq==0: 25 outx=-1; 26 outy=-1; 27 if xp==xq and yp+yq==p: 28 outx=-1; 29 outy=-1 30 else: 31 32 if xp==-1&yp==-1: 33 outx=xq 34 outy=yq 35 elif xq==-1&yq==-1: 36 outx=xp 37 outy=yp 38 elif yp==-yq: 39 outx=-1 40 outy=-1 41 elif xp==xq: 42 ramda=(((3*xp**2)+a)*cryptomath.findModInverse(2*yp,p))%p 43 outx=(ramda**2-xp-xq)%p 44 outy=(ramda*(xp-outx)-yp)%p 45 else: 46 if xp!=xq: 47 xp,xq=xq,xp 48 yp,yq=yq,yp 49 ramda=((yp-yq)*cryptomath.findModInverse(xp-xq,p))%p 50 outx=(ramda**2-xp-xq)%p 51 outy=(ramda*(xp-outx)-yp)%p 52 xp,xq=xq,xp 53 yp,yq=yq,yp 54 55 else: 56 ramda=((yp-yq)*cryptomath.findModInverse(xp-xq,p))%p 57 outx=(ramda**2-xp-xq)%p 58 outy=(ramda*(xp-outx)-yp)%p 59 60 return (outx,outy) 61def binary(xp,yp,zp,k,p,a,b): 62 (xq,yq)=(xp,yp) 63 D=bin(k) 64 65 i=3 66 67 while i<len(D): 68 (xq,yq)=kasan(xq,yq,xp,yp,a,b,p) 69 if D[i]=="1": 70 (xq,yq)=kasan(xq,yq,xp,yp,a,b,p) 71 72 i+=1 73 return(xq,yq) 74 75if __name__ == '__main__': 76 main()

inputには
0
2
11
1
6
以上のような値を代入しました。

気になる質問をクリップする

クリップした質問は、後からいつでもMYページで確認できます。

またクリップした質問に回答があった際、通知やメールを受け取ることができます。

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

meg_

2020/11/10 22:26

エラー発生箇所はどこですか?
guest

回答2

0

コメント不要 削除要求

投稿2020/11/11 03:01

user00

総合スコア8

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

0

unsupported operand type(s) for *: 'int' and 'NoneType'

'int' と 'NoneType' のあいだで、*の演算子は使えません、とおっしゃってます。
そのエラーがでている式に使われてる変数になにがはいってるか調べてみよう

投稿2020/11/10 22:17

y_waiwai

総合スコア88042

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

あなたの回答

tips

太字

斜体

打ち消し線

見出し

引用テキストの挿入

コードの挿入

リンクの挿入

リストの挿入

番号リストの挿入

表の挿入

水平線の挿入

プレビュー

まだベストアンサーが選ばれていません

会員登録して回答してみよう

アカウントをお持ちの方は

15分調べてもわからないことは
teratailで質問しよう!

ただいまの回答率
85.35%

質問をまとめることで
思考を整理して素早く解決

テンプレート機能で
簡単に質問をまとめる

質問する

関連した質問