dllbridge

Untitled

Apr 5th, 2026
104
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
C 1.60 KB | None | 0 0
  1.  
  2. #include   <stdio.h>
  3. #include  <locale.h>       //  здесь "живёт" setlocale(LC_ALL, "rus");
  4. #include  <string.h>
  5.  
  6. struct T
  7. {
  8.    
  9.     char cAlpha;
  10.     char   cDot;
  11.     char cPoint;
  12.    
  13.     /////////////
  14.     T()
  15.     {
  16.        
  17.         cAlpha = 0;
  18.         cDot   = 0;
  19.         cPoint = 0;
  20.     }
  21.    
  22.     int Dot(const char *);
  23. };
  24.  
  25.  
  26.  
  27. ////////////////////////////////////////////////////////////
  28. int main()
  29. {
  30.    
  31.     setlocale(LC_ALL, "rus");
  32.                
  33.     char sz[199] = "t,';[30saked`";
  34.    
  35.     T t_1;
  36.    
  37.     int a = t_1.Dot(sz);
  38.    
  39.     if(a > 99) printf("Не вещественное число! (%d)\n", a);
  40.     else       printf(   "Вещественное число! (%d)\n", a);
  41.  
  42. return 0;
  43. }
  44.  
  45. ////////////////////////////////////////////////////////////
  46. int T::Dot(const char *sz)
  47. {
  48.     int n = strlen(sz);
  49.    
  50.     for(int i = 0; i < n; i++)
  51.     {
  52.         //cDot   = 1   (одна точка)
  53.         //cDot   = 2    (две точки)
  54.         //cPoint = 1 (одна запятая)
  55.         //cPoint = 2 (две  запятые)
  56.        
  57.         if(sz[i] == '.') { cDot   += 1; if(i == 0) return 100; }
  58.         if(sz[i] == ',') { cPoint += 1; if(i == 0) return 101; }
  59.        
  60.         if (cDot   == 2)                           return 102;
  61.         if (cPoint == 2)                           return 103;
  62.         if (cPoint == 1 && cDot == 1)              return 104;
  63.     }
  64.    
  65.     if(cPoint == 0 && cDot == 0)                   return 105;  
  66.                                                    return   1;                                                          // Не нашли точку или запятую
  67. }
  68.  
  69.  
  70.  
  71.  
  72. //printf("cDot   = %d\n", cDot  );//
  73. //printf("cPoint = %d\n", cPoint);
  74.  
  75.  
Advertisement
Add Comment
Please, Sign In to add comment