fork(1) download
  1. #include <stdio.h>
  2. #include <stdlib.h>
  3. #include <math.h>
  4. #include <string.h>
  5.  
  6. #define tam_max 256
  7.  
  8. int recebe(char principal[tam_max]) {
  9. int erro = 0;
  10. setbuf(stdin, NULL);
  11. fgets(principal, tam_max, stdin);
  12. for (int i = 0; i < strlen(principal); i++) {
  13. if (principal[0] == '\n') {
  14. erro++;
  15. } else if ( principal[i] == '+' || principal[i] == '-' ||
  16. principal[i] == '*' || principal[i] == '/' ||
  17. principal[i] == '=' || principal[i] == '^' ||
  18. principal[i] == 'i' || principal[i] == 'p' ||
  19. principal[i] == '0' || principal[i] == '1' ||
  20. principal[i] == '2' || principal[i] == '3' ||
  21. principal[i] == '4' || principal[i] == '5' ||
  22. principal[i] == '6' || principal[i] == '7' ||
  23. principal[i] == '8' || principal[i] == '9' || principal[i] == '\n') {
  24. erro = 0;
  25. } else {
  26. erro++;
  27. }
  28. }
  29. return erro;
  30. }
  31.  
  32. void divide() {
  33. printf("OK ate aqui\n");
  34. }
  35.  
  36. void validaDados() {
  37. int verifica = 0;
  38. char principal[tam_max];
  39. verifica = recebe(principal);
  40. printf("%s\n", principal);
  41. if (verifica > 0) {
  42. printf("\nCaracteres invalidos inseridos. Por favor, tente novamente.\n\n");
  43. validaDados();
  44. }
  45. if (verifica == 0) {
  46. divide();
  47. }
  48. }
  49.  
  50. int main() {
  51. validaDados();
  52. }
Success #stdin #stdout 0s 2168KB
stdin
teste de texto
stdout
teste de texto

OK ate aqui