Maison >développement back-end >C++ >nombre heptagonal

nombre heptagonal

王林
王林avant
2023-09-24 10:33:081256parcourir

Un nombre heptagonal est un nombre qui peut être représenté comme un heptagone. Un nombre heptagonal peut être représenté comme une combinaison de couches successives d'heptagone (polygone à 7 côtés expliqué avec les figures ci-dessous).

nombre heptagonalLe premier nombre heptagonal est 1. Il peut donc être représenté par un petit point.

nombre heptagonalLe deuxième nombre heptagonal est 7, qui peut être représenté par un heptagone.

nombre heptagonalLe troisième nombre d'heptagone est 18, qui peut être représenté par un heptagone et combiné avec une couche d'heptagone continue.

nombre heptagonalLe quatrième nombre heptagonal est 34. Il peut être représenté de la manière indiquée ci-dessus comme un heptagone plus deux couches consécutives d'heptagones, ce qui donne 34.

Des concepts similaires seront utilisés pour d’autres nombres heptagonaux. Suivant la même logique, les premiers nombres heptagonaux sont

1, 7, 18, 34, 55, 81, 112, 148, 189, 235, 286, 342, 403

Dans ce problème, notre tâche est de donner n'importe quel nombre positif N en entrée et d'imprimer le Nième nombre d'heptagone en sortie.

Par exemple,

ENTRÉE : N=6

Sortie : 81

ENTRÉE : N=9

Sortie : 189

Regardons maintenant l'algorithme que nous utiliserons pour résoudre ce problème.

Algorithme

Pour résoudre ce problème, nous devons voir le modèle suivi en calculant le nième nombre heptagonal. Le nième nombre heptagonal peut être exprimé par −

$$Heptagonal_{n}:=:frac{n}{2}(5n:-:3)$$

Si nous regardons attentivement cette expression, chaque nombre heptagonal a la forme suivante

$frac{n}{2}(5n:-:3)$, où n représente le nombre de nombres heptagonaux.

Comprenons-le mieux avec un exemple.

Pour n=1, $frac{1}{2}(5:times:1:-:3)$= 1, qui est le premier nombre heptagonal.

Pour n=2, $frac{2}{2}(5:times:2:-:3)$= 7, qui est le deuxième nombre heptagonal.

Quand n=3, $frac{3}{2}(5:times:3:-:3)$= 18, qui est le troisième nombre heptagonal.

Maintenant, vérifions le cas de n=8. Le résultat obtenu par $frac{8}{2}(5:times:8:-:3)$ est 148, qui est en fait le huitième nombre heptagonal dans la séquence de nombres heptagonaux.

Puisque nous pouvons obtenir n'importe quel nième nombre heptagonal en utilisant l'expression ci-dessus, dans notre méthode, nous utiliserons cette expression pour calculer le nième nombre heptagonal, où n peut être n'importe quel nombre positif.

Méthode

Nous vous expliquerons dans les étapes suivantes :

  • Prenez n'importe quel nombre positif N en entrée et calculez la valeur heptagonale correspondante N.

  • Initialisez une fonction pour calculer le Nième nombre d'heptagone.

  • Utilisez l'expression mentionnée dans la section algorithme, c'est-à-dire $frac{N}{2}(5N:-:3)$, pour calculer le Nième nombre d'heptagone et le stocker dans une variable arbitraire.

  • Renvoie notre variable stockée qui sera la valeur du Nième nombre heptagonal correspondant à toute valeur positive N.

Remarque - Nous utiliserons le type de données à virgule flottante au lieu du type de données entier pour éviter toute erreur due aux valeurs décimales lors du calcul du Nième nombre heptagonal à l'aide de la formule ci-dessus. La traduction chinoise de

Exemple

est :

Exemple

Implémentez cette méthode en C++ −

#include <bits/stdc++.h>
#include <iostream>
using namespace std;

//function to calculate nth heptagonal number using formula n/2(5n-3)
float heptagonal(float N){
   float ans= (N/2)*((5*N) - 3); //to store nth heptagonal number
   return ans;
}
int main(){
   float N=5; //input
   float a=heptagonal(N); //store the answer in a variable
   N=13;
   float b=heptagonal(N);
   cout<<a<<endl<<b<<endl; //print the answer
   return 0;
}

Sortie

55
403

Complexité temporelle : O(1), car cela ne prend que un temps constant.

Complexité spatiale : O(1), car aucun espace supplémentaire n'est utilisé.

Conclusion

Nous avons essayé d'apprendre le concept des nombres heptagonaux et la formule de calcul du nième nombre heptagonal que nous avons utilisée dans la méthode.

J'espère que vous avez trouvé cet article utile pour apprendre le concept d'impression du nième nombre heptagonal saisi par n'importe quel utilisateur.

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!

Déclaration:
Cet article est reproduit dans:. en cas de violation, veuillez contacter admin@php.cn Supprimer