Red de conocimiento informático - Problemas con los teléfonos móviles - Cómo escribir la suma VBS. Quiero implementar a+b, el resultado es el resultado de la conexión de a y b. Nota: No utilice el método de tomar el valor absoluto.

Cómo escribir la suma VBS. Quiero implementar a+b, el resultado es el resultado de la conexión de a y b. Nota: No utilice el método de tomar el valor absoluto.

¿Por qué es diferente? c=(a+b)*2 y c=a*2+b*2 son equivalentes en matemáticas y también son equivalentes en VBS. El problema radica en "+". En VBS, + no solo significa un signo más, sino que también significa conectar dos cadenas, como "Hola "+"Mundo"="HolaMundo", ¿entiendes? ¿Recuerda el valor de retorno de la función InputBox? ¿Recuerdas el valor de retorno de la función InputBox? Esto ilustra un problema en programación, "1" no es igual a (<>) 1. "1" es un carácter y 1 es un número, por lo que a y b son variables de cadena, "1"+"2". = "12", esto es como cuando bromeamos con nuestros amigos y les preguntamos 1+1=? Siempre nos reímos y decimos: "No, son las 11". Pero ¿por qué puede aparecer un *2 sin error? Esta es una de las actuaciones más inteligentes de VBS. Si el contenido de la cadena es un número y se realizan operaciones matemáticas en él, la cadena se verá obligada a convertirse en un número para participar en la operación. , no participará en operaciones matemáticas. Participa en la operación (fusión) como una cadena, por lo que ves a + b = 12. En este momento, el resultado de a + b (12) es una cadena. multiplicado por 2, será un String, resultado de a + b = 12, al multiplicarlo por 2, será un string. Cuando se multiplica por 2, se fuerza al número 12, dando el resultado 24.

¿Cómo modificar este programa? Necesitamos usar otra función incorporada: int. La función int es una función que convierte el valor de entrada en un valor entero. La modificamos así:

c=(int(a)+int. (b))*2

Esto significa pasar a como parámetro a la función int, la función int devolverá el número entero (su valor de entrada) y luego dejará que el valor de retorno participe en el cálculo, por lo que obtienes la respuesta correcta. Por lo tanto, si usa la función inputbox en el futuro, es mejor usar una declaración int para el procesamiento: por ejemplo, c=int(c) 'c es su propia variable

Además, hay otra función: CDbl. Si desea convertir caracteres en números pero no usar números enteros cuando use:

Dim a,b,c,d,e

a= inputbox("a is:" , " Radio de entrada")

b=inputbox("b es:", "Radio de entrada")

c=CDbl(a)

d= CDbl( b)

e=(c+d)*2

msgbox (e)

Ingresas 1. 2, y cuando ingresas 1, 5 es salida. 3.

El ejemplo anterior también se puede escribir sintéticamente:

Dim a,b

a=CDbl(inputbox("a is:", "radio de entrada "))

b=CDbl(inputbox("b es:", "radio de entrada"))

Msgbox (a+b)*2

Cuando ingresas 1.2, 1.3, pero para aquellos que han estado estudiando EBV por un tiempo, esto es mejor.