QBASIC

En el artículo de hoy vamos a profundizar en el tema de QBASIC, explorando sus implicaciones, características y posibles aplicaciones. QBASIC es un tema que ha sido objeto de interés y debate en diversos ámbitos, generando opiniones encontradas y desafiando conceptos establecidos. A lo largo de este artículo, nos adentraremos en la historia de QBASIC, analizaremos su relevancia en la actualidad y examinaremos su impacto en diferentes contextos. Además, nos detendremos en las distintas perspectivas que existen en torno a QBASIC, ofreciendo una visión panorámica que permita comprender la complejidad de este tema. Con una mirada crítica y enriquecedora, abordaremos las múltiples facetas de QBASIC, con el objetivo de enriquecer el conocimiento y fomentar una reflexión profunda sobre su significado y trascendencia.

QBasic
Desarrollador(es)
Microsoft
Información general
Paradigma Programación por procedimientos
Apareció en 1991
Influido por QuickBASIC, GW-BASIC
Ha influido a QB64, Small Basic
Sistema operativo MS-DOS, Windows 95, Windows 98, Windows Me, PC DOS, OS/2, eComStation
Licencia Parte del sistema operativo (una variedad de licencia de código cerrado)

QBasic es un entorno de desarrollo integrado y un Intérprete para una variante del lenguaje de programación BASIC basada en el compilador QuickBASIC. El código introducido en el IDE es compilado a una forma intermedia, y esta es inmediatamente interpretada en demanda dentro del IDE.​ Puede correr bajo casi todas las versiones del DOS y de Windows, o con DOSBox/DOSEMU, en Linux y FreeBSD.​ En su tiempo, QBasic proveyó de un IDE avanzado, incluyendo un depurador con características tales como evaluación de expresiones y modificación del código velozmente. El entorno de desarrollo de QBASIC incluye varias características aún raras en entornos de desarrollo actuales.

Al igual que QuickBASIC, pero a diferencia de versiones anteriores del Microsoft BASIC, el QBasic es un lenguaje de programación estructurada, soportando construcciones tales como subrutinas y bucles while.​ los números de líneas, un concepto a menudo asociado al BASIC, son soportados para la compatibilidad, pero no se considera una buena forma, siendo reemplazados por etiquetas descriptivas.​ QBasic tiene limitado soporte para los tipos de datos definidos por el usuario (estructuras), y varios tipos primitivos usados para contener strings de texto o datos numéricos.

QBASIC fue también utilizado para enseñar programación a personas que no tenían mucho conocimiento de lo que es la programación.

Historia

QBasic fue creado en 1991 con el objeto de reemplazar al BASICA y GW-BASIC como un lenguaje de programación para el usuario final. Fue basado en el anterior compilador QuickBASIC 4.5 pero sin los elementos del compilador y del enlazador del QuickBASIC. La versión 1.0 fue despachada junto con el MS-DOS 5.0 y posteriores, así como con Windows 95, Windows NT 3.x, y Windows NT 4.0. IBM recompiló el QBasic y lo incluyó en PC-DOS 5.x, así como desde el OS/2 2.0 en adelante.​ El eComStation, descendiente del código del OS/2, incluye el QBasic 1.0. El QBasic 1.1 es incluido con el MS-DOS 6.x, y, sin el EDIT, en Windows 95, Windows 98 y Windows Me.

Microsoft lo incluyó como opcional en los discos de instalación de Windows 95 y Windows 98, incluido en el paquete olddos.exe, pero dejó de distribuir QBASIC en siguientes versiones de Windows. Comenzando con Windows 2000, Microsoft ya no incluye QBasic.​ (Sin embargo, algunas versiones localizadas del Windows 2000 y Windows XP todavía lo tienen, y puede ser entregado como freeware). Actualmente es distribuido únicamente a través del sitio web de Microsoft para usuarios con licencia de uso de MS-DOS.

QBasic (así como el MS-DOS Editor incorporado) es compatible hacia atrás con los lanzamientos del DOS antes de 5.0 (hasta por lo menos el DOS 3.20). Sin embargo, si es usado en cualquier computador de 8088/8086, o en algunos computadores 80286, el programa QBasic puede correr muy lentamente, o quizás en absoluto, debido a su tamaño en la memoria. Hasta el MS-DOS 7, el MS-DOS Editor requería al QBasic. El programa "edit.com" simplemente comienza QBasic en modo de edición solamente, y este modo puede también ser entrado corriendo QBASIC.EXE con el swiche /EDIT (es decir, la línea de comando "QBASIC /EDIT").

Con posterioridad han aparecido productos que continuaban el estándar QBASIC/QuikBASIC, entre ellos el PowerBASIC, el FreeBASIC y el QB64/QB32.

Ejemplos

Los ejemplos que se pueden presentar de programas escritos en este lenguaje son muchos, veamos algunos que nos permiten ver el formato de este lenguaje de programación.

Ejemplos que vienen con el QBasic

QBasic vino completo con cuatro programas de ejemplo escritos de antemano. Estos eran "Nibbles" (una variante del juego Snake), "gorilas", un juego de artillería, "MONEY MANAGER", manejador de finanzas personales y un "RemLine", un programa removedor de número de líneas para código de GW-BASIC.

