martes, 16 de junio de 2009

QBasic es una herramienta de programación basada en SCRIPTS, es decir, programas que contienen instrucciones en un lenguaje natural, las cuales son traducidas al lenguaje de máquina (código de bytes) necesario para su ejecución, sin una traducción previa. Cuando se ejecuta QBasic aparece una ventana sobre la cual se puede escribir los programas, abrir programas ya creados, modificarlos y ponerlos a correr. También se puede ejecutar sentencias u instrucciones para que el computador realice inmediatamente.



lunes, 15 de junio de 2009

Lo QuE eS QBASIC

Qbasic es un entorno de programación constituido por un editor que permite convertir la computadora en una maquina de escribir, sofisticada para construir programas fuente, un gestionador de archivos (en el caso del PC, el propio sistema operativo),un compilador de lenguaje y un depurador para corrección de errores. El editor interactivo es la pieza central de Qbasic. Es un editor que verifica la sintaxis de cada línea tan pronto se teclea. Si la sintaxis es correcta, se traduce la línea inmediatamente al código ejecutable; en caso contrario, aparece una descripción del error. Como cada línea se traduce a código ejecutable (.BAS) en el momento de introducción, se puede inmediatamente corregir y capturar la mayoría de los errores. No se precisa esperar a la compilación (.EXE) después de que se haya terminado la edición, el programa esta preparado para su ejecución. Qbasic incorpora un depurador interactivo. Se puede detener un programa en cualquier punto, editar el programa y reanudar la ejecución en el punto en que se detuvo. En Qbasic se puede crear de modo fácil y rápido versiones de programas (.EXE) que se ejecutan directamente desde el DOS. Cabe resaltar que el Qbasic es un lenguaje de alto nivel.

Comandos de QBASIC

Los Comandos se encuentran en la "Barra de Menú" de la pantalla de QBasic.Un programa se compone de grupos de comandos (Instrucciones) que les damos al computador, los comandos en QBASIC se escriben después de un número de ubicación.Empecemos con el comando PRINT, éste comando es él mas usado en Qbasic, ya que es el que pone cualquier tipo de información en la pantalla,escribamos el ejemplo:10 PRINT " EPA "20 END La función END lo que hace es terminar el programa,ahora para colocar el texto en una determinada parte de la pantalla (por que si ponemos solo PRINT "epa" vamos a ver el texto en la esquina de arriba de la pantalla), eso se hace con el comando "LOCATE No de fila,No de columna" y en el ejemplo pueden ver como funciona:10 LOCATE 9,1320 PRINT "SEGUNDO EPA"30 END Es obvio que no vamos a estar siempre mostrando textos en la pantalla, muchas veces lo que queremos es dar a conocer datos, números y cadenas de caracteres (palabras y frases), aquí entramos a ver las VARIABLES, las variables se pueden dividir en dos grupos: numéricos y de caracteres, las variables son declaradas (se les da un valor) a través de un nombre y un valor, para ver lo mas claramente vean el ejemplo:10 CLS20 numero=22000030 palabra$="INFORMATICA"40 LOCATE 7,750 PRINT " Costo de Inscripcion "; numero60 LOCATE 8,770 PRINT" Estudiante de: "; palabra$80 END

