Maîtriser les types numériques en C++ : Guide pratique
Normalement, lorsque nous travaillons avec des nombres, nous utilisons des types de données primitifs tels que int, short, long, float et double, etc. Les types de données numériques, leurs valeurs possibles et plages ont été expliqués lors de la discussion sur les types de données C++.
Définition des nombres en C++
Vous avez déjà défini des nombres dans divers exemples donnés dans les chapitres précédents. Voici un autre exemple consolidé pour définir divers types de nombres en C++ :
#include <iostream>
using namespace std;
int main() {
// définition des nombres :
short s;
int i;
long l;
float f;
double d;
// affectations des nombres ;
s = 10;
i = 1000;
l = 1000000;
f = 230.47;
d = 30949.374;
// affichage des nombres ;
cout << "short s :" << s << endl;
cout << "int i :" << i << endl;
cout << "long l :" << l << endl;
cout << "float f :" << f << endl;
cout << "double d :" << d << endl;
return 0;
}
Lorsque le code ci-dessus est compilé et exécuté, il produit le résultat suivant :
short s :10 int i :1000 long l :1000000 float f :230.47 double d :30949.4
Opérations mathématiques en C++
En plus des diverses fonctions que vous pouvez créer, C++ inclut également quelques fonctions utiles que vous pouvez utiliser. Ces fonctions sont disponibles dans les bibliothèques standard C et C++ et sont appelées fonctions intégrées (built-in). Ce sont des fonctions qui peuvent être incluses dans votre programme et ensuite utilisées.
C++ dispose d'un ensemble riche d'opérations mathématiques, qui peuvent être effectuées sur divers nombres. Le tableau suivant liste quelques fonctions mathématiques intégrées utiles disponibles en C++.
Pour utiliser ces fonctions, vous devez inclure le fichier d'en-tête mathématique <cmath>.
| N° | Fonction et but |
|---|---|
| 1 | double cos(double); Cette fonction prend un angle (comme un double) et retourne le cosinus. |
| 2 | double sin(double); Cette fonction prend un angle (comme un double) et retourne le sinus. |
| 3 | double tan(double); Cette fonction prend un angle (comme un double) et retourne la tangente. |
| 4 | double log(double); Cette fonction prend un nombre et retourne le logarithme naturel de ce nombre. |
| 5 | double pow(double, double); Le premier est un nombre que vous souhaitez élever et le second est la puissance à laquelle vous souhaitez l'élever. |
| 6 | double hypot(double, double); Si vous passez à cette fonction la longueur de deux côtés d'un triangle rectangle, elle vous retournera la longueur de l'hypoténuse. |
| 7 | double sqrt(double); Vous passez à cette fonction un nombre et elle vous donne la racine carrée. |
| 8 | int abs(int); Cette fonction retourne la valeur absolue d'un entier qui lui est passé. |
| 9 | double fabs(double); Cette fonction retourne la valeur absolue de tout nombre décimal qui lui est passé. |
| 10 | double floor(double); Trouve l'entier qui est inférieur ou égal à l'argument qui lui est passé. |
Voici un exemple simple pour montrer quelques opérations mathématiques :
#include <iostream>
#include <cmath>
using namespace std;
int main() {
// définition des nombres :
short s = 10;
int i = -1000;
long l = 100000;
float f = 230.47;
double d = 200.374;
// opérations mathématiques ;
cout << "sin(d) :" << sin(d) << endl;
cout << "abs(i) :" << abs(i) << endl;
cout << "floor(d) :" << floor(d) << endl;
cout << "sqrt(f) :" << sqrt(f) << endl;
cout << "pow(d, 2) :" << pow(d, 2) << endl;
return 0;
}
Lorsque le code ci-dessus est compilé et exécuté, il produit le résultat suivant :
sin(d) :-0.634939 abs(i) :1000 floor(d) :200 sqrt(f) :15.1812 pow(d, 2) :40149.7
Nombres aléatoires en C++
Il y a de nombreux cas où vous souhaiterez générer un nombre aléatoire. Il y a en fait deux fonctions que vous devrez connaître pour la génération de nombres aléatoires. La première est rand(), cette fonction ne retournera qu'un nombre pseudo-aléatoire. La façon de corriger cela est d'appeler d'abord la fonction srand().
Voici un exemple simple pour générer quelques nombres aléatoires. Cet exemple utilise la fonction time() pour obtenir le nombre de secondes sur l'heure système, pour initialiser aléatoirement la fonction rand() :
#include <iostream>
#include <ctime>
#include <cstdlib>
using namespace std;
int main() {
int i, j;
// initialiser la graine
srand((unsigned)time(NULL));
/* générer 10 nombres aléatoires. */
for(i = 0; i < 10; i++) {
// générer le nombre aléatoire réel
j = rand();
cout << "Nombre aléatoire : " << j << endl;
}
return 0;
}
Lorsque le code ci-dessus est compilé et exécuté, il produit le résultat suivant :
Nombre aléatoire : 1748144778 Nombre aléatoire : 630873888 Nombre aléatoire : 2134540646 Nombre aléatoire : 219404170 Nombre aléatoire : 902129458 Nombre aléatoire : 920445370 Nombre aléatoire : 1319072661 Nombre aléatoire : 257938873 Nombre aléatoire : 1256201101 Nombre aléatoire : 580322989
Langue C
- Maîtriser les opérateurs C++ : Guide complet avec exemples pratiques
- Commentaires C++ : Bonnes pratiques pour un code lisible et maintenable
- Maîtriser les templates de classe en C++ : Guide pratique
- Variables et types de données en C++ : Guide expert sur int, double, char, string, bool
- Langage C++ : Vue d'ensemble et caractéristiques clés
- Constantes et littéraux en C++ : Types, syntaxe et bonnes pratiques
- Guide complet des opérateurs C++ : Types, utilisation et bonnes pratiques
- Maîtriser les types numériques en C++ : Guide pratique
- Comprendre les références en C++ : Concepts clés et différences avec les pointeurs