scientific notation


C++ How to make cout not use scientific notation

To force cout to print numbers exactly as they are and prevent it from using the scientific notation, we can use the std::fixed I/O manipulator as follows

#include <iostream>

using namespace std;

int main()
{
    std::cout << "The number 0.0001 in fixed:      " << std::fixed << 0.0001 << endl
              << "The number 0.0001 in default:    " << std::defaultfloat << 0.0001 << endl;

    std::cout << "The number 1000000000.0 in fixed:      " << std::fixed << 1000000000.0 << endl
              << "The number 1000000000.0 in default:    " << std::defaultfloat << 1000000000.0 << endl;
return 0;
}

Output

The number 0.0001 in fixed:      0.000100
The number 0.0001 in default:    0.0001
The number 1000000000.0 in fixed:      1000000000.000000
The number 1000000000.0 in default:    1e+09
Advertisements

C: Read a floating number that might be in the format of scientific notation

This code will read a floating number that might be in the format of scientific notation from the keyboard.
Then it will print out the number with the scientific notation and without it.

#include <stdio.h>
#include <stdlib.h>

int main() {
  printf("This code will read a floating number that might be in the format of scientific notation from the keyboard.\nThen it will print it out with the scientific notation and without\n");
  double input;
  printf("Enter a number in scientific notation. (e.g. -4e-5 or -4.00e-5 or -4.00e-05 etc.)\n");
  scanf("%lf", &input);
  printf("With scientific notation '%e'\n", input);
  printf("Without scientific notation '%lf'\n", input);
  return 0;
}

Examples

This code will read a floating number that might be in the format of scientific notation from the keyboard.
Then it will print it out with the scientific notation and without
Enter a number in scientific notation. (e.g. -4e-5 or -4.00e-5 or -4.00e-05 etc.)
4.5e-10
With scientific notation '4.500000e-10'
Without scientific notation '0.000000'
This code will read a floating number that might be in the format of scientific notation from the keyboard.
Then it will print it out with the scientific notation and without
Enter a number in scientific notation. (e.g. -4e-5 or -4.00e-5 or -4.00e-05 etc.)
4.5e-3
With scientific notation '4.500000e-03'
Without scientific notation '0.004500'