---
# System prepended metadata

title: 山本君疑似コード

---


# 山本君疑似コード

```python
wallDistance = 壁までの距離
flag = False #通っている時にTrue
N = 0 #検知回数

while True:
    ToFDistance = ToFセンサー値を更新
    
    if wallDistance * 0.9 > ToFDistance:
        flag = True
    elif flag == True:
        flag = False
        N += 1
```

`if wallDistance * 0.9 > ToFDistance:`：0.9は壁までの距離でぴったりにすると誤差とかで判定が動いちゃうので，安牌を取るために無自覚してある．数字は適当につけた


## 通過時間の考慮
通過時間が0.46秒ということであれば，これをプログラムの中にいれてもいいかもしれないですね
たとえば，半分くらいの0.2秒検知しないと通過判定しないとかね

```python
wallDistance = 壁までの距離
flag = False #通っている時にTrue
flagCounter = 0 #何回連続Trueになったか？
N = 0 #検知回数


while True:
    ToFDistance = ToFセンサー値を更新
    
    if wallDistance * 0.9 > ToFDistance:
        flag = True
        flagCounter += 1
    elif flag == True:
        if flagCounter < 3: # 0.2秒達していない場合は，検知回数を上げない
            flag = False
        else: # 0.2秒以上検知しているので，検知回数あげる
            flag = False
            flagCounter = 0
        N += 1
```
