質問編集履歴

2

自分の想像している状況を表しました

2022/02/21 11:35

投稿

tenten2525
tenten2525

スコア1

test CHANGED
File without changes
test CHANGED
@@ -1,13 +1,32 @@
1
1
  Pythonを勉強中で、本当に初心者な質問をして申し訳ないのですが、教えて下さい。
2
2
 
3
3
  x=30 y=0 として、
4
- ①10秒毎に下記の条件を実行したいです。
4
+ ①10秒毎に下記の条件を実行
5
- ②x >= 10のとき、x -= 10 and 1秒毎に y += 1 をする。
5
+ ②x >= 10のとき、x -= 10
6
- x < =9 のときはなにも実行しない
6
+ ②が実行出来た時、1秒毎に y += 1 が始まる
7
+ ④②が実行出来なかった時は、再び②の条件を満たすまで止まる。
7
8
 
9
+ 時間で書くと以下のような状況になります
10
+ 0秒後 x=30 y=0
11
+ 1秒後 x=20 y=1
12
+ 2秒後 x=20 y=2
13
+ 3秒後 x=20 y=3
14
+ ・・(略)・・
15
+ 10秒後 x=10 y=10
16
+ 11秒後 x=10 y=11
17
+ 12秒後 x=10 y=12
18
+ ・・(略)・・
19
+ 20秒後 x=0 y=20
20
+ 21秒後 x=0 y=21
21
+ ・・(略)・・
8
- 上記の式だと30秒後にはx=0 y=30になるはずですが、
22
+ 30秒後 x=0 y=30
23
+ x >= 10を満たしていないのでここでストップ
24
+ 何かしらの要因でxに10追加された場合、yの値はそのままに条件を実行
25
+ 0秒後 x=10 y=30
26
+ 1秒後 x=0 y=31
27
+ 2秒後 x=0 y=32
28
+
9
29
  この10秒毎のコードの中に1秒毎のコードが混ざる式がかけずに困っています。
10
-
11
30
  諦めて②を x >= 10のとき、x -= 10 and y += 10 をする という文にしようかとも思いましたが、諦めきれなかったのでご質問します。宜しくお願い致します。
12
31
 
13
32
  ```ここに言語を入力

1

自分なりにコード入れてみました。

2022/02/21 10:31

投稿

tenten2525
tenten2525

スコア1

test CHANGED
File without changes
test CHANGED
@@ -9,3 +9,20 @@
9
9
  この10秒毎のコードの中に1秒毎のコードが混ざる式がかけずに困っています。
10
10
 
11
11
  諦めて②を x >= 10のとき、x -= 10 and y += 10 をする という文にしようかとも思いましたが、諦めきれなかったのでご質問します。宜しくお願い致します。
12
+
13
+ ```ここに言語を入力
14
+ x = 30
15
+ y = 0
16
+
17
+ def x_loop():
18
+ global x
19
+ global y
20
+ win.after(10000,x_loop) #10秒ごとに実行
21
+   if (x>=10):
22
+    x -= 10
23
+ # 1秒ごとに実行 ?
24
+    y += 1
25
+ else:
26
+    return
27
+ # 上記のif文が成り立つ時に1秒ごとに実行?
28
+ ```