From 529108afea8a9b02ddd661da7cb1c5827af6e150 Mon Sep 17 00:00:00 2001 From: Christof Metzger-Kraus <christof.j.metzger@gmail.com> Date: Sun, 24 Dec 2017 12:54:06 +0100 Subject: [PATCH] reduce duplicate code --- src/Optimize/OptimizeCmd.cpp | 22 ++++++---------------- 1 file changed, 6 insertions(+), 16 deletions(-) diff --git a/src/Optimize/OptimizeCmd.cpp b/src/Optimize/OptimizeCmd.cpp index 77d7ca90b..ce665bedd 100644 --- a/src/Optimize/OptimizeCmd.cpp +++ b/src/Optimize/OptimizeCmd.cpp @@ -237,22 +237,12 @@ void OptimizeCmd::execute() { } } else if (type == "real") { if (itsAttr[i]) { - if (i == EPSILON || - i == EXPECTEDHYPERVOL || - i == CONVHVOLPROG || - i == GENEMUTATIONPROBABILITY || - i == MUTATIONPROBABILITY || - i == RECOMBINATIONPROBABILITY || - i == SIMBINCROSSOVERNU) { // float - std::string val = std::to_string (Attributes::getReal(itsAttr[i])); - val.erase ( val.find_last_not_of('0') + 1, std::string::npos ); - std::string argument = "--" + (*it).second + "=" + val; - arguments.push_back(argument); - } else { // integer - int val = Attributes::getReal(itsAttr[i]); - std::string argument = "--" + (*it).second + "=" + std::to_string(val); - arguments.push_back(argument); - } + std::string val = std::to_string (Attributes::getReal(itsAttr[i])); + size_t last = val.find_last_not_of('0'); + if (val[last] != '.') ++ last; + val.erase (last, std::string::npos ); + std::string argument = "--" + (*it).second + "=" + val; + arguments.push_back(argument); } } else if (type == "logical") { if (itsAttr[i]) { -- GitLab