Javascript
 Computer >> コンピューター >  >> プログラミング >> Javascript

JavaScriptで配列内の紛らわしい数を見つける


紛らわしい数字:

配列内の数値が、垂直方向および水平方向に180度回転した後、配列内にも存在する別の数値になると、混乱を招きます。たとえば、垂直方向と水平方向に6度180度回転すると、9になり、その逆も同様です。

0、1、6、8、9の回転のみが有効な数値を生成することに注意する必要があります。

最初で唯一の引数として自然数numを受け取るJavaScript関数を作成する必要があります。関数は最初に、numを含むnumまでのすべての自然数の配列を作成する必要があります。

たとえば、num =5の場合、配列は-

である必要があります。
[1, 2, 3, 4, 5]

次に、関数は配列に存在する紛らわしい数値の数をカウントし、最後にそのカウントを返す必要があります。

例-

入力が-

の場合
const num = 10;

その場合、出力は-

になります。
const output = 5;

配列は[1、2、3、4、5、6、7、8、9、10]になり、紛らわしい数字は-

1, 6, 8, 9, 10

このためのコードは-

になります
const num = 10;
const countConfusing = (num = 1) => {
   let count = 0;
   const valid = '01689';
   const rotateMap = {'0': '0', '1': '1', '6': '9', '8': '8', '9': '6'};
   const prepareRotation = num => {
      let res = '';
      const numArr = String(num).split('');
      if(numArr.some(el => !valid.includes(el))){
         return false;
      };
      numArr.map(el => {
         res = rotateMap[el] + res;
      });
      return +res;
   };
   for(let i = 1; i <= num; i++){
      const rotated = prepareRotation(i);
      if(rotated && rotated > 0 && rotated <= num){
         count++;
      };
   };
   return count;
};
console.log(countConfusing(num));

出力

そして、コンソールの出力は-

になります
5

  1. JavaScriptで数値が三角数かどうかを調べる

    三角数 三角数は、正三角形を埋めることができる点の数です。 たとえば、-9は、各辺が4単位の正三角形を作る三角数です。 問題 数値を受け取り、三角数の場合はtrueを返し、それ以外の場合はfalseを返すJavaScript関数を作成する必要があります。 例 以下はコードです- const num = 9; const isTriangular = (num = 1) => {    let i = 4;    if(num === 1){       return true;    

  2. JavaScriptで配列内の最初の連続していない番号を見つける

    問題 数値の配列を受け取るJavaScript関数を作成する必要があります。関数は、前の要素の自然な後継ではない配列から最初の要素を返す必要があります。 これは、配列にそのような要素が少なくとも1つ存在する場合、前の要素の+1ではない要素を返す必要があることを意味します。 例 以下はコードです- const arr = [1, 2, 3, 4, 6, 7, 8]; const findFirstNonConsecutive = (arr = []) => {    for(let i = 0; i < arr.length - 1; i++){