ホームページ > ウェブフロントエンド > jsチュートリアル > JavaScript の楽しい質問: 弾むボール

JavaScript の楽しい質問: 弾むボール

黄舟
リリース: 2017-02-13 16:05:52
オリジナル
1420 人が閲覧しました

いたずらな子供が高い建物の上で弾むボールで遊んでいます hメートルの高さ、hはメートルで測定されます。

その後、彼は弾むボールを投げると、ボールはすぐに2/3 2/3など、元のバウンスの高さに戻りました。

彼の母親は現在メートルの高さにあり、窓の外を眺めていますが、hよりも小さいはずです。つまり、彼の母親は彼の下にあるはずです。

すみません、このお母さんは窓の前でボールを何回見ることができますか?下落と反発の両方を含みます。

注:

ボールのリバウンドの高さがよりも絶対に大きい場合にのみ、この母親はそれを見ることができます。

例:

h = 3、バウンス = 0.66、ウィンドウ = 1.5、結果は 3

h = 3、バウンス = 1、ウィンドウ = 1.5、結果は -1 です

の場合ここにいずれか 外れ値の場合は -1 が返されます。

それでは、何が異常値とみなされますか?

1.バウンスバウンス率<=0または>=1、この状況は明らかに不可能です

2. いたずらっ子の身長は母親より低いため、意味がありません。直接 -1 に戻ります

さて、アイデアを見てみましょう:

1. 通常の状況では、母親は弾むボールが初めて落ちるときに少なくとも 1 回は目にします。

2. リバウンドの高さがより大きい場合、上下それぞれに2回を加算する必要があります。

まず、外れ値を削除してから、上記のアイデアに従って記述します:


function bouncingBall(h,  bounce,  window) {
    var total = -1;
    if(bounce <= 0 || bounce >= 1){
        return total;
    }
    if(h > window){
        total = 1;
        var current = h * bounce;
        while(current > window){
            total += 2;
            current = current * bounce;
        }
    }
    return total;
}
ログイン後にコピー


上記は JavaScript の楽しい質問の内容です: 弾むボール その他の関連コンテンツについては、PHP 中国語に注意してください。ウェブサイト (www.php.cn)!

関連ラベル:
ソース:php.cn
このウェブサイトの声明
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。
人気のチュートリアル
詳細>
最新のダウンロード
詳細>
ウェブエフェクト
公式サイト
サイト素材
フロントエンドテンプレート