/****************************************************************************** * This program prints various math constants. * * Copyright © 2020 Richard Lesh. All rights reserved. *****************************************************************************/ #include #include #include #include #include #include std::locale utf8loc(std::locale(), new std::codecvt_utf8); using namespace std; static double const C_M_PER = 299792458; static double const PLANCK_J = 6.62607015E-34; static double const NEWTONS_GRAVITAION_M3_PER_KG_PER = 6.6743015E-11; static double const ELEMENTARY_CHARGE_COULOMBS = 1.602176634E-19; static double const AVOGADRO_PER_MOL = 6.02214076E23; static double const BOLTZMANN_J_PER = 1.380649E-23; int main(int argc, char **argv) { setlocale(LC_ALL, "en_US.UTF-8"); wcout.imbue(utf8loc); wcin.imbue(utf8loc); wcout << fmt::format(L"c: {0:.16e}", C_M_PER) << endl; wcout << fmt::format(L"h: {0:.16e}", PLANCK_J) << endl; wcout << fmt::format(L"G: {0:.16e}", NEWTONS_GRAVITAION_M3_PER_KG_PER) << endl; wcout << fmt::format(L"e: {0:.16e}", ELEMENTARY_CHARGE_COULOMBS) << endl; wcout << fmt::format(L"L: {0:.16e}", AVOGADRO_PER_MOL) << endl; wcout << fmt::format(L"k: {0:.16e}", BOLTZMANN_J_PER) << endl; return 0; }