diff --git a/a1/prog b/a1/prog index 5d6a52f..d731971 100755 Binary files a/a1/prog and b/a1/prog differ diff --git a/a1/program.c b/a1/program.c index 40d70e4..46ce79d 100644 --- a/a1/program.c +++ b/a1/program.c @@ -70,7 +70,7 @@ int main() { } else { char stack[MAX_SIZE]; int top = -1; - for (int i = 0; i < err ; i++) { + for (int i = 0; i < strlen(input) ; i++) { char c = input[i]; if (c == '(' || c == '[' || c == '{' || c == '<') { stack[++top] = c; @@ -86,8 +86,12 @@ int main() { printf("Crossed bracket %c in %d, expected %c\n", c, err-1, getExpectedClosing(stack[top])); } } else { - printf("Missing closing brackets: %c\n", getExpectedClosing(stack[top])); - } + printf("Missing closing brackets: "); + for (int i = top; i > -1; i--) { + printf("%c", getExpectedClosing(stack[i])); + } + printf("\n"); + } } } else { printf("Error reading input\n");