Hola mundo

El siguiente es un muy sencillo programa de "hola mundo" escrito en QBASIC:

PRINT "Hola Gente"
INPUT "Ingrese Su Nombre: "; Nombre$
PRINT "Su Nombre es: " + Nombre$
 'Esto es un comentario

Ecuación de segundo grado

Programa para resolver una ecuación de segundo grado:

CLS
PRINT " Resolución de una ecuación de segundo grado"
PRINT " Ax^2 + Bx + C = 0"
PRINT
INPUT " Coeficiente A: ", A
INPUT " Coeficiente B: ", B
INPUT " Coeficiente C: ", C
PRINT
IF A = 0 THEN
    REM A = 0
    IF B = 0 THEN
        REM A = 0 Y B = 0
        IF C = 0 THEN
            REM A = 0, B = 0 Y C = 0
            PRINT " Sin ecuación"
        ELSE
            REM A = 0, B = 0, C <> 0
            PRINT C; "= 0, Imposible"
        END IF
    ELSE
        REM A = 0, B <> 0
        PRINT " Ecuación de primer grado"
        PRINT " X="; -C / B "
    END IF
ELSE
    REM A <> 0
    D = B ^ 2 - 4 * A * C
    IF D > 0 THEN
        REM A <> 0, D > 0
        PRINT " Dos soluciones reales"
        PRINT " X1="; (-B + SQR(D)) / (2 * A)
        PRINT " X2="; (-B - SQR(D)) / (2 * A)
    ELSE
        REM A <> 0, D <= 0
        IF D = 0 THEN
            REM A <> 0, D = 0
            PRINT " Solución real única"
            PRINT " X1=X2="; -B / (2 * A)
        ELSE
            REM A <> 0, D < 0
            R = -B / (2 * A)
            I = ABS(SQR(-D) / (2 * A))
            PRINT " Raíz compleja"
            PRINT " X1= "; R; "+"; I; "i"
            PRINT " X2= "; R; "-"; I; "i"
        END IF
    END IF
END IF

Este programa contempla el siguiente árbol de decisión:

Resolviendo en cada caso los valores de x que cumplen la ecuación, se emplea la instrucción IF para seleccionar el caso concreto y realiza las operaciones oportunas, presentando según el caso la solución de x que cumple la ecuación, contemplándose casos extremos como: a=0, b=0, c=0.

Véase también

Referencias

  1. a b c «Differences Between GW-BASIC and QBasic». 12 de mayo de 2003. Consultado el 28 de junio de 2008. 
  2. «HOWTO Play With Your Old QBasic Programs on Linux». 31 de marzo de 2007. Archivado desde el original el 18 de noviembre de 2009. Consultado el 28 de junio de 2008. 
  3. «QBASIC Manual: SUB...END SUB Statement QuickSCREEN». Archivado desde el original el 7 de octubre de 2008. Consultado el 28 de junio de 2008. 
  4. «QBASIC Manual: WHILE...WEND Statement QuickSCREEN». Archivado desde el original el 4 de marzo de 2009. Consultado el 28 de junio de 2008. 
  5. «QBASIC Manual: TYPE Statement QuickSCREEN». Archivado desde el original el 24 de marzo de 2017. Consultado el 28 de junio de 2008. 
  6. «QBASIC Manual: Limits - Names, Strings, and Numbers». Archivado desde el original el 4 de marzo de 2016. Consultado el 28 de junio de 2008. 
  7. «Microsoft BASIC version information». Consultado el 12 de junio de 2008. 
  8. «QBasic Missing from Windows 2000». 1 de marzo de 2007. Consultado el 12 de junio de 2008. 
  9. Stephane Richard (16 de noviembre de 2007). «In The News». PCOPY! Issue #50. Basic Programming. Archivado desde el original el 21 de diciembre de 2009. Consultado el 17 de agosto de 2008. 

Bibliografía

  1. García Merayo, Félix; Alcalde Lancharro, Eduardo (4 de 1998). Programación básica con Logo y QBasic : (guía práctica para estudiantes) (1 edición). McGraw-Hill / Interamericana de España, S.A. p. 64. ISBN 978-84-481-1441-1. 
  2. Ceballos Sierra, Fco. Javier (7 de 1996). De QBasic a Visual Basic. Ra-Ma, Librería y Editorial Microinformática. p. 384. ISBN 978-84-7897-232-6. 
  3. Joyanes Aguilar, Luis (6 de 1994). Programación en QuickBasic, QBasic (2 edición). McGraw-Hill / Interamericana de España, S.A. p. 736. ISBN 978-84-481-1887-7. 
  4. Ceballos Sierra, Fco. Javier (1 de 1992). Curso de programación QBasic y MS-DOS 5. (1 edición). Ra-Ma, Librería y Editorial Microinformática. p. 560. ISBN 978-84-7897-059-9. 
  5. Moldes Teo, Francisco Javier (9 de 1991). QBasic (1 edición). Anaya Multimedia-Anaya Interactiva. p. 272. ISBN 978-84-7614-343-8. 

Enlaces externos