


Programme C++ pour convertir une variable de type double en type int
En C++, les variables de type int ne peuvent contenir que des valeurs entières positives ou négatives ; elles ne peuvent pas contenir de valeurs décimales. Des valeurs float et double sont disponibles à cet effet. Le type de données double a été créé pour stocker des décimales jusqu'à sept chiffres après la virgule. La conversion d'un entier en type de données double peut être effectuée automatiquement par le compilateur (appelée conversion "implicite"), ou elle peut être explicitement demandée par le programmeur au compilateur (appelée conversion "explicite"). Dans les sections suivantes, nous aborderons différentes méthodes de conversion.
Conversion implicite
Le compilateur effectue automatiquement des conversions de type implicites. Pour y parvenir, deux variables sont nécessaires : l’une de type virgule flottante et l’autre de type entier. Lorsque nous attribuons simplement une valeur ou une variable à virgule flottante à une variable entière, le compilateur s'occupe de toutes les autres choses. Cette conversion souffre d'une perte de données car les variables entières ne peuvent pas contenir de valeurs décimales après la virgule.
Grammaire
double input = <double value>; int output = input;
Algorithme
- Prenez une valeur double en entrée ;
- Attribuez une valeur à une variable entière.
- Afficher la sortie.
Exemple
#include <iostream> using namespace std; int solve(double value) { int opVal = value; return opVal; } int main() { double ip = 25.3056; int op = solve(ip); cout<< "The input value is: " << ip << endl; cout<< "The output value is: " << op << endl; return 0; }
Sortie
The input value is: 25.3056 The output value is: 25
Comme nous pouvons le voir, le processus de conversion est assez simple. Nous attribuons simplement les variables d'entrée aux variables de sortie ; aucune procédure supplémentaire n'est requise. En outre, vous pouvez voir que la partie fractionnaire de la valeur double n’est pas présente dans la sortie.
Conversion explicite
Lorsque le programmeur demande explicitement au compilateur de convertir un type de données en un autre, cela s'appelle une conversion explicite ou une conversion de type explicite. Il existe deux manières d'y parvenir : l'une consiste à déclarer explicitement le type de données lors de l'affectation et l'autre consiste à utiliser static_cast. Nous avons déjà discuté de la première méthode.
Algorithme
- Prenez une valeur double en entrée ;
- Utilisez la conversion de type explicite pour attribuer des valeurs à des variables entières.
- Afficher la sortie.
Mentionner le type de données lors de l'affectation
Il existe deux méthodes d'exécution différentes. L’une est une version de style C et l’autre est une conversion de style fonctionnel.
Version style C
Le type de données du résultat est spécifié avant la variable source, entre parenthèses.
Grammaire
double input = <double value>; int output = (int) input;
Exemple
#include <iostream> using namespace std; int solve(double value) { int opVal = (int)value; return opVal; } int main() { double ip = 84.4439; int op = solve(ip); cout<< "The value before conversion: " << ip << endl; cout<< "The value after conversion: " << op << endl; return 0; }
Sortie
The value before conversion: 84.4439 The value after conversion: 84
Casting fonctionnel
Lorsque nous fournissons des arguments à une fonction, nous déclarons le type de données du résultat et mettons la valeur source entre parenthèses.
Grammaire
double input = <double value>; int output = int(input);
Exemple
#include <iostream> using namespace std; int solve(double value) { int opVal = int(value); return opVal; } int main() { double ip = -993.6571; int op = solve(ip); cout<< "The value before conversion: " << ip << endl; cout<< "The value after conversion: " << op << endl; return 0; }
Sortie
The value before conversion: -993.657 The value after conversion: -993
Utilisez static_cast
Pour convertir entre des types prédéfinis, utilisez des conversions statiques. De plus, ce transtypage, qui peut également être référencé explicitement, est chargé d'appliquer la conversion de type implicite.
Grammaire
double input = < double value>; int output = static_cast<int>(input);
Exemple
#include <iostream> using namespace std; int solve(double value) { int opVal = static_cast<int>(value); return opVal; } int main() { double ip = -65.2354; int op = solve(ip); cout<< "The value before conversion: " << ip << endl; cout<< "The value after conversion: " << op << endl; return 0; }
Sortie
The value before conversion: -65.2354 The value after conversion: -65
Conclusion
La conversion d'un type de données double en un type de données entier entraîne toujours une perte de données car une variable entière ne peut pas contenir la partie fractionnaire d'une variable double. Ces conversions sont utiles lorsque nous devons arrondir une valeur à sa valeur limite inférieure (la plus petite valeur entière étant donné une valeur décimale).
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

