ハッシュ数(javascript)


問題の説明


正の整数xを下のスケール数にするには、xをxの桁数の和で除算する必要があります.例えば、18の桁数の和は1+8=9であり、18は9で除算されるので、18は下付き文字数となる.自然数xを入力し、xがハザード数の関数かどうかをチェックし、解を完了します.

せいげんじょうけん


xは1または10000より大きい整数です.

I/O例


arrreturn10true12true11false13false

問題を解く

function solution(x) {
  let y = 0 // 모든 자릿수의 합
  x = x.toString()
  x = x.split('')
  for (let i = 0; i < x.length; i++) {
    x[i] = parseInt(x[i])
    y += x[i]
  }
  x = x.join('')
  x = parseInt(x)
  if (x%y === 0) {
    return true
  }else {
    return false
  }
}

  • 整数xを各ビット数に分割するには、toString()を文字列に置き換えます.
  • split('')を利用して、桁数で並べ替えます.

  • 配列内のテキストを整数に変換します.

  • 各配列要素を加算する.
  • join('')parseInt(x)を用いて整数xに再作成した.

  • 整数xをすべての桁数の合計yで割った残りの数が0の場合はtrueを返し、そうでない場合はfalseを返します.