#include #include #include double stringToDouble(const std::string &str) { double result = 0.0; bool isCommaExist = false; unsigned counter = 1; for (int i = 0; i < str.length(); i++) { if (str[i] == ',' || str[i] == '.') { isCommaExist = true; continue; } if (!isCommaExist) { result = result * 10 + (str[i] - '0'); } else { result = result + double(str[i] - '0') / std::powl(10, counter); counter++; } } return result; } int main(int argc, char *argv[]) { std::string str; std::cout << "Vvedite chislo: "; std::cin >> str; std::cout << std::endl; std::cout << "Double: " << stringToDouble(str) << std::endl; system("PAUSE"); return 0; }