#include #include #include int main(int argc, char *argv[]){ if(argc==2) { std::cout << std::fixed; float printable{std::stof(argv[1])}; std::cout << std::setprecision(std::numeric_limits::max_digits10 + 2); std::cout << printable << std::endl; } else if(argc==3) { std::string floatsize{argv[2]}; if(floatsize=="f") { std::cout << std::fixed; float printable{std::stof(argv[1])}; std::cout << std::setprecision(std::numeric_limits::max_digits10 + 2); std::cout << printable << std::endl; } else if (floatsize=="d") { std::cout << std::fixed; double printable{std::stod(argv[1])}; std::cout << std::setprecision(std::numeric_limits::max_digits10 + 2); std::cout << printable << std::endl; } else if (floatsize=="ld") { std::cout << std::fixed; long double printable{std::stold(argv[1])}; std::cout << std::setprecision(std::numeric_limits::max_digits10 + 2); std::cout << printable << std::endl; } else { std::cerr << "That's not a valid floatsize. The only valid sizes are: f, d and ld." << std::endl; return 1; } } else { std::cerr << "Incorrect number of arguments." << std::endl; return 1; } return 0; }