Nativo / Caso práctico interactivo / 18 min de lectura

Windows Calculator: ¿por qué 200 + 10% es igual a 220?

Usa REA para investigar la tecla de porcentaje de Windows Calculator. Compara la suma y la multiplicación, inspecciona la bifurcación y prueba una demostración con dos operandos.

En esta página

01. Probar antes de desmontar

Deja los números en 200 y 10. Pulsa Aplicar %: el segundo número pasa a 20. Pulsa Después = para obtener 220. Cambia a multiplicación y repite: el segundo número pasa a 0.1 y el resultado final es 20.

El experimento del porcentajeJUGAR / OBSERVAR / EXPLICAR
MODO ESTÁNDAR / PORCENTAJE01 / INTRODUCIR

200 + 10%

10

Pulsa % para ver qué ocurre con el segundo número.

Prueba la suma y después la multiplicación con los mismos dos números.

Un experimento de porcentaje con dos operandos, no un emulador completo de Windows Calculator.

Qué vas a construir

Un experimento de porcentaje con dos operandos y una matriz de pruebas que comprueba tanto el estado intermedio como el resultado final.

Antes de la investigación

El laboratorio no requiere configuración. Para inspeccionar el binario, usa una instalación de Windows Calculator que puedas inspeccionar y un proveedor nativo configurado. El código público de Microsoft ofrece una comprobación adicional. Configurar REA →

02. Anotar la secuencia de botones

Plantea una pregunta precisa: ¿qué ocurre cuando el usuario introduce 200, elige suma, introduce 10, pulsa porcentaje y después igual? Registra lo que aparece tras pulsar porcentaje y también igual. El operando intermedio aporta más información que el resultado final por sí solo.

Este comportamiento corresponde al modo estándar. Incluye el modo, la versión y la secuencia de teclas en el registro de pruebas. Repetir igual, omitir un operando o pulsar porcentaje por segunda vez introduce estados adicionales; déjalos fuera del primer experimento.

Copiar esta instrucción de investigación
Investiga con REA el comportamiento del porcentaje en el modo estándar de Windows Calculator. Compara las secuencias 200 + 10 % = y 200 × 10 % =. Identifica qué módulo instalado gestiona la aritmética y sigue después la rama del porcentaje y la transformación del operando según el operador. Distingue las instrucciones observadas, la interpretación del código fuente y los resultados reales de introducción de datos en la interfaz gráfica.

03. El lanzador puede no contener el cálculo

No basta con abrir un ejecutable cuyo nombre parezca apropiado. Si delega en otra aplicación, sigue esa transferencia hasta el paquete instalado. Registra el archivo que realmente analizaste y su hash.

En la investigación del proyecto original, la aritmética estaba en CalcViewModel.dll, no en el pequeño lanzador calc.exe. El informe utilizó una selección de funciones asistida por un analista. La referencia al código público de Microsoft ayudó a interpretar los identificadores de operadores; no se demostró que correspondiera al commit exacto del código fuente del binario instalado.

  • ¿Qué archivo contiene la rama aritmética?
  • ¿Qué selecciona el porcentaje y qué registra el operador anterior?
  • ¿Dónde se almacenan el valor anterior y la entrada actual?
  • ¿A qué funciones aritméticas auxiliares llega cada rama?

04. Reconstruir primero la transformación del operando

En la suma y la resta, el porcentaje introducido es relativo al primer número. En la multiplicación y la división, se convierte en una fracción de 100. El operador pendiente se aplica después. Mantén separadas ambas etapas en la implementación y en la interfaz.

Nuestro laboratorio exige pulsar porcentaje e igual por separado para que puedas ver ese cambio de estado. Editar cualquiera de las entradas o cambiar de operador inicia una secuencia nueva. Acepta dos números finitos, no una expresión arbitraria de calculadora.

Copiar esta instrucción de investigación
Implementa únicamente este comportamiento de porcentaje con dos operandos en modo estándar: + y − transforman la entrada en entrada × (primero / 100); × y ÷ la transforman en entrada / 100. Conserva el operando transformado para las pruebas. Aplica el operador pendiente solo al pulsar igual. Gestiona la división entre cero, las entradas vacías y el restablecimiento. No afirmes compatibilidad con pulsaciones repetidas ni con el modo científico.

05. Probar el valor intermedio, además del resultado

A veces dos errores se compensan y producen el resultado final esperado. Comprueba primero el operando transformado y después el resultado. Incluye resta, división, cero y un primer número negativo para que las pruebas no puedan superarse fijando en el código el conocido ejemplo de suma.

Si una nueva ejecución en Windows arroja un resultado diferente, comprueba el modo y el orden exacto de entrada antes de revisar la fórmula. Guarda la secuencia de teclas y los estados de la pantalla. El informe original no afirmó haber completado una comprobación de entrada en la interfaz gráfica original de Windows; no la des por hecha.

06. Comparar resultados conocidos

Úsalos como puntos de comprobación explícitos. Coincidir con ellos respalda esta pequeña regla; no demuestra compatibilidad con toda la aplicación.

Secuencia de teclasDespués de %Después de =
200 + 10 % =20220
200 − 10 % =20180
200 × 10 % =0.120
200 ÷ 10 % =0.12000
50 + 20 % =1060
6 × 6 % =0.060.36
200 ÷ 0 % =0No definido

Guarda ambos archivos en la misma carpeta. Ejecuta las comprobaciones con Node.js; no es necesario instalar paquetes.

Terminal
node check-case-labs.mjs

07. ¿Qué se verificó realmente?

Este sitio ejecuta pruebas numéricas de su propia implementación con dos operandos, incluidos los ejemplos publicados por Microsoft. No ejecuta la batería de pruebas de Microsoft ni automatiza la aplicación instalada en Windows. La repetición de porcentaje o igual, el análisis de expresiones completas y el modo científico quedan fuera de la demostración.

Consultar los resultados numéricos de pruebas registrados por este sitio →

Fuentes: Informe de pruebas de la calculadora de REA · Rama del porcentaje de Microsoft en una versión fijada. Tutorial, ilustraciones y experimentos de navegador de autoría independiente.

Siguiente experimento¿Por qué el dinosaurio va cada vez más rápido? →

¿Acabas de conocer la herramienta? ¿Qué es REA? · Cómo revisamos nuestras guías