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

質問編集履歴

4

誤字

2020/05/27 06:35

投稿

Tohmas_1010
Tohmas_1010

スコア15

title CHANGED
File without changes
body CHANGED
@@ -13,7 +13,7 @@
13
13
  #cow=数字と位置が正しい
14
14
  #bull=位置は違うが数字が含まれている
15
15
 
16
- def cowBull_loop():1234
16
+ def cowBull_loop():
17
17
  ask= str(input("enter a four digit number: "))
18
18
  cow=0
19
19
  bullCow=0  

3

修正

2020/05/27 06:35

投稿

Tohmas_1010
Tohmas_1010

スコア15

title CHANGED
File without changes
body CHANGED
@@ -1,4 +1,4 @@
1
- 15行目のbullCow-cowでなぜbullがでるのかが分かりません。
1
+ 15行目のbullCow-cowでなぜbullを導き出せるのかが分かりません。
2
2
  10行目,13行目の#の説明もあいまいなので間違っていたら教えてくれると嬉しいです。
3
3
 
4
4
  四桁のランダムな数字を当てるゲームになります。
@@ -10,23 +10,27 @@
10
10
  ```python
11
11
  import random
12
12
 
13
+ #cow=数字と位置が正しい
13
- #bull (場所も数字 も同じもの),cow(数字は同じだ場所が異なもの)
14
+ #bull=位置は違うが数字が含まれてい
14
15
 
15
- def cowBull_loop():
16
+ def cowBull_loop():1234
16
17
  ask= str(input("enter a four digit number: "))
17
18
  cow=0
18
- bullCow=0
19
+ bullCow=0  
20
+ #----------------------------
19
21
  for i in range(0,4):
20
22
  if num[i]==ask[i]
21
- cow+=1
23
+ cow+=1 #位置と数字が正しいときにcow+=1
24
+ #----------------------------
22
25
  for i in num:
23
26
  if i in ask:
24
- bullCow +=1
25
- bull=bullCow-cow
27
+ bullCow +=1 #askの値が1つでもnumに含まれていればbullCow+=1
28
+ #----------------------------
29
+ bull=bullCow-cow #位置と数字が正しい場合もbulCow+1してしまうので、重複しないために-cowをする。
26
30
  print("you have {} cow and {} bulls".format(cow,bull))
27
- return cow
31
+ return cow
32
+ #----------------------------
28
33
 
29
-
30
34
  if __name__=='__main__':
31
35
  num= str(random.randrange(1000,9999))
32
36
  cow= 0

2

追加

2020/05/27 06:25

投稿

Tohmas_1010
Tohmas_1010

スコア15

title CHANGED
File without changes
body CHANGED
@@ -17,12 +17,12 @@
17
17
  cow=0
18
18
  bullCow=0
19
19
  for i in range(0,4):
20
- if num[i]==ask[i]:#num&ask内の4個の数字の内、どれかが正しければcow+=1
20
+ if num[i]==ask[i]
21
21
  cow+=1
22
22
  for i in num:
23
- if i in ask: #ランダムな値(num)の中にaskが含まれていれば、bullcow+=1
23
+ if i in ask:
24
24
  bullCow +=1
25
- bull=bullCow-cow #なぜbullCow-cowでbullがだせるのか? そもそもbullcowとは何か?
25
+ bull=bullCow-cow
26
26
  print("you have {} cow and {} bulls".format(cow,bull))
27
27
  return cow
28
28
 

1

追加

2020/05/27 05:49

投稿

Tohmas_1010
Tohmas_1010

スコア15

title CHANGED
File without changes
body CHANGED
@@ -1,6 +1,12 @@
1
1
  15行目のbullCow-cowでなぜbullがでるのかが分かりません。
2
2
  10行目,13行目の#の説明もあいまいなので間違っていたら教えてくれると嬉しいです。
3
3
 
4
+ 四桁のランダムな数字を当てるゲームになります。
5
+
6
+ ・引用元・
7
+ (問題)http://www.practicepython.org/exercise/2014/07/05/18-cows-and-bulls.html 
8
+ (コード)https://gist.github.com/JagDecoded/6e973effa2397ffd97b1cb5b9d8a146a
9
+
4
10
  ```python
5
11
  import random
6
12