Código fuente ilimitado
Bien. Ahora solo necesitamos transferir el estado según el estado y luego según diferentes entradas. Los círculos de doble cara representan estados aceptables, o al final de una cadena, y cuando se alcanzan estos estados, se considera un número entero. ?
Para resumir, podemos darle a estos estados un número entero, suponiendo que de izquierda a derecha y de arriba a abajo son 0, 1, 2, 3, 4 respectivamente, entonces podemos establecer una variable q para registrar el estado actual. Siempre que haya caracteres sin procesar en la cadena de entrada, el valor de q se modificará de acuerdo con el método de transferencia de estado en la figura. Finalmente, si q=3 o 4, entonces la entrada es un número entero.
Por cierto, si los caracteres que introduces no son +, -, 0, 1,...9, puedes introducir el estado 2 directamente.