El Comando "CLS" limpia la pantalla de los "EPA" anteriores, las variables de caracteres van precedidas por un signo $ y su contenido debe ir entre comillas. También hay un comando muy importante que nos permite poner comentarios en nuestros programas este comando es REM y su uso es muy fácil, ejemplo:10 PRINT"EPA":REM lo que hace esta línea es poner EPA en la pantalla 20 ENDSe fijaron que lo que va después del REM no importa, eso del REM nos permite poner frases que nos ubiquen y recuerden cosas que luego se nos puedan olvidar. Otro comando importante en QBASIC es "INPUT", y lo que hace es pedir una información al usuario para luego darle un nombre al dato introducido, ejemplo:10 INPUT"Cual es tu nombre ?",nombre$20 LOCATE 7,7 :PRINT"TU NOMBRE ES ";nombre$30 ENDSi te fijaste en este programa puse el LOCATE y el PRINT en una sola línea, lo único que hay que hacer para poner dos o más comandos juntos son separarlos por un :. Ahora les explico una función que especifica el tipo de pantalla que vamos a ocupar, las que voy a explicar son solo las dos más importantes que admite QBASIC, estas son 640*480 (con 16 colores ) que se especifica a través de la función SCREEN 12 y la pantalla de 320*240 (con 255 colores ) que se especifica con SCREEN 13, para ver cómo funciona aquí va el ejemplo :10 SCREEN 1220 PRINT"EPA"30 ENDEjemplo 2:10 SCREEN 1320 PRINT"EPA"30 ENDSi se dan cuenta en SCREEN 13 el texto se ve mas grande, el único inconveniente de usar el SCREEN 13 es que la mayoría de los compiladores no lo aguanta así que mejor vamos a trabajar con el SCREEN 12.Para poder dar color a nuestros textos se ocupa el comando COLOR (x), para poder ocupar este comando primero tenemos que poner SCREEN 12, tal y como se ve en el código de ejemplo:10 SCREEN 1220 FOR A=1 TO 1530 COLOR A40 PRINT"EL NUMERO DE ESTE COLOR ES",A50 NEXT60 ENDEn este código usamos algo nuevo (FOR, NEXT), y significa que se realizara "algo" desde que A=1 hasta A=15.Ese "algo" que realiza son las instrucciones que están entre donde dice FOR y donde dice NEXT tantas veces desde 1 hasta 15, para que se entienda mejor ahí va un ejemplo con su explicación:10 CLS20 FOR S=1 TO 1030 PRINT" 2 * ";S40 NEXT50 ENDAquí se ve que el PRINT ejecuta 10 veces(1-10) la primera vez S vale 1, luego 2 y así sucesivamente hasta que valga 10 y luego sigue con la línea que le sigue al NEXT, en este caso la línea 50 (END).En tu pantalla aparecera esto:2*12*22*32*42*52*62*72*82*92*10
¿ Que? Y los resultados!!!!!No te desesperes,copiate del siguiente y ejecutalo.Pero mas importante.......... RAZONALO!!!!!!10 CLS20 FOR S=1 TO 1030 PRINT" 2 * "; S; "="; 2*S40 NEXT50 ENDSi es que se fijaron, todos estos programas se acaban apenas se ejecutan, por lo cual si queremos detener el programa en alguna parte hasta que el usuario apriete una tecla, solo tiene que poner el comando INPUT$, este comando tiene la siguiente forma:Variable$=INPUT$(cantidas_de_teclas_a_recibir)Y ahora el ejemplo:10 CLS20 PRINT" presiona una tecla para continuar"30 A$=INPUT$(1)40 PRINT"ya la presionaste"50 END Debemos destacar que esta función sirve también para saber que teclas fueron apretadas, ya que la cantidad de teclas a presionar quedan asignadas a la variable A$ ,otro ejemplo:10 CLS20 PRINT"ahora presiona dos teclas"30 A$=INPUT$(2)40 PRINT"apretaste las teclas";A$50 ENDSi ya aprendiste el FOR NEXT entonces te explico ahora el otro tipo de bucle (bucle es... una serpiente que se muerde la cola !!! AHAHAH...es algo que tiene comienzo,pero no tiene fin ), este otro comando se llama WHILE y WEND y lo que hace es repetir los comandos que están entre el WHILE y el WEND (igualito que en el FOR y el NEXT) pero este repite los comandos hasta que se cumpla una condición que nosotros especificamos.Ejemplo:10 RIFA=0:REM VALOR INICIAL DE RIFA20 WHILE RIFA=030 INPUT" CUAL ES EL VALOR?";RIFA40 WEND50 CLS60 PRINT"AHORA QUE ES DIFERENTE A CERO,PUDISTE SALIR DEL BUCLE"70 ENDAhora vienen, el GOTO y el GOSUB y lo que hacen es saltar la ejecución de un programa a una línea determinada, pero la diferencia entre el GOTO y el GOSUB radica en que el GOTO salta a una línea especificada por el numero y el programa sigue normalmente desde la línea especificada hacia abajo y el GOSUB (que en verdad es GOSUB y RETURN) salta hasta una línea especificada y cuando encuentra el RETURN sigue la ejecución en la línea que sigue al último GOSUB que se ejecuto.Ejemplo:10 PRINT "LA LINEA 30 NO SE VA A EJECUTAR "20 GOTO 40:REM AQUÍ SE SALTA A LA LINEA 4030 PRINT"ESTA LINEA NO SE EJECUTA"40 PRINT:PRINT"EL PROGRAMA EJECUTO LA 10-20 Y LA 40"50 ENDOtro Ejemplo:10 PRINT"EJEMPLO DE GOSUB"20 GOSUB 10030 PRINT"YA VOLVIO A LA LINEA 30"40 END100 PRINT:PRINT"ESTA ES LA SUBRUTINA"110 PRINT:PRINT"CON EL RETURN A LA LINEA QUE VA DESPUES DEL GOSUB"120 RETURNEl PRINT: PRINT se hace para hacer un retorno de carro, por ejemplo si ponemos un print "hola" y luego viene un print "chao" al ejecutarlo se va a ver "holachao" en cambio con print "hola" y luego print:print "chao" se va a ver hola y en la línea siguiente chao.Ahora vamos a ver otro de los comandos importantes de BASIC, este es el IF, THEN ELSE y lo que hace es que si se da una condición se hace lo que viene después del THEN y si no hace lo que viene después del ELSE:El "ELSE" es optativo así que solo ponlo si lo necesitas.Ejemplo:10 INPUT"DIME QUIEN ESCRIBIO ESTE TUTORIAL",QUIEN$20 IF QUIEN$="SCORPIKO" THEN PRINT"MUY BIEN"30 ELSE PRINT"NO SABES QUIEN ESCRIBIO ESTO?... ES UNA LASTIMA"40 ENDTienes que fijarte en que las variables de caracteres distinguen entre mayúsculas y minúsculas, en el ejemplo si respondes scorpiko en vez de SCORPIKO te va a ejecutar el ELSE,porque no es lo mismo scorpiko que SCORPIKO.Con esto que llevamos saben lo más básico de BASIC y ya pueden hacer sus programas.Ves que no es para nada difícil BASIC, a lo mejor te preguntas, ¿tengo que ponerle numero a todas las líneas? y ¿por qué van de 10 en 10?, No, no es necesario ponerle numero a las líneas pero es util y van de 10 en 10 solo por hacerlo mas ordenado y por que si fueran de 1 en 1 no podrías poner una línea que se te olvido, ya que solo acepta números enteros.

