Grabar hacer problema aritmético entró en boxes

En primer lugar con conexión directa a la pregunta original:

Descripción del problema

  programa de cálculo de simulación, son secuencialmente comando de entrada, hay comandos pueden contener


  1. Digital: 'NUM X', X es un alfanumérico y sólo contiene una cadena de caracteres, esto representa un hexadecimal
  2. Las instrucciones de funcionamiento: ' ADD '' SUB '' MUL '' DIV '' MOD ' respectivamente, resta, multiplicación, división toma proveedor, la división de módulo
  3. la instrucción de conversión binaria:' cAMBIO K', la corriente se convierte en hexadecimal K-banda (2≤K≤36)
  instrucción de salida 4.: EQUAL, la salida de corriente binaria
  5. orden de reinicio: 'CLEAR', corriente clara


  instrucción se da de acuerdo a las siguientes reglas:
  figuras, no instrucción de la operación administra de forma continua comando de conversión binaria, el orden de salida, es posible rearmar continuamente instrucción dada
  instrucción de la operación después del primer número, representa un número involucrados en el cálculo. Sin producir instrucción de ejecución de orden de salida y la instrucción de operación y el intermedio digital
  el primer número después de la instrucción de restablecimiento, que representa el valor de base. Y la instrucción de ejecución de orden de salida y la instrucción de reinicio y no aparecen en las primeras digitales intermedios
  instrucciones de conversión binarios pueden aparecer en cualquier parte del


  proceso de cálculo de las variables intermedias son enteros no negativos, y menos de 2 ^ 63.
  Con un capital 'A' ~ 'Z' representa del 10 al 35

Formato de entrada

  Línea 1: 1 n, el número de instrucciones de
  una primera 2..n + 1 filas: una instrucción se da para cada fila. Una cierta secuencia de instrucciones a 'claro' como punto de partida, y la regla de instrucciones satisfacer

Formato de salida

  Los resultados se dan en la secuencia 'EQUAL' obtienen cada vez

entrada de la muestra

7
BORRAR
NUM 1024
CAMBIO 2
ADD
NUM 100.000
CAMBIO 8
EQUAL

Ejemplo de salida

2040

1, la retención CLARO binario después de la configuración actual, los números claros solo.

2, cualquier binario decimal a su vez, deben tenerse en cuenta aprobada en valor es cero, si es negativo, y se convierte ascill digital con código 0 0 ascill código de texto no es la misma necesidad de c = c + '0'; (c: número entero dígitos).

3, cuando el texto de búsqueda con la string.find (xx)! = Errores String.npos causa lógica, escritura, el valor de la entrada NUM, tales como 36 hexadecimal, siempre y cuando el texto de entrada que contiene el operador, ADD, SUB, MUL, DIV, MOD estos valores cuando no será un error lógico, pero no realizar la operación al modo de funcionamiento conjunto. Ah estúpida, antes de escribir el proyecto es determinar los resultados de palabras clave de texto básicos, no es tan precisa, los resultados de hoy en día este mal hábito se manifiesta, correcta. . . La postura correcta debe ser el primero en encontrar un espacio, y luego dividir el texto en primer lugar, y luego determinar la acción apropiada dejó palabras clave, en lugar de hacerlo directamente string.find. 

Publicado 18 artículos originales · ganado elogios 8 · Vistas a 30000 +

Supongo que te gusta

Origin blog.csdn.net/qq_20408397/article/details/83684460
Recomendado
Clasificación