fork download
  1. /*Cho file dữ liệu dạng văn bản DATA.in có thể chứa cả số và ký tự.
  2.  
  3. Hãy lọc ra các số nguyên int trong file và tính tổng các số đó.
  4.  
  5. Chú ý: file dữ liệu có rất nhiều dòng với rất nhiều số và ký tự xen kẽ nhau. Chỉ tính tổng các số thỏa mãn điều kiện là số kiểu int.
  6.  
  7. Input
  8.  
  9. File văn bản DATA.in có không quá 1000 dòng.
  10.  
  11. Output
  12.  
  13. Ghi ra giá trị tổng các số tính được.*/
  14.  
  15. #include <bits/stdc++.h>
  16. using namespace std;
  17.  
  18. #define ll long long
  19.  
  20. bool check(string s){
  21. if(s.size() > 10) return false;
  22. for(int i = 0; i < s.size(); i++){
  23. if(!isdigit(s[i])) return false;
  24. }
  25. return true;
  26. }
  27.  
  28. int main(){
  29. ifstream in;
  30. in.open("DATA.in");
  31.  
  32. string s;
  33. ll sum = 0;
  34. while(in >> s){
  35. if(check(s)){
  36. sum += stoi(s);
  37. }
  38. }
  39. cout << sum << endl;
  40. return 0;
  41. }
Success #stdin #stdout 0.01s 5324KB
stdin
12 3 4 5 6 7
Aaa 1 1 Bbb XXX yyy 5 5
999999999999999999999999
9
stdout
0