Nous allons écrire un programme JavaScript qui génère une matrice telle que la somme de ses diagonales soit un carré parfait. Notre programme utilisera des boucles imbriquées pour parcourir la matrice et calculer la somme des éléments sous-diagonaux. Nous utiliserons ensuite la méthode Math.sqrt() pour trouver la racine carrée de la somme et vérifier si c'est un entier. Si tel est le cas, nous considérerions la somme comme un carré parfait.
La méthode pour générer une matrice dont la somme des sous-diagonales est égale à un carré parfait est la suivante -
Créez un tableau 2D de taille n x n, où n est la taille de la matrice carrée.
Remplissez la matrice avec des nombres aléatoires compris entre 1 et 100.
Calculez la somme des sous-diagonales d'une matrice.
Vérifiez si la somme est un carré parfait. Si ce n'est pas un carré parfait, générez une nouvelle matrice et répétez les étapes 2 à 4.
Renvoie une matrice dont la somme sous-diagonale est égale à un carré parfait.
Pour vérifier si un nombre est un carré parfait, vous pouvez utiliser la fonction Math.sqrt() et comparer son résultat avec la valeur entière de la racine carrée.
Ceci est un exemple de programme JavaScript qui génère une matrice telle que la somme de ses diagonales est égale à un carré parfait -
function generateMatrix(n) { let matrix = []; for (let i = 0; i < n; i++) { matrix[i] = []; for (let j = 0; j < n; j++) { matrix[i][j] = i * n + j + 1; } } let sum = 0; for (let i = 0; i < n; i++) { sum += matrix[i][n - i - 1]; } let squareRoot = Math.floor(Math.sqrt(sum)); if (squareRoot * squareRoot !== sum) { return null; } return matrix; } const n = 1; console.log(generateMatrix(n));
generateMatrix accepte un paramètre n, qui représente la taille de la matrice à générer.
Cette fonction initialise un tableau 2D vide matrice et parcourt chaque ligne et colonne pour remplir la matrice avec des nombres i * n + j + 1, où i est le numéro de ligne et j est la colonne Nombre.
Cette fonction calcule la somme des sous-diagonales de la matrice (i, n - i - 1) en parcourant chaque ligne et colonne, en ajoutant les valeurs à l'index, où i est le numéro de ligne.
Cette fonction calcule la racine carrée de la somme et arrondit à l'entier le plus proche. Si le carré de l'entier n'est pas égal à la somme, la fonction renvoie null, indiquant que la somme n'est pas un carré parfait.
Si la somme est un carré parfait, la fonction renvoie la matrice résultante.
Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!