koyama

#include <stdio.h>

省略

getNextState( &state, kind );
if( state == ERROR) {
printf("\n'%c'Error", *equation);
break;
}
separation =0;
}
if( *epuation == NULL) break;
printf("%c", *equation);
equation++;
}
}

char
getKindOfCode(char mode)
{
if(code>='A' && code <= 'Z' || code >='a' && code<='z'){
return ALPHABET;
}
if(code == '.'){
return DECIMAL_POINT;
}
if(code == ';'){
return DELIMITER;
}
if(code == ':'){
return EQUAL_BEGIN;
}
if(code == '='){
return EQUAL_END;
}
if(code >= '0' && code <= '9'){
return NUMBER;
}
if(code == '+' && code == '-' && code == '*' && code == '/'){
return OPERATOR;
}
if(code == ' '){
return WHITE_SPACE;
}
return OTHERS;
}

char
getNextState(char* state, char kind)
{
char flag=0;
switch( *state) {
case NOTHING;
*1157665839* state = ERROR;
if(  kind == ALPHABET) *state == VARIAVLE;
if( kind == OPERATOR || kind == EQUAL_BEGIN) *state = OPERATOR:
if( kind == NUMBER *state == CONSTANT;
if( kind == DELIMITER) *state = DELIMITER;
break;
case VARIABLE:
if( kind != ALPHABET && kind != NUMBER) {
flag = 1;
*1157665840*state = NOTHING;
}
break;

case OPERATOR:
if( kind != OPERATOR && kind != EQUAL_END) {
flag = 1;
*1157665841*state = NOTHING;
}
break;
case CONSTANT
if( kind != NUNBER && kind !=DECIMAL_POINT ) {
flag = 1;
*1157665842*state = NOTHING;
}
break;

case DELIMITER: 
flag = 1;
*1157665843*state = NOTHING;
break;

return flag;
}