[プログラマJavaScript]ハザード数を解く


🔔 関連する問題


💻 難点数(クリック)

📖 問題の説明


正の整数xがハザード数であるステップ
xはxの桁数の和で除算しなければならない.
例えば、18の桁数の和は1+8=9である.
18を9で割ったので、18はハザード数です.
自然数xを入力し、xがハザード数の関数かどうかをチェックします.
ソリューションを完了してください.

🚫 せいげんじょうけん

  • xは、1または10000より大きい整数である.
  • 🤔 I/O例



    📢 I/O例説明

  • 例#1
    10のすべての桁数の和は1です.10を1で割ったので、10はハザード数です.
  • 例#2
    12のすべての桁数の和は3です.12を3で割ったので、12はハザード数です.
  • 例#3
    11のすべての桁数の和は2です.11点は2にならないので、11はハザード数ではありません.
  • 例#4
    13のすべての桁数の和は4です.13は4で割り切れないので、13はハザード数ではありません.
  • 📝 答えを出す。

    
    function solution(x) {
        let xStr = x + "";
        let sum = 0;
        for(let i = 0; i < xStr.length; i++) {
            sum = sum + Number(xStr[i]);
        }
        return (x % sum === 0 ? true : false);
    }
    
    「整数降順」の前に、
    資料型を文字型にする方法.
    私は3つの演算子を使う方法を考えました.
    途中で複文を書いてから混同し始めた.
    長い間試して...解いたか?
    結果...結果は…!!!!

    頭をつかんで、人の解答を見て、理解しました...ハハハハ
    とにかく、コードを解くなら
    xを+"に変更
    (整数の桁数が必要なため)
    ドアがxStrなので.長さ(桁数の長さ)の値を返します.
    番号で数字型に変更し、さらに
    残りのxがビット数の和で除算されていない場合(=除算)
    true(=ハザード数)ではなくfalseという意味です

    🍒 参考資料🍒


    📘 他のユーザのプール(クリック)

    📝 説明する。

    
    function solution(x) { // x = 18
        var sum = 0;
        var arr = String(x).split(""); // [1,8]
        
        for(let i=0; i<arr.length; i++){
            sum += Number(arr[i]) // 1+8
        }
        return (x % sum == 0) ? true:false;
    }
    
    .split(")の他の人の解を使用します.
    文字列をString(x)のxにする
    .split("")でビット数に分割します.
    for文を回して、数字(現れる数字)を加えます.
    残りのxがビット数の和で除算されていない場合(=除算)
    true(=ハザード数)ではなくfalseという意味です

    🍒 参考資料🍒


    📘 他のユーザのプール(クリック)
    📘 JavaScript String Mozilla(クリック)
    📘 JavaScript .Split()Mozilla(クリック)