func_code_string: #include <bits/stdc++.h>   using namespace std;   string s;   vector<string> ss;   double check(const string& x) {     double res = 0;     if (x.size() < 3) {       for (char c : x) {         res = res * 10 + (int)c -  0 ;       }       return res;     }     if (x[x.size() - 3] ==  . ) {       for (int i = 0; i < x.size() - 3; ++i) {         if (x[i] ==  . ) continue;         res = res * 10 + (int)x[i] -  0 ;       }       res += ((int)x[x.size() - 2] -  0 ) / 10.0;       res += ((int)x[x.size() - 1] -  0 ) / 100.0;       return res;     } else {       for (int i = 0; i < x.size(); ++i) {         if (x[i] ==  . ) continue;         res = res * 10 + (int)x[i] -  0 ;       }       return res;     }   }   int main(int argc, const char* argv[]) {     cin >> s;     for (int i = 0; i < s.size(); ++i) {       if (s[i] >=  0  && s[i] <=  9 ) {         for (int j = i; j < s.size(); ++j) {           if (j == s.size() - 1) {             ss.emplace_back(s.substr(i, j - i + 1));             i = j;             continue;           }           if (s[j] >=  a  && s[j] <=  z ) {             ss.emplace_back(s.substr(i, j - i));             i = j - 1;             break;           }         }       }     }     double ans = 0;     for (auto& x : ss) {       ans += check(x);     }     char sans[5000];     sprintf(sans,  %.2f , ans);     int len = (int)strlen(sans);     int cnt = (len - 3) % 3;     if (cnt == 0) cnt = 3;     for (int i = 0; i < cnt; ++i) putchar(sans[i]);     for (int i = cnt; i < len - 3; i += 3) {       if (cnt) putchar( . );       putchar(sans[i]);       putchar(sans[i + 1]);       putchar(sans[i + 2]);     }     if (sans[len - 1] !=  0  || sans[len - 2] !=  0 ) {       putchar( . );       putchar(sans[len - 2]);       putchar(sans[len - 1]);     }     puts(  );     return 0;   }   