teratail header banner
teratail header banner
質問するログイン新規登録

質問編集履歴

1

誤字

2020/09/03 09:39

投稿

terataillll
terataillll

スコア2

title CHANGED
@@ -1,1 +1,1 @@
1
- 「python」クラスにつての問題が解けないです。説明多めで回答してくださるとありがいです。
1
+ クラスを用いたpythonプログラム
body CHANGED
@@ -1,35 +1,3 @@
1
- ### 前提・実現したいこと
2
- ```ここに言語を入力
3
- #!/usr/bin/python3
4
- # -*- coding: euc-jp -*-
5
- class xy_coord:
6
- def __init__(self, x, y): # コンストラクタ
7
- self.x = x
8
- self.y = y
9
- def vec_add(self, v): # メソッドの定義
10
- self.x += v.x self.y += v.y
11
- def midpoint(self, v): self.vec_add(v)
12
- self.x /= 2 self.y /= 2
13
- a = xy_coord(0.3, 0.8)
14
- print(a.x, a.y)
15
- b = xy_coord(0.1, 0.2) a.midpoint(b) # メソッドの呼び出し print(a.x, a.y)
16
- ```
17
- 上記からxy_coordクラスの定義「だけ」を抜き出し、それに対して以下の変更を行いたい。
18
- 説明多めで回答ださると助かりま
1
+ 質問の仕方が下手そでした。申し訳ありません
19
- * copyメソッドを追加。引数をとらず、自分と同じx· y座標を持つxy_coordク
20
- ラスのインスタンスを新たに作って返す。自分の座標は変わってはいけない
21
- * gen_midpointメソッドを追加。引数として他のxy_coordクラスのインスタン
22
- ス1つを取り、自分と引数の点との中原となるxy_coordクラスのインスタンスを
23
- 新たに作って返す。自分の座標は変わってはいけない。 また、引数として渡した
24
- xy_coordクラスのインスタンスの座標も変わってはいけない。
25
-
26
- copyメソッドとmidpointメソッドを使って作ること
27
- 次に、クラス定義の後に以下の4行を追加し、
28
- a = xy_coord(0.4, 0.7)
29
- b = xy_coord(0.8, 0.1)
30
- c = a.gen_midpoint(b)
31
- print(a.x, а.у, с.х, с.у)
32
-
33
- 出力が「0.4 0.7 0.6 0.4」 あることを確かめよ。ただ、出力に浮
2
+ どう質問したらいいかわからなかったのやりたいことをそのまま書いてまいました。
34
- 動小数点演算の誤差に起因する微細な違いがあってもよい。
35
- クラスの定義および上記の4行(動作確認のため)を含めること。
3
+ 理解しいなと思ったので説明多ありがたいですと書いたのですが不快になられた方申し訳ございません