varias tres respuestas pruebas logicas funcion ejemplos conjunto condiciones con buscarv aparece anidada if-statement nested gw-basic

if-statement - tres - funcion si y excel



Anidado SI... ENTONCES... ELSE en GW-BASIC (2)

IF Average >= 40 AND Average <= 49 THEN Grade$ = "E" ELSE Grade$ = "F"

Debido a que esta línea IF THEN ELSE siempre asignará un valor a Grade $ (sin importar el contenido de Average ), todas las IF THEN anteriores no cuentan por mucho.

La solución, sin embargo, es muy, muy simple . No use la cláusula ELSE y proporcione el valor predeterminado "F" de Grado $ para comenzar. De esta forma, solo si todas esas condiciones se evalúan como falsas, el programa devolverá "Grade is: F".

Grade$ = "F" IF Average >= 80 AND Average <= 100 THEN Grade$ = "A" IF Average >= 70 AND Average <= 79 THEN Grade$ = "B" IF Average >= 60 AND Average <= 69 THEN Grade$ = "C" IF Average >= 50 AND Average <= 59 THEN Grade$ = "D" IF Average >= 40 AND Average <= 49 THEN Grade$ = "E" PRINT "Average is: ", Average PRINT "Grade is: ", Grade$

Uso el siguiente bloque de código para probar algunas condiciones en el programa gw-basic .

IF Average >= 80 AND Average <= 100 THEN Grade$ = "A" IF Average >= 70 AND Average <= 79 THEN Grade$ = "B" IF Average >= 60 AND Average <= 69 THEN Grade$ = "C" IF Average >= 50 AND Average <= 59 THEN Grade$ = "D" IF Average >= 40 AND Average <= 49 THEN Grade$ = "E" ELSE Grade$ = "F" PRINT "Average is: ", Average PRINT "Grade is: ", Grade$

Siempre imprime Grade is: F cualquiera que sea el valor de À promedio.

¿Cuál es el error en este programa gw-basic?


supongamos que la línea promedio de impresión es la línea número 70, por lo que después de cada línea, excepto la línea ELSE, escriba GOTO 70. Intente si eso funciona.