lashrone1

check

Jun 2nd, 2019
60
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 1.21 KB | None | 0 0
  1. #include <iostream>
  2. #include <cmath>
  3. #include <string.h>
  4.  
  5. double temp;
  6.  
  7. bool checkValid(){ // Проверка правильности ввода данных
  8. char str[82];
  9. temp = 0;
  10. bool dot = false;
  11. int stepen = 0;
  12.  
  13. for(int i = 0; i < 82;i++){
  14. str[i] = '@';
  15. }
  16.  
  17. std::cin >> str;
  18.  
  19.  
  20.  
  21. for(int i = 0; i < strlen(str);i++){
  22. if(isdigit(str[i]) || str[i] == '.'){ // проверка является ли символ буквой
  23. if(str[i] == '.' && dot == false){
  24. dot = true;
  25.  
  26. }
  27.  
  28. if(dot == true && str[i] != '.'){ // после точки
  29. stepen++;
  30. std::cout << "step ++ \n";
  31. int zn = pow(10,stepen);
  32. temp = (temp*10 + (str[i] - '0'))/zn;
  33. }
  34.  
  35. if(isdigit(str[i]) && dot == false){ // до точки
  36. temp = temp*10 + (str[i] - '0');
  37. }
  38.  
  39. }else{
  40. std::cout << "\n";
  41. std::cout << "Error! Invalid value\n";
  42. std::cout << "Input value again : \n";
  43. return false;
  44. }
  45.  
  46. }
  47.  
  48. return true;
  49. }
Add Comment
Please, Sign In to add comment