前提:
ネットワーキングの場合、すべてのデバイスが正しく接続されていることを確認するために、デバイスにpingを送信した可能性があります。ネットワーキングで人気のあるシスコである[引用が必要]の IOSには、次のようなコマンドがあります。
(画像ソース)
あなたの課題は、この一部をグラフィカルに再現することです。スキップしている部分は、最初の行(Type escape sequence to abort.
)全体と、IPアドレスと往復時間です。
まず、以下を出力します。
Sending 5, 100-byte ICMP Echos, timeout is 2 seconds:
次に、送信されるエコー要求をシミュレートします。各要求は、2秒待機してから応答を生成することから始まります。成功したエコー応答はで表され!
、失敗した応答はで表され.
ます。実際にはパケットを送信しませんが、パケットの損失を表すために、プログラムは2つのオプションからランダムに選択し、それぞれの確率がゼロではないようにする必要があります。この行は空で始まり、各ティックは別の文字を追加します。
5番目のエコーの後、パーセンテージ行が出力され、プログラムが終了します。パーセント線は次の形式になります
Success rate is $p percent ($s/5)
どこ$p
正規表現である0|20|40|60|80|100
と$s
成功したエコーの数です。画面は、新しい状態を再描画するか、既存のエコーラインに追加することにより、待機時間ごとに更新する必要があります。これにはSending
ラインが含まれます。
実行例:(ティックカウントは表示されるべきではなく、各タイムステップで出力がどのようになるかを明確にするためにあります)
#Tick 0
Sending 5, 100-byte ICMP Echos, timeout is 2 seconds:
#Tick 1
Sending 5, 100-byte ICMP Echos, timeout is 2 seconds:
.
#Tick 2
Sending 5, 100-byte ICMP Echos, timeout is 2 seconds:
.!
#Tick 3
Sending 5, 100-byte ICMP Echos, timeout is 2 seconds:
.!.
#Tick 4
Sending 5, 100-byte ICMP Echos, timeout is 2 seconds:
.!.!
#Tick 5
Sending 5, 100-byte ICMP Echos, timeout is 2 seconds:
.!.!.
Success rate is 40 percent (2/5)
入力:
使用可能な入力がありません。
出力:
適切な形式。最終出力の例は次のようになります。
Sending 5, 100-byte ICMP Echos, timeout is 2 seconds:
...!!
Success rate is 40 percent (2/5)
ルール:
- エコーラインに追加するか、ティックごとに画面を再描画する必要があります。
!
そして、.
同じようにそう、ちょうど両方可能である必要はありません。- 連続して実行すると、さまざまな結果を生成できる必要があります
- あなたの出力のGIFやWebMSはクールです。ボーナスも何もありません。
- 標準の抜け穴は禁止されています
- これはコードゴルフです