fork download
  1. #include <ctype.h>
  2. #include <stdio.h>
  3. #include <string.h>
  4.  
  5. int validar_saldo(char *str) {
  6. /* DEBUG */
  7. fprintf(stderr, "DEBUG: valor passado: [%s]\n", str);
  8.  
  9. if (*str == '-') str++;
  10. if (!isdigit((unsigned char)*str)) return 0; /* empty strings return false */
  11. while (*str) {
  12. if (!isdigit((unsigned char)*str)) return 0;
  13. str++;
  14. }
  15. return 1;
  16. }
  17.  
  18. int main(void) {
  19. char line[100];
  20.  
  21. while (fgets(line, sizeof line, stdin)) {
  22. char *componente;
  23. componente = strtok(line, " "); /* primeiro componente */
  24. componente = strtok(NULL, " "); /* segundo componente */
  25. printf("Resultado: %d\n", validar_saldo(componente));
  26. }
  27. return 0;
  28. }
Success #stdin #stdout #stderr 0s 1836KB
stdin
123-55555-1 10000    0      OK
123-55555-2 ERRO    50     ERRO
123-55555-3 -5000    0      OK
123-55555-4 3-50    10     ERRO
123-55555-5 764abc 100     ERRO
123-55555-6 0      150      OK
123-55555-7     0  150      OK
stdout
Resultado: 1
Resultado: 0
Resultado: 1
Resultado: 0
Resultado: 0
Resultado: 1
Resultado: 1
stderr
DEBUG: valor passado: [10000]
DEBUG: valor passado: [ERRO]
DEBUG: valor passado: [-5000]
DEBUG: valor passado: [3-50]
DEBUG: valor passado: [764abc]
DEBUG: valor passado: [0]
DEBUG: valor passado: [0]