Maison > développement back-end > C++ > le corps du texte

Programme C++ pour imprimer les valeurs dans un format spécifié

王林
Libérer: 2023-09-03 12:33:08
avant
976 Les gens l'ont consulté

Programme C++ pour imprimer les valeurs dans un format spécifié

Supposons que nous ayons trois valeurs doubles. Nous devons les formater et les imprimer comme suit.

  • Nous devons imprimer la partie entière de la première valeur au format hexadécimal minuscule.

  • Nous devons imprimer la deuxième valeur à deux décimales et la faire précéder d'un signe pour indiquer si elle est positive ou négative. La deuxième valeur à imprimer doit être justifiée à droite, longue de 15 caractères et soulignée aux positions inutilisées à gauche.

  • Nous devons imprimer la troisième valeur en notation scientifique avec neuf décimales.

Donc si l'entrée est 256.367, 5783.489, 12.5643295643, la sortie sera

0x100
_______+5783.49
1.256432956E+01
Copier après la connexion
Copier après la connexion

Pour résoudre ce problème nous suivrons les étapes suivantes :

  • hex flag pour imprimer la valeur au format hexadécimal, showbase Le flag affiche le préfixe « 0x » pour les valeurs hexadécimales, l'indicateur de gauche insère des caractères de remplissage dans le champ de sortie pour compléter la valeur à droite et l'indicateur majuscule imprime la sortie en lettres minuscules.

  • le drapeau droit insère des caractères de remplissage dans le champ de sortie pour compléter la valeur à gauche, le drapeau fixe imprime la valeur en notation à virgule fixe, set(15) définit la longueur du champ de sortie à 15, le drapeau showpos insère '+ avant le Output ', setfill('_') remplit la sortie avec des traits de soulignement et setprecision() définit la précision de la valeur à 2 décimales.

  • setprecision() définit la précision de la valeur à 9 décimales, le drapeau scientifique imprime la valeur en notation scientifique, uppercase met la valeur de sortie en majuscule et noshowpos omet tout signe positif avant la valeur de sortie.

Voyons l'implémentation ci-dessous pour une meilleure compréhension :

#include <iostream>
#include <iomanip>
using namespace std;

void solve(double a, double b, double c) {
   cout << hex << showbase << nouppercase << left << (long long) a << endl;
   cout << right << fixed << setw(15) << setfill(&#39;_&#39;) << setprecision(2) << showpos << b << endl;
   cout << setprecision(9) << scientific << uppercase << noshowpos << c << endl;
}
int main() {
   solve(256.367, 5783.489, 12.5643295643);
   return 0;
}
Copier après la connexion

Input

256.367, 5783.489, 12.5643295643
Copier après la connexion

Output

0x100
_______+5783.49
1.256432956E+01
Copier après la connexion
Copier après la connexion

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!

Étiquettes associées:
source:tutorialspoint.com
Déclaration de ce site Web
Le contenu de cet article est volontairement contribué par les internautes et les droits d'auteur appartiennent à l'auteur original. Ce site n'assume aucune responsabilité légale correspondante. Si vous trouvez un contenu suspecté de plagiat ou de contrefaçon, veuillez contacter admin@php.cn
Tutoriels populaires
Plus>
Derniers téléchargements
Plus>
effets Web
Code source du site Web
Matériel du site Web
Modèle frontal