Обновить cv3/program.c
This commit is contained in:
parent
863f360310
commit
85f66425f9
@ -51,7 +51,7 @@ int main() {
|
|||||||
|
|
||||||
if (c == '\n' && *bufer != '\n' && *bufer != ' ') {
|
if (c == '\n' && *bufer != '\n' && *bufer != ' ') {
|
||||||
push(&stek, chislo);
|
push(&stek, chislo);
|
||||||
} else if (c == '+') {
|
} else if (c == '+' || c == '-' || c == '*' || c == '/') {
|
||||||
if (isEmpty(&stek)) {
|
if (isEmpty(&stek)) {
|
||||||
printf("no input\n");
|
printf("no input\n");
|
||||||
exit(1);
|
exit(1);
|
||||||
@ -62,47 +62,19 @@ int main() {
|
|||||||
exit(1);
|
exit(1);
|
||||||
}
|
}
|
||||||
double a = pop(&stek);
|
double a = pop(&stek);
|
||||||
push(&stek, a + b);
|
if (c == '+') {
|
||||||
} else if (c == '-') {
|
push(&stek, a + b);
|
||||||
if (isEmpty(&stek)) {
|
} else if (c == '-') {
|
||||||
printf("no input\n");
|
push(&stek, a - b);
|
||||||
exit(1);
|
} else if (c == '*') {
|
||||||
|
push(&stek, a * b);
|
||||||
|
} else if (c == '/') {
|
||||||
|
if (b == 0) {
|
||||||
|
printf("division by zero\n");
|
||||||
|
return 0;
|
||||||
|
}
|
||||||
|
push(&stek, a / b);
|
||||||
}
|
}
|
||||||
double b = pop(&stek);
|
|
||||||
if (isEmpty(&stek)) {
|
|
||||||
printf("no input\n");
|
|
||||||
exit(1);
|
|
||||||
}
|
|
||||||
double a = pop(&stek);
|
|
||||||
push(&stek, a - b);
|
|
||||||
} else if (c == '*') {
|
|
||||||
if (isEmpty(&stek)) {
|
|
||||||
printf("no input\n");
|
|
||||||
exit(1);
|
|
||||||
}
|
|
||||||
double b = pop(&stek);
|
|
||||||
if (isEmpty(&stek)) {
|
|
||||||
printf("no input\n");
|
|
||||||
exit(1);
|
|
||||||
}
|
|
||||||
double a = pop(&stek);
|
|
||||||
push(&stek, a * b);
|
|
||||||
} else if (c == '/') {
|
|
||||||
if (isEmpty(&stek)) {
|
|
||||||
printf("no input\n");
|
|
||||||
exit(1);
|
|
||||||
}
|
|
||||||
double b = pop(&stek);
|
|
||||||
if (isEmpty(&stek)) {
|
|
||||||
printf("no input\n");
|
|
||||||
exit(1);
|
|
||||||
}
|
|
||||||
double a = pop(&stek);
|
|
||||||
if (b == 0) {
|
|
||||||
printf("division by zero\n");
|
|
||||||
return 0;
|
|
||||||
}
|
|
||||||
push(&stek, a / b);
|
|
||||||
} else if (isalpha(c)) {
|
} else if (isalpha(c)) {
|
||||||
printf("bad input\n");
|
printf("bad input\n");
|
||||||
return 0;
|
return 0;
|
||||||
|
Loading…
Reference in New Issue
Block a user