JavaScriptで電球のオンとオフを切り替える
問題
この次の状況を考慮してください-
最初はオフになっている電球がn個あります。まず、すべての電球をオンにします。次に、毎秒バルブをオフにします。 3回目のラウンドでは、3つおきの電球を切り替えます(オフの場合はオン、オンの場合はオフ)。
一般に、i番目のラウンドでは、すべてのi電球を切り替えます。そして最後に、n回目のラウンドでは、最後の電球のみを切り替えます。
nを唯一の入力として受け取り、nラウンド後にいくつの電球が点灯しているかを調べるJavaScript関数を作成する必要があります。
たとえば、関数への入力が-
の場合const n = 4;
その場合、出力は-
になります。const output = 2;
出力の説明:
状態配列では、0はオフを示し、1はオンを示します-
ラウンド | 州 |
---|---|
1 | [1、1、1、1、1] |
2 | [1、0、1、0、1] |
3 | [1、0、0、0、1] |
4 | [1、0、0、1、1] |
5 | [1、0、0、1、0] |
したがって、第5ラウンドの後、2つの電球だけがオンになります。
例
このためのコードは-
になりますconst n = 5; const findOn = (n = 1) => { let off = 0; let on = n; while(off <= on){ let mid = Math.floor((off + on) / 2); if(mid * mid > n){ on = mid - 1; }else{ off = mid + 1; }; }; return Math.floor(on); }; console.log(findOn(n));
出力
そして、コンソールの出力は-
になります2
-
JavaScriptの破壊と関数パラメータ
以下は、JavaScriptで関数パラメーターを分解するコードです- 例 <!DOCTYPE html> <html lang="en"> <head> <meta charset="UTF-8" /> <meta name="viewport" content="width=device-width, initial-scale=1.0" /> <title>Document</title> <style>  
-
JavaScriptでのインポートとエクスポートの名前の変更
以下は、JavaScriptでインポートとエクスポートの名前を変更するためのコードです- 注 −この例を実行するには、ローカルホストサーバーを実行する必要があります。 例 <!DOCTYPE html> <html lang="en"> <head> <meta charset="UTF-8" /> <meta name="viewport" content="width=device-width, initial-scale=1.0" /> <t