Ecuación de segundo grado

Programa para resolver una ecuación de segundo grado:



CLS
PRINT " RESOLUCION DE UNA ECUACION DE SEGUNDO GRADO"
PRINT " Ax² + 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 ECUACION"
ELSE
PRINT C; "= 0, IMPOSIBLE"
END IF
ELSE
REM ECUACION DE PRIMER GRADO
PRINT " ECUACION DE PRIMER GRADO"
PRINT " X="; -C / B
END IF
ELSE
D = B ^ 2 - 4 * A * C
IF D > 0 THEN
PRINT " SOLUCION DOBLE"
PRINT " X1="; (-B + SQR(D)) / (2 * A)
PRINT " X2="; (-B - SQR(D)) / (2 * A)
ELSE
REM D <= 0
IF D = 0 THEN
PRINT " SOLUCION UNICA"
PRINT " X1=X2="; -B / (2 * A)
ELSE
REM D < 0
PRINT " RAIZ IMAGINARIA"
PRINT " X1= "; -B / (2 * A); "+"; ABS(SQR(-D) / (2 * A)); "i"
PRINT " X2= "; -B / (2 * A); "-"; ABS(SQR(-D) / (2 * A)); "i"
END IF
END IF
END IF

QBASIC


nombre originado por contracción del nombre del producto QuickBasic que traduce BASIC rápido, es una variante del lenguaje de programación BASIC. Intérprete de lenguaje BASIC. Su diseño fue basado en el anterior QuickBASIC 4.5, pero carecía de los elementos del compilador y enlazador de QuickBASIC. El código fuente es compilado en una forma intermedia desde el entorno de desarrollo integrado y luego esta forma intermedia es ejecutada (interpretada) a demanda. Fue creado con el objetivo de reemplazar a BASICA y GW-BASIC como lenguaje de programación para el usuario final y fue distribuido junto con MS-DOS 5.0
y versiones subsiguientes, incluyendo Windows 95
.



Wellcome