fork(3) download
  1. #include <stdio.h>
  2. int main(void) {
  3. int i=0;
  4. int j=0;
  5. int acc = 0;
  6. int pzf = 1;
  7. int pz_prev=0;
  8.  
  9. char str_arr[100] = "}^.>-<~{";
  10.  
  11. int data_arr[10]={0};
  12. data_arr[0]=10;
  13. data_arr[1]=2;
  14.  
  15. while ( str_arr[i] != '\0') {
  16. if(str_arr[i]==',')
  17. scanf("%d", &acc);
  18. if(str_arr[i]=='+')
  19. acc=acc+data_arr[j];
  20. if(str_arr[i]=='-')
  21. acc=acc-data_arr[j];
  22. if(str_arr[i]=='>')
  23. j++;
  24. if(str_arr[i]=='<')
  25. j--;
  26. if(str_arr[i]=='~')
  27. data_arr[j]=acc;
  28. if(str_arr[i]=='^')
  29. acc=data_arr[j];
  30. if(str_arr[i]=='.') {
  31. printf("Output: %d",acc);
  32. printf(" ");
  33. };
  34. if (str_arr[i]=='}')
  35. pz_prev=1;
  36.  
  37. if(str_arr[i]=='?') {
  38. while(str_arr[i] != '!')
  39. i++;
  40. }
  41.  
  42. if (str_arr[i]=='{' && pzf==1 && pz_prev==0) {
  43. while(str_arr[i] != '}')
  44. i++;
  45. }
  46. if (str_arr[i]=='{' && pzf==1 && pz_prev==1) {
  47. while(str_arr[i] != '}')
  48. i--;
  49. }
  50. if(acc>=0){
  51. pzf=1;}
  52. else {
  53. pzf=0;}
  54.  
  55. //printf("i=%d",i);printf(" ");
  56. i++;
  57. }
  58. printf("\n");
  59. for (int k = 0; k<10; k++)
  60. printf("%d ", data_arr[k]);
  61. return 0;
  62. }
Success #stdin #stdout 0s 9424KB
stdin
Standard input is empty
stdout
Output: 10 Output: 8 Output: 6 Output: 4 Output: 2 Output: 0 
-2 2 0 0 0 0 0 0 0 0