Nombres de pyramides carrées (somme des carrés)
Un nombre pyramidal carré fait référence à la somme des carrés des nombres naturels. Les nombres naturels incluent tous les nombres de 1 à l’infini. Par exemple, les 4 premiers nombres carrés de la pyramide sont 1, 5, 14 et 30.
Pour une meilleure compréhension, considérons le fait suivant : si nous prenons la pyramide carrée des nombres au début et empilons les boules numérotées par ordre décroissant, elles formeront une pyramide.
Énoncé du problème
Étant donné un nombre Somme. Si Sum est la somme des carrés des n premiers nombres naturels, renvoie n, sinon renvoie false.
Exemple 1
se traduit par :Exemple 1
Input = 30 Output = 4
Explication = 30 est la somme des carrés des 4 premiers nombres naturels.
1*1 + 2*2 + 3*3 +4*4 = 30.
Par conséquent, la sortie devrait être 4.
Exemple 2
Input = 54 Output = -1
Explication = Il n’existe pas de somme des carrés de n nombres naturels égale à 54. Par conséquent, la sortie devrait être -1.
Solution à l'énoncé du problème
Il existe deux solutions à ce problème.
Méthode 1 : Solution violente
La méthode de la force brute commence à n = 1. Créez une variable « total » qui ajoute le carré du nombre naturel suivant à la valeur précédente du total. Renvoie n si le total est égal à Sum, sinon renvoie false si le total est supérieur à Sum.
pseudocode
start n =1 While (total < sum ): Total += n*n n=n+1 if(total == sum) : Return n Else: Return false end
Exemple
Vous trouverez ci-dessous un programme C++ pour vérifier si un nombre donné est la somme des carrés de nombres naturels.
#include <iostream> using namespace std; // This function returns n if the sum of squares of first // n natural numbers is equal to the given sum // Else it returns -1 int square_pyramidal_number(int sum) { // initialize total int total = 0; // Return -1 if Sum is <= 0 if(sum <= 0){ return -1; } // Adding squares of the numbers starting from 1 int n = 0; while ( total < sum){ n++; total += n * n; } // If total becomes equal to sum return n if (total == sum) return n; return -1; } int main(){ int S = 30; int n = square_pyramidal_number(S); cout<< "Number of Square Pyramidal Numbers whose sum is 30: "<< endl; (n) ? cout << n : cout << "-1"; return 0; }
Sortie
Number of Square Pyramidal Numbers whose sum is 30: 4
Complexité temporelle - O(sum), où sum est l'entrée donnée.
Complexité spatiale - O(1) : aucun espace supplémentaire utilisé.
Méthode 2 utilisant la méthode Newton-Raphson
Une autre méthode est la méthode Newton-Raphson. La méthode de Newton-Raphson est utilisée pour trouver les racines d'une fonction donnée f(x) et une première estimation des racines.
sum of squares of first n natural numbers = n * (n + 1) * (2*n + 1) / 6, n * (n + 1) * (2*n + 1) / 6 = sum or k * (k + 1) * (2*k + 1) – 6*sum = 0
Donc n est la racine de cette équation cubique et peut être calculé à l'aide de la méthode de Newton-Raphson qui consiste à partir d'une valeur initiale x0 et à utiliser la formule suivante pour trouver la valeur suivante x qui est obtenue à partir de la valeur précédente xn xn+ 1.
$$mathrm{x_{1}=x_{0}-frac{f(x_{0})}{f^{'}(x_{0})}}$$
pseudocode
Start calculate func(x) and derivativeFunction(x) for given initial x Compute h: h = func(x) / derivFunc(x) While h is greater than allowed error ε h = func(x) / derivFunc(x) x = x – h If (x is an integer): return x Else: return -1; end
Exemple
Vous trouverez ci-dessous un programme C++ pour vérifier si un nombre donné est la somme des carrés de nombres naturels.
#include<bits/stdc++.h> #define EPSILON 0.001 using namespace std; // According to Newton Raphson Method The function is // k * (k + 1) * (2*k + 1) – 6*sum or 2*k*k*k + 3*k*k + k - 6*sum double func(double k, int sum){ return 2*k*k*k + 3*k*k + k - 6*sum; } // Derivative of the above function is 6*k*k + 6*k + 1 double derivativeFunction(double k){ return 6*k*k + 6*k + 1; } // Function to check if double is an integer or not bool isInteger(double N){ int X = N; double temp2 = N - X; if (temp2*10 >=1 ) { return false; } return true; } // Function that finds the root of k * (k + 1) * (2*k + 1) – 6*sum int newtonRaphson(double k, int sum){ double h = func(k, sum) / derivativeFunction(k); while (abs(h) >= EPSILON){ h = func(k, sum)/derivativeFunction(k); // k(i+1) = k(i) - f(k) / f'(k) k = k - h; } if (isInteger(k)) { return (int)k; } else { return -1; } } // Driver program int main(){ double x0 = 1; // Initial values assumed int sum = 91; int n = newtonRaphson(x0,sum); cout<< "Number of Square Pyramidal Numbers whose sum is 91: "<< endl; (n) ? cout << n : cout << "-1"; return 0; }
Sortie
Number of Square Pyramidal Numbers whose sum is 91: 6
Complexité temporelle - O((log n) F(n)) où F(n) est le coût de calcul de f(x)/f'(x), avec une précision à n chiffres.
Complexité spatiale - O(1) : aucun espace supplémentaire utilisé.
Conclusion
Cet article résout le problème de trouver le numéro de la pyramide carrée d'une somme donnée. Nous introduisons deux méthodes : l’une est une méthode par force brute et l’autre est une méthode efficace. Les deux méthodes fournissent des programmes C++.
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!

Outils d'IA chauds

Undresser.AI Undress
Application basée sur l'IA pour créer des photos de nu réalistes

AI Clothes Remover
Outil d'IA en ligne pour supprimer les vêtements des photos.

Undress AI Tool
Images de déshabillage gratuites

Clothoff.io
Dissolvant de vêtements AI

AI Hentai Generator
Générez AI Hentai gratuitement.

Article chaud

Outils chauds

Bloc-notes++7.3.1
Éditeur de code facile à utiliser et gratuit

SublimeText3 version chinoise
Version chinoise, très simple à utiliser

Envoyer Studio 13.0.1
Puissant environnement de développement intégré PHP

Dreamweaver CS6
Outils de développement Web visuel

SublimeText3 version Mac
Logiciel d'édition de code au niveau de Dieu (SublimeText3)

Pouvez-vous saisir des carrés et des cubes dans Excel ? Voici plusieurs méthodes de saisie rapide parmi lesquelles choisir. 1. Méthode de saisie De nos jours, les méthodes de saisie sont très intelligentes Lorsque vous tapez « carré » ou « cube », [²] et [m³] apparaîtront automatiquement dans les options. La méthode de saisie illustrée ici est un chien, et le spécifique. on n’est pas spécifié. Vous pouvez tester votre propre méthode de saisie. 2. Définissez l'entrée en exposant. Entrez d'abord [m3] ou [m2] dans la cellule, puis sélectionnez le nombre, cliquez avec le bouton droit de la souris et sélectionnez les paramètres de format de cellule, puis définissez 3 et 2 comme [exposant], puis confirmez. Il sera affiché sous forme de cube ou de carré ; 3. Alt + petite saisie au clavier. Maintenez la touche Alt enfoncée dans la cellule de saisie sans la relâcher, puis appuyez sur le chiffre du petit clavier.

Lorsque nous utilisons le logiciel Excel pour créer des tableaux, nous devons parfois utiliser le symbole carré. Alors, comment saisir le symbole carré ? Maintenant, je vais partager avec vous comment saisir le symbole carré dans Excel, ce que de nombreux amis veulent savoir récemment. Comment saisir le symbole carré dans Excel. J'espère que cela pourra vous aider ! Nous voulons saisir le carré dans un fichier Excel, ouvrez d'abord le fichier Excel. Je vais utiliser les mètres carrés comme exemple pour démontrer. Tout d’abord, entrez m2 dans le tableau Excel. Utilisez ensuite la souris pour sélectionner le chiffre 2 en m2, puis cliquez avec le bouton droit et vous verrez une fonction [Formater les cellules]. À ce moment, sélectionnez le bouton [Formater les cellules]. À ce stade, la boîte de dialogue [Formater les cellules] apparaîtra dans le fichier Excel, puis trouvera

La moyenne des carrés des nombres naturels est calculée en additionnant tous les carrés de n nombres naturels puis en divisant par ce nombre. Les deux premiers nombres naturels de l'exemple sont 2,5, 12+22=5=>5/2=2,5. Il existe deux méthodes de calcul en programmation : Utiliser des boucles Utiliser des formules Calculer la moyenne des carrés de nombres naturels à l'aide de boucles Cette logique fonctionne en trouvant les carrés de tous les nombres naturels. Trouvez le carré de chacun en bouclant de 1 à n et ajoutez à la variable somme. Divisez ensuite cette somme par n. Programme pour calculer la somme des carrés de nombres naturels - exemple de code de démonstration en temps réel #include<stdio.h>intmain(){ intn=2;

Nous connaissons tous des nombres qui ne sont le carré d’aucun nombre, comme 2, 3, 5, 7, 8, etc. Il existe N nombres non carrés et il est impossible de connaître tous les nombres. Ainsi, dans cet article, nous expliquerons tout sur les nombres sans carrés ou non carrés et les moyens de trouver le Nième nombre non carré en C++. Nième nombre non carré Si un nombre est le carré d'un entier, alors ce nombre est appelé un carré parfait. Quelques exemples de nombres carrés parfaits sont -1iscarréde14iscarréde29iscarréde316iscarréde425iscarréde5 Si un nombre n'est le carré d'aucun entier, alors le nombre est appelé non carré. Par exemple, les 15 premiers nombres non carrés sont -2,3,5,6,

En 2025, les plateformes mondiales de trading de devises virtuelles numériques sont farouchement compétitives. OKX se classe d'abord avec sa forte force technique et sa stratégie de fonctionnement mondiale, et Binance suit de près avec une liquidité élevée et des frais faibles. Des plates-formes telles que Gate.io, Coinbase et Kraken sont à l'avant-garde avec leurs avantages respectifs. La liste couvre les plateformes de trading telles que Huobi, Kucoin, BitFinex, Crypto.com et Gemini, chacune avec ses propres caractéristiques, mais l'investissement devrait être prudent. Pour choisir une plate-forme, vous devez prendre en compte des facteurs tels que la sécurité, la liquidité, les frais, l'expérience utilisateur, la sélection des devises et la conformité réglementaire, et investir rationnellement

Facteur premier - Dans la théorie des nombres, les facteurs premiers d'un entier positif sont les nombres premiers qui divisent cet entier exactement. Le processus de recherche de ces nombres est appelé factorisation entière ou factorisation première. Exemple - Les facteurs premiers de 288 sont : 288 = 2x2x2x2x2

Si quelqu'un souhaite acquérir une base solide en langage de programmation Java. Ensuite, il faut comprendre comment fonctionne la boucle. De plus, résoudre les problèmes de modèle pyramidal est le meilleur moyen d’améliorer vos connaissances de base de Java, car cela inclut une utilisation intensive des boucles for et while. Cet article vise à fournir quelques programmes Java pour imprimer des modèles pyramidaux à l'aide de différents types de boucles disponibles en Java. Programme Java pour créer un motif de pyramide Nous imprimerons les modèles de pyramide suivants via le programme Java - Pyramide en étoiles inversée Pyramide en étoiles Pyramide des nombres Discutons-en un par un. Mode 1 : La méthode de la pyramide en étoiles inversée déclare et initialise un entier « n » avec le nombre de lignes spécifié. Ensuite, définissez le décompte initial de l'espace comme 0 et le décompte initial de l'étoile comme "n+

Top 10 des plates-formes de trading de devises numériques: 1. Okx, 2. Binance, 3. Gate.io, 4. Huobi Global, 5. Kraken, 6. Coinbase, 7. Kucoin, 8. Bitfinex, 9. Crypto.com, 10. Gemini, ces échanges ont leurs propres caractéristiques et les utilisateurs peuvent choisir la plate-forme qui leur convient sur des facteurs tels que la sécurité, les frais de sécurité, les frais de la sécurité, les frais de sécurité, les arêtes de la sécurité.
