Advertisement
Guest User

Untitled

a guest
Sep 22nd, 2019
103
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
C 1.10 KB | None | 0 0
  1. #include <stdio.h>
  2. #include <unistd.h>
  3. #include <stdlib.h>
  4. #include <ctype.h>
  5. #include <string.h>
  6.  
  7. enum { SIZE = 16 };
  8.  
  9. int main(void) {
  10.     long long int res = 0;
  11.     unsigned long long num = 0;
  12.     int sign = 0, tmp = 0;
  13.    
  14.     unsigned char line[16];
  15.      
  16.    
  17.     while ((tmp = read(0, line, SIZE)) != 0) {
  18.         //printf("%d\n", tmp);
  19.         for (int i = 0; i < tmp; i++) {
  20.             //printf("i %d\n",i );
  21.             if (isspace(line[i])) {
  22.                 //printf("1\n");
  23.                 if (sign == 1) {
  24.                     num = ~num + 1;
  25.                     sign = 0;
  26.                     printf("%lld\n", num);
  27.                 }
  28.                
  29.                 res += num;
  30.                 num = 0;
  31.                
  32.             } else if (line[i] == '-') {
  33.                
  34.                 sign = 1;
  35.             } else if (line[i] != '+') {
  36.                
  37.                 num = num * 10 + line[i] -'0';
  38.                 //printf("-- %lld\n", num);
  39.             }
  40.         }
  41.         memset(line, 0, SIZE);
  42.        
  43.     }
  44.    
  45.     printf("%lld\n", res);
  46.     return 0;
  47. }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement