計算アルゴリズム【�U】
■ このスレッドは過去ログ倉庫に格納されています
0028デフォルトの名無しさん
2005/10/16(日) 08:38:01char op[] = "1234+*+"; // (1+(2*(3+4)))
int stack[100];
for (int i = 0, top = 0, d; i < strlen(op); ++i)
switch (op[i]) {
case '+':
d = stack[--top];
d += stack[--top];
stack[top++] = d;
break;
case '*':
d = stack[--top];
d *= stack[--top];
stack[top++] = d;
break;
default:
stack[top++] = op[i] - '0';
}
printf("%d\n", stack[0]);
■ このスレッドは過去ログ倉庫に格納されています