- ベストアンサー
一方をつけると一方が消える、
電車の遮断機のところにあるランプなど一方がつくと 一方が消えるというのがありますよね~、。 あのアルゴリズムってどっちかが消えたあとつくようにしている という単純なものですか?そして遮断機があがると消えるという 感じでしょうか? でも目にはきえると同時についているように見えます。 教えてください。
- みんなの回答 (2)
- 専門家の回答
質問者が選んだベストアンサー
フリッカ回路と呼ばれるものですね。 これは、どっちかが消えた後点くようにしているのではなく、 スイッチが入っているときに電気が流れる回路 スイッチが入っていないときに電気が流れる回路 の、二つを組み合わせて作ります。 C言語的に書くと if(a && b) printf("左が点いてます"); if(a && !b) printf("右が点いてます"); というような感じでしょうか? で、トリガとなるbの制御はたとえば、 1.電車が来た 2.aを真にする 3.タイマ1でn秒を計測 4.タイマ1満了 5.bを真にする 6.タイマ1満了で動き始めるタイマ2でn秒を計測 6.タイマ2満了 8.bを偽にしタイマ1、タイマ2をリセットする 9.電車が通り過ぎるまで、3~8を繰り返す 10.電車が通り過ぎた 11.aを偽にする って感じですね。 電車が通り過ぎてaが偽になれば、最初の2行はかならず偽なのでどちらも 実行されない=ランプが消える。というのはおわかり頂けると思います。 #でもこれ、プロコンなら数ステップの回路だなぁ(笑) 以上、ご参考になりましたでしょうか?
その他の回答 (1)
- hinebot
- ベストアンサー率37% (1123/2963)
仮にランプをAとBとします。 最初Aを点灯する命令を出した後、 A,Bの点灯と消灯を反転させる命令を周期的に行っている のではないでしょうか。 そして、終了する命令がきたときに、A,Bのどっちが点灯しているかを チェックして、最後に点灯している方を消灯する命令を出す。 こんな感じだと思うんですけど。 (意味分かりますか?)
お礼
ありがとうございます。はいわかります。 回答遅くてすいません。
お礼
ありがとうございます。はい!とても参考になりました。 論理文をつかうのですね。