Video Face Swap
Échangez les visages dans n'importe quelle vidéo sans effort grâce à notre outil d'échange de visage AI entièrement gratuit !

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)

Sujets chauds





Explication détaillée de la méthode de conversion du type int en octet en PHP En PHP, nous avons souvent besoin de convertir le type entier (int) en type octet (Byte), par exemple lorsqu'il s'agit de transmission de données réseau, de traitement de fichiers ou d'algorithmes de cryptage . Cet article présentera en détail comment convertir le type int en type byte et fournira des exemples de code spécifiques. 1. La relation entre le type int et l'octet Dans le domaine informatique, le type de données de base int représente un entier, tandis que l'octet (Byte) est une unité de stockage informatique, généralement des données binaires de 8 bits.

En C++, les variables de type int ne peuvent contenir que des valeurs entières positives ou négatives ; elles ne peuvent pas contenir de valeurs décimales. Des valeurs float et double sont disponibles à cet effet. Le type de données double a été créé pour stocker des décimales jusqu'à sept chiffres après la virgule. La conversion d'un entier en type de données double peut être effectuée automatiquement par le compilateur (appelée conversion "implicite"), ou elle peut être explicitement demandée par le programmeur au compilateur (appelée conversion "explicite"). Dans les sections suivantes, nous aborderons différentes méthodes de conversion. Conversions implicites Le compilateur effectue automatiquement des conversions de type implicites. Pour y parvenir, deux variables sont nécessaires : l’une de type virgule flottante et l’autre de type entier. Lorsque nous attribuons simplement une valeur ou une variable à virgule flottante à une variable entière, le compilateur s'occupe de toutes les autres choses.

La plage de valeurs de int32 va de -2 à la puissance 31 à 2 à la puissance 31 moins 1, soit -2147483648 à 2147483647. int32 est un type entier signé, ce qui signifie qu'il peut représenter des nombres positifs, des nombres négatifs et zéro. Il utilise 1 bit pour représenter le bit de signe et les 31 bits restants sont utilisés pour représenter la valeur numérique. Puisqu’un bit est utilisé pour représenter le bit de signe, le nombre effectif de bits int32 est 31.

Méthode de conversion : 1. Utilisez la fonction Itoa(), la syntaxe « strconv.Itoa(num) » ; 2. Utilisez la fonction FormatInt() pour convertir les données de type int dans la base spécifiée et les renvoyer sous la forme d'une chaîne, la syntaxe "strconv .FormatInt(num,10)".

Le nombre d'octets occupés par le type int peut varier selon les langages de programmation et les différentes plates-formes matérielles. Introduction détaillée : 1. En langage C, le type int occupe généralement 2 octets ou 4 octets. Dans les systèmes 32 bits, le type int occupe 4 octets, tandis que dans les systèmes 16 bits, le type int occupe 2 octets. Dans un système 64 bits, le type int peut occuper 8 octets ; 2. En Java, le type int occupe généralement 4 octets, tandis qu'en Python, le type int n'a pas de limite d'octets et peut être automatiquement ajusté, etc.

En Java, int est un type de données signé 32 bits et ses variables nécessitent une mémoire 32 bits ; la plage valide du type de données int est comprise entre -2147483648 et 2147483647, et tous les entiers de cette plage sont appelés littéraux entiers. Un littéral entier peut être affecté à une variable int, telle que "int num1 = 21;".

Les octets occupés par double : 1. Sous un compilateur 16 bits, double occupe 8 octets ; 2. Sous un compilateur 32 bits, double occupe 8 octets ; 3. Sous un compilateur 64 bits, double occupe 8 octets.

Int en VB fait référence à une fonction qui prend un entier. Sa syntaxe est telle que "int(x)", ce qui signifie prendre le plus grand entier non supérieur à x. Les fonctions similaires à la fonction int incluent la fonction Fix, qui supprime la décimale ; partie et renvoie le reste, l'entier suivant.
