付録A解答
1章:有限体
練習問題1
2つのFieldElement
オブジェクトが互いに等しくないことを確認するためのメソッド__ne__
を実装してください。
class FieldElement: ... def __ne__(self, other): # this should be the inverse of the == operator return not (self == other)
練習問題2
次の式を、F57のもとで解いてください(すべての+は+f、−は−fとします)。
- 44+33
- 9−29
- 17+42+49
- 52−30−38
>>> prime = 57 >>> print((44+33)%prime) 20 >>> print((9-29)%prime) 37 >>> print((17+42+49)%prime) 51 >>> print((52-30-38)%prime) 41
練習問題3
2つのFieldElement
オブジェクトの減算を定義する__sub__
メソッドを実装してください。
class FieldElement: ... def __sub__(self, other): if self.prime != other.prime: raise TypeError('Cannot subtract two numbers in different Fields') # self.num and other.num are the actual values # self.prime is what we need to mod against num = (self.num - other.num) % self.prime ...
Get プログラミング・ビットコイン ―ゼロからビットコインをプログラムする方法 now with the O’Reilly learning platform.
O’Reilly members experience books, live events, courses curated by job role, and more from O’Reilly and nearly 200 top publishers.