回答編集履歴
4
テキスト修正
answer
CHANGED
@@ -6,6 +6,7 @@
|
|
6
6
|
|
7
7
|
をコードに落とし込むには、まずは `Tn-1` に相当する変数を用意するとよいです。以下では、`Tn` に相当する変数を `t`とし、`Tn-1`に相当する変数を `prevT`としました。
|
8
8
|
|
9
|
+
### コード例1
|
9
10
|
```python
|
10
11
|
def sumS(n):
|
11
12
|
acc = 0
|
@@ -37,8 +38,9 @@
|
|
37
38
|
|
38
39
|
- **動作確認用Repl.it:** [https://repl.it/@jun68ykt/Q270225](https://repl.it/@jun68ykt/Q270225)
|
39
40
|
|
40
|
-
そして、上記のコードをあらためて見直してリファクタリングし、`prevT` を削除できそうなので、削除
|
41
|
+
そして、上記のコードをあらためて見直してリファクタリングし、`prevT` を削除できそうなので、削除すると以下になります。
|
41
42
|
|
43
|
+
### コード例2
|
42
44
|
```python
|
43
45
|
def sumS(n):
|
44
46
|
acc = 0
|
@@ -53,4 +55,20 @@
|
|
53
55
|
```
|
54
56
|
- **動作確認用Repl.it:** [https://repl.it/@jun68ykt/Q2702252](https://repl.it/@jun68ykt/Q2702252)
|
55
57
|
|
56
|
-
もちろん、ひとつ前の項を入れておく変数(ここでは `prevT`)を使わないコードを、初めから書けるようになればそれに越したことはありません。
|
58
|
+
もちろん、ひとつ前の項を入れておく変数(ここでは `prevT`)を使わないコードを、初めから書けるようになればそれに越したことはありません。
|
59
|
+
|
60
|
+
さらに、数列`Tn`の初項`2` を `t` の初期値として代入しておけば、`t = 3 * t - 1 if n > 1 else 2` の `if n > 1 else 2` が不要になって、以下となります。
|
61
|
+
|
62
|
+
### コード例3
|
63
|
+
```python
|
64
|
+
def sumS(n):
|
65
|
+
acc = 0
|
66
|
+
t = 2
|
67
|
+
for n in range(1, 10+1):
|
68
|
+
acc += t
|
69
|
+
t = 3 * t - 1
|
70
|
+
return acc
|
71
|
+
|
72
|
+
print(sumS(10))
|
73
|
+
```
|
74
|
+
- **動作確認用Repl.it:** [https://repl.it/@jun68ykt/Q2702253](https://repl.it/@jun68ykt/Q2702253)
|
3
テキスト修正
answer
CHANGED
@@ -51,4 +51,6 @@
|
|
51
51
|
print(sumS(10))
|
52
52
|
|
53
53
|
```
|
54
|
-
- **動作確認用Repl.it:** [https://repl.it/@jun68ykt/Q2702252](https://repl.it/@jun68ykt/Q2702252)
|
54
|
+
- **動作確認用Repl.it:** [https://repl.it/@jun68ykt/Q2702252](https://repl.it/@jun68ykt/Q2702252)
|
55
|
+
|
56
|
+
もちろん、ひとつ前の項を入れておく変数(ここでは `prevT`)を使わないコードを、初めから書けるようになればそれに越したことはありません。
|
2
テキスト修正
answer
CHANGED
@@ -4,7 +4,7 @@
|
|
4
4
|
|
5
5
|
> Tn=3Tn-1-1
|
6
6
|
|
7
|
-
をコードに落とし込むには、 `Tn-1` に相当する変数を用意するとよいです。以下では、`Tn` に相当する変数を `t`とし、`Tn-1`に相当する変数を `prevT`としました。
|
7
|
+
をコードに落とし込むには、まずは `Tn-1` に相当する変数を用意するとよいです。以下では、`Tn` に相当する変数を `t`とし、`Tn-1`に相当する変数を `prevT`としました。
|
8
8
|
|
9
9
|
```python
|
10
10
|
def sumS(n):
|
@@ -35,4 +35,20 @@
|
|
35
35
|
|
36
36
|
の合計の `44291` が表示されます。
|
37
37
|
|
38
|
-
- **動作確認用Repl.it:** [https://repl.it/@jun68ykt/Q270225](https://repl.it/@jun68ykt/Q270225)
|
38
|
+
- **動作確認用Repl.it:** [https://repl.it/@jun68ykt/Q270225](https://repl.it/@jun68ykt/Q270225)
|
39
|
+
|
40
|
+
そして、上記のコードをあらためて見直してリファクタリングし、`prevT` を削除できそうなので、削除します。
|
41
|
+
|
42
|
+
```python
|
43
|
+
def sumS(n):
|
44
|
+
acc = 0
|
45
|
+
t = None
|
46
|
+
for n in range(1,10+1):
|
47
|
+
t = 3 * t - 1 if n > 1 else 2
|
48
|
+
acc += t
|
49
|
+
return acc
|
50
|
+
|
51
|
+
print(sumS(10))
|
52
|
+
|
53
|
+
```
|
54
|
+
- **動作確認用Repl.it:** [https://repl.it/@jun68ykt/Q2702252](https://repl.it/@jun68ykt/Q2702252)
|
1
テキスト修正
answer
CHANGED
@@ -18,7 +18,7 @@
|
|
18
18
|
print(sumS(10))
|
19
19
|
```
|
20
20
|
|
21
|
-
上記によって、
|
21
|
+
上記によって、`T1` から `T10` までの、以下の10個の数
|
22
22
|
|
23
23
|
```
|
24
24
|
2
|