Notwenは、高い高度から均一な重力場で投げられた物体の運動学を研究したいと考えていますが、残念ながら、彼は落下中に十分に高い場所に行って物体を観察する技術的な可能性を持っていません。しかし、科学の進歩を望んでいないので、Notwenが重力シミュレータを構築するのを手伝いましょう!
物理的背景
均一な重力場で高さ(初期速度なし)から落下したオブジェクトは、抗力や風などの大気の影響を無視して、時間とともに速度を上げて地面に向かって加速します。時間の単位でのこの速度の「変化率」は、重力加速度と呼ばれます。地球の表面近くでは、これはにほぼ等しくなりますが、この課題ではという値を使用します、つまり、1秒でオブジェクトの速度が約増加します。倍数である高さを持つことを検討してくださいG ≈ 9.8 m個100Δの時間K=VKTK+1そして、その高さをそれぞれメートルの長さの等間隔に分割することを想像してみてください。Notwenは、オブジェクトがこれらの各間隔を通過するのにかかる時間を測定する必要があるため、これも計算することを目的としています。現代の運動: - -スキップ専門的でいることを教えてくれる
のすべての値に対して私達の場合には、初期であります私たちの開始時速度間隔との持続時間であるで開始索引付け、基準の時間間隔(と
チャレンジ
入力:オブジェクトがスローされる高さ:正の整数倍、または間隔の数(したがって、またはは意味します) –どちらを使用するかはあなた次第です。
出力:高さから落下した落下オブジェクトのASCIIアートアニメーション(詳細は以下を参照)。
出力フレームの構造は次のようにする必要があります。
- 「地面」に先行する改行。少なくとも1つの非空白文字(例:)で表され
@
ます。地面のキャラクターの少なくとも1人は、オブジェクトが落ちる垂直線上になければなりません。 X
地面に選択したもの以外の、オブジェクトを表す別の非空白文字(例:)。- 必要に応じて、垂直線または本の線で作成された壁を表す各線の先頭の文字。壁とオブジェクトの間のスペースと同様に、フレーム間で一貫している限り、前後のスペースの量は問題ありません。有効なフレームの例には1があります(または):
h = 700 m N = 7
| X > | @ > A | > | or or or > | O > | > | > @@@ ^ ----- &&&
オブジェクトは最初のフレームの最初の行から開始する必要があります。その後、後に出力がフラッシュされ、プログラムは同じ垂直方向に2番目のフレームの次の行にオブジェクトを表示します。その後、後、出力が再度フラッシュされ、オブジェクトが同じ垂直に表示されますが、オブジェクトが地面の真上のラインに到達するまで、3番目のフレームの次のラインに表示されます。例:
ルール
- 出力は、インタラクティブな(フラッシュ可能な)コンソールに書き込まれるテキスト、GIF、フレームごとの個別のファイル、またはその他の適切な出力手法である必要があります。
- 各フレームは最後のフレームを完全に上書きし、同じ場所になければなりません。
- コンパイラー/インタープリターがテキストを出力するのに必要な時間はごくわずかであり、平方根の計算に許容される最小精度は小数点以下2桁であると想定できます。
- これらの抜け穴はデフォルトで禁止されていることに注意しながら、任意の標準的な方法で入力を取得し、出力を提供できます。これはcode-golfなので、選択した言語で管理できる最小バイト数でタスクを完了するようにしてください。
1:私はあなたのソリューションに最も適したものを許可したいので、有効なフレームを構成するものについて寛大であり、私はチャレンジに余分なものを追加しようとはしていません。何か不明な点があれば、コメント欄で質問してください。
chr(27)
ないでしょうか?