ÉÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍ»
º
ɻ˻ɻɻ˻ɻÉ˻ɻɻËɻɻÉ
ɻ˻ɻɻËÉ»
º
º
̼̹ººº»Ì¹Ì¹ºÊºÌ¹º ºººººº
ººÌ¹Ì¹È»ºº
º
º Ê
ÊÈȼȼÊÈÊÊÊ ÊÊÊȼÊȼ¼È¼
ȹʼÊÊȼÊȼ
º
ÌÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍËÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍ͹
º É˻ɻ˻»ÉË É»
É» º
º
º ºÊºººººººº ºº
ɼ º LO
BASICO DEL BASIC
º
º Ê Êȼʼȼȼȼ
ȼ º
º
ÌÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÊÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍ͹
º
º
º
EN ESTA LECCION APRENDERAS...
º
º
º
º ÚÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄ¿ º
º ³
³ º
º ³ þ Las Estructuras condicionales
IF/THEN
³ º
º ³ e IF/THEN/ELSE
...............................
2 ³ º
º ³ þ Los Operadores Relacionales
.................. 4 ³ º
º ³ þ Los Operadores L¢gicos
.......................
5 ³ º
º ³ þ Algunas operaciones que podemos
³ º
º ³ hacer con cadenas
............................
5 ³ º
º ³ þ El manejo de las cadenas
..................... 6 ³ º
º ³ þ A determinar la longitud de una cadena
....... 6 ³ º
º ³ þ Como extraer parte de una cadena
³ º
º ³ empezando de
izquierda a derecha .............
7 ³ º
º ³ þ Como extraer parte de una cadena
³ º
º ³ empezando de derecha
a izquierda .............
8 ³ º
º ³ þ Como extraer una subcadena de una
cadena ..... 9 ³ º
º ³ þ Las funciones de conversi¢n
.................. 10 ³ º
º ³
³ º
º ÀÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÙ º
º
º
ÌÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍËÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍ͹
º É»Ë»Ë É»É» ɻɻɻ
º OPERADORES
LOGICOS
º
º ººÌ¹º Ì º
ɼººÌ¹ º
Y
º
º ȹʼȼȼȼ ȼȼȼ
º
FUNCIONES DE CONVERSION º
ÈÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÊÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍͼ
ÉÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍËÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍ»
º É»Ë»Ë É»É» ɻɻɻ
º OPERADORES
LOGICOS
º
º ººÌ¹º Ì º
ɼººÌ¹ º
Y
º
º ȹʼȼȼȼ ȼȼȼ
º
FUNCIONES DE CONVERSION º
ÈÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÊÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍͼ
ESTRUCTURA
CONDICIONALES IF/THEN e IF/THEN/ELSE
-----------------------------------------------
En la lecci¢n QB104, viste como las computadoras
pueden tomar
decisiones por medio de las operaciones l¢gicas. Te dije que
estas son
operaciones por medio de las cu les se comparan dos
valores para tomar una decisi¢n
l¢gica. Ahora
bien, esta
comparaci¢n se hace por medio de los operadores l¢gicos AND, OR
y
NOT conjuntamente con la estructura condicional
IF/THEN. ¨Te
acuerdas de esta sentencia condicional?...
Si (IF) no tengo carro y (AND) no tengo
gasolina,
entonces (THEN), no puedo
viajar. (QB104-5)
En esa ocasi¢n te indiqu‚ que la palabra IF inmediatamente
nos dice que la condici¢n de NO TENGO CARRO va a ser
establecida,
y la palabra AND nos alerta que la condici¢n
NO TENGO GASOLINA
tambi‚n se va a considerar, luego la palabra THEN
nos indica la
decisi¢n a tomar: PUEDO VIAJAR. En la lecci¢n 10, consideramos
las distintas versiones de la estructura IF...THEN...
ÚÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄ¿
³
IF condici¢n THEN haz esto
³
³
³
³
³
³
IF T=0 THEN STOP
³
ÃÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄ´
³ IF
condici¢n THEN GOTO n£mero de l¡nea ³
³
³
³
³
³
IF T=0 THEN GOTO 70
³
ÃÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄ´
³ IF T=1 THEN GOTO 70
ELSE STOP ³
³
³
³
³ ³
³ IF condici¢n THEN
GOTO n£mero de l¡nea ELSE haz esto ³
³ ³
³
³ ³
³ IF T=1 THEN GOTO 70 ELSE GOTO 110 ³
ÀÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÙ
Estas estructuras condicionales IF/THEN funcionan muy bien
tanto en QBASIC como GW-BASIC y BASICA. Ahora, si se usan en
QBASIC en programas sin n£mero de l¡neas, para
que funcionen
tendr¡amos que usar labels (etiquetas) en vez
de n£meros de
l¡nea.
ÚÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄ¿
³ QB208
OPERADORES LOGICOS Y FUNCIONES DE CONVERSION 3 ³
ÀÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÙ
A continuaci¢n ver s dos programas en QBasic ilustrando el
uso del enunciado IF/THEN
en las versiones IF/THEN e
IF/THEN/ELSE. El
grupo de enunciados...
RANDOMIZE TIMER
LET numero1 = INT(RND * 10) + 1
numero2 = INT(RND
* 10) + 1
...es nuevo para t¡. No te
preocupes sino lo entiendes. Te
lo explicar‚ en la pr¢xima lecci¢n. Por ahora, conf¢rmate con
saber que la combinaci¢n de RANDOMIZE TIMER y RND se
usan para
generar n£meros al azar, en este caso los n£meros
que se van a
sumar.
Para que puedas ver c¢mo funcionan,
digita ambos
programas en la computadora. Puedes llamar al primero SUMA1.PRG
y al segundo, SUMA2.PRG.
REM SUMA DE DOS NUMEROS AL AZAR (version 1)
REM ---------------------------------------
CLS
RANDOMIZE
TIMER
LET numero1
= INT(RND * 10) + 1
numero2 = INT(RND * 10) + 1
suma = numero1 + numero2
PRINT
"¨Cu nto es"; numero1; "+"; numero2;
INPUT respuesta
IF respuesta = suma THEN
PRINT
PRINT "MUY
BIEN!"
PRINT
INPUT
"PRESIONA ENTER PARA CONTINUAR", e$
ELSE
PRINT
PRINT
"INCORRECTO!"
PRINT
PRINT "LA
SUMA ES"; SUM
PRINT
INPUT
"PRESIONA ENTER PARA CONTINUAR", e$
END IF
END 'Programa
ÚÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄ¿
³ QB208
OPERADORES LOGICOS Y FUNCIONES DE CONVERSION 4 ³
ÀÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÙ
REM SUMA DE DOS NUMEROS AL AZAR (version 2)
REM ---------------------------------------
CLS
RANDOMIZE
TIMER
LET numero1
= INT(RND * 10) + 1
numero2 = INT(RND * 10) + 1
suma = numero1 + numero2
PRINT
"¨Cu nto es"; numero1; "+"; numero2;
INPUT
respuesta
IF respuesta
= suma THEN
PRINT
PRINT "MUY BIEN!"
PRINT
INPUT "PRESIONA ENTER PARA CONTINUAR", e$
END IF
IF respuesta
<> suma THEN
PRINT
PRINT "INCORRECTO!"
PRINT
PRINT "LA SUMA ES"; suma
PRINT
INPUT "PRESIONA ENTER PARA CONTINUAR", e$
END IF
END 'Programa
Observa, c¢mo ambas estructuras, IF/THEN e IF
THEN/ELSE,
tienen que terminar con el enunciado END IF.
OPERADORES RELACIONALES
-----------------------
Existen operaciones que podemos hacer al
comparar dos
valores. Para
llevarlas a cabo tenemos que hacer uso de los
operadores relacionales siguientes:
ÚÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄ¿
³ OPERADOR
RELACIONAL
SIGNIFICADO ³
³
³
³
= es
igual
³
³
<>
no es igual ³
³
<
es menor que ³
³
>
es mayor que ³
³
<=
es menor que o igual a ³
³
>=
es mayor que o igual a ³
ÀÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÙ
ÚÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄ¿
³ QB208
OPERADORES LOGICOS Y FUNCIONES DE CONVERSION 5 ³
ÀÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÙ
Ejemplos:
5=5 4<>5 2<5 6>5
Si A=5, B=4, C=2 and D=6, entonces, A=A, B<>A, C<A y D>5.
A medida que avancemos en el curso, encontraremos
muchas
operaciones relacionales.
Cuando las tratemos, las explicaremos
detalladamente.
OPERADORES LOGICOS
------------------
Cuando comparas dos valores para tomar una decisi¢n l¢gica
tienes que usar los operadores l¢gicos. Estos operadores son los
mismos que estudiaste en las lecciones QB104 y QB105. Estos son
AND, OR y NOT.
Te recomiendo que vuelvas a repasar estas dos
lecciones para que tengas fresca en tu mente los mismos.
OPERACIONES QUE PODEMOS HACER
CON CADENAS (STRINGS)
---------------------------------------------------
Las cadenas pueden unirse con el signo de suma (+). Esta
operaci¢n se llama COCATENACION. Tomemos un ejemplo:
10 LET
A$="MATH":B$=".PRG"
20 LET C$=A$+A$
30 PRINT C$
Si ejecutas este programa se desplegar como MATH.PRG.
Nota com la cadena A$("MATH") se uni¢ a la cadena
B$(".PRG")
con el signo + para formar la cadena C$("MATH.PRG").
Hay otras operaciones que podemos hacer con las
cadenas.
Podemos compararlas usando los operadores relacionales que
vimos
anteriormente.
Ejemplos:
10 LET A$="JUAN"
20 LET B$="TU NOMBRE ES IGUAL AL MIO!"
30 LET C$="TU NOMBRE NO ES IGUAL AL MIO."
40 INPUT "ESCRIBE TU NOMBRE ",N$
50 IF N$=A$ THEN PRINT B$
60 IF N$<>A$ THEN PRINT C$
ÚÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄ¿
³ QB208
OPERADORES LOGICOS Y FUNCIONES DE CONVERSION 6 ³
ÀÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÙ
Cuando se comparan las cadenas N$ y A$ en la l¡nea 50 usando
la estructura IF/THEN, en realidad lo que se est
comparando son
los c¢digos ASCII de cada car cter
en cada cuerda. Si los
c¢digos ASCII de ambas cadenas...
A$="JUAN" N$="JUAN"
ASCII
CODE DEC HEX
J
74 4A
U
85 55
A 65 41
N
78 4E
...son
iguales, la cadena B$ es desplegada. De la misma
forma las comparaciones de cadenas usando los dem s
operadores
relacionales se hacen tomando un car cter a la vez de cada
cadena
y compar ndolo su c¢digo ASCII con la otra cadena. A medida que
avances en tus lecciones tendr s
m s ejemplos sobre estas
operaciones con cadenas.
EL MANEJO DE LAS CADENAS
------------------------
Hay ocasiones en que s¢lo
quieras usar parte de una cadena.
En otras oportunidades, tal vez
desees examinar todos los
caracteres que forman una cadena en particular para
compararlos
con otras cadenas.
Y no s¢lo eso, existir n momentos en que sea
imprescindible que sepas cu l es el largo de una
cadena, etc.
Veamos cu les son las funciones que hacen todo esto
posible.
DETERMINANDO LA LONGITUD DE UNA CADENA
--------------------------------------
Observa
la siguiente cadena:
W$="ESTA CADENA TIENE 31 CARACTERES"
...si cuentas los caracteres de esta cadena W$, encontrar s
que tiene 31 caracteres, contando
los espacios en blanco,
naturalmente.
As¡ que decimos que la cadena W$
tiene una
longitud de 31 caracteres. Para calcular la longitud de una
cadena tienes que usar la funci¢n LEN.
Una funci¢n es como un miniprograma bastante abreviado que
puede tener o pedir uno o m s valores
reteni‚ndolo(s) en una
variable.
El nombre de dicha variable es el
nombre de la
funci¢n. Por
ejemplo, algunas funciones son: RND, ABS, SQR, COS,
ASC, etc.
ÚÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄ¿
³ QB208
OPERADORES LOGICOS Y FUNCIONES DE CONVERSION 7 ³
ÀÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÙ
La sint xis para la funci¢n LEN es...
LEN (W$)
ÚÄÄÄÄÄÄÄÄÄÄÄÄÄÄÅÄÄÄÄÄÄÄÄÄÄÄÄÄ¿
³ LEN (cadena de caracteres) ³
ÀÄÄÄÄÄÄÄÄÄÄÄÄÄÄÅÄÄÄÄÄÄÄÄÄÄÄÄÄÙ
LEN ("ESTA CADENA TIENE 31 CARACTERES")
Digita el siguiente programa para que veas c¢mo es que esta
funci¢n es usada...
10 CLS
20 LET W$="ESTA CADENA TIENE 31 CARACTERES"
30 LET L=LEN(W$)
40 PRINT L
...al ejecutarlo, se desplegar en pantalla el n£mero
31.
Nota c¢mo este valor 31 fue almacenado en la variable num‚rica
L.
COMO EXTRAER PARTE DE UNA CADENA EMPEZANDO DE IZQUIERDA A
DERECHA
-----------------------------------------------------------------
Si quieres extraer una porci¢n de una cadena empezando desde
la izquierda, necesitas usar la funci¢n LEFT$. Su sintaxis es...
ÚÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄ¿
³
ÚÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄ¿
³
³
³LEFT$(string,length)ÅÄ de 0 to 255 ³
³
ÀÄÄÄÄÄÄÄÄÅÄÄÄÄÄÄÄÅÄÄÄÙ
³
³ ÚÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÙ ³
³
³ cadena
considerada ÚÄÄÄÄÄÄÄÄÄÄÄÄÄ´
³
³ ÚÄÄÄÄÄÄÁÄÄÄÄÄÄÄÄ¿ ³ n£mero de caracteres ³
³ ³ LET A$=LEFT$(W$,11) desde la izquierda ³
³ ³ ÚÄÄÄÄÄÄÄÄÄÙ a
extraerse
³
³ ³ ÚÄÄÄ11ÄÄÄÄ¿
³
³ ³ ³
³
³
³ W$="ESTA CADENA TIENE 31
CARACTERES"
³
³
³
³ A$="ESTA CADENA"
³
ÀÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÙ
Veamos el anterior ejemplo en forma de un programa corto...
10 LET W$="ESTA CADENA TIENE 31 CARACTERES"
20 LET A$=LEFT$(W$,11)
30 PRINT A$
ÚÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄ¿
³ QB208
OPERADORES LOGICOS Y FUNCIONES DE CONVERSION 8 ³
ÀÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÙ
Si digitas el mismo en tu computadora, y lo ejecutas luego,
ver s desplegado en pantalla, lo siguiente...
ESTA CADENA
Este es el valor de la variable alfanum‚rica A$, el cual fue
extraido del valor de la variable alfa W$.
COMO EXTRAER PARTE DE UNA CADENA EMPEZANDO DE DERECHA A
IZQUIERDA
-----------------------------------------------------------------
Si deseas extraer una porci¢n de una cadena empezando desde
la izquierda, debes usar la funci¢n RIGHT$. Su sint xis es...
ÚÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄ¿
³
ÚÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄ¿
³
³
³RIGHT$(string,length)ÅÄ de 0 to 255 ³
³ ÀÄÄÄÄÄÄÄÄÄÅÄÄÄÄÄÄÄÅÄÄÄÙ
³
³ ÚÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÙ ³
³
³ ³
³
³
³ cuerda
considerada ÚÄÄÄÄÄÄÄÄÄÄÄÄÄÄ´
³
³ ³ ³
³
³
³ ÚÄÄÄÄÄÄÁÄÄÄÄÄÄÄÄ¿ ³ n£mero de caracteres
³
³ ³ LET A$=RIGHT$(W$,19) desde la derecha a ser ³
³ ³
ÀÄÄÄÄ¿
extraidos
³
³ ³ ÚÄÄÄÄÄÄ19ÄÄÄÄÄÄÄÄÄ¿
³
³ ³
³
³
³
³ W$="ESTA CADENA TIENE
31 CARACTERES"
³
³
³
³ A$="TIENE 31
CARACTERES"
³
ÀÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÙ
Veamos el programa ejemplo que ilustra esta funci¢n...
10 LET W$="ESTA CADENA TIENE 31 CARACTERES"
20 LET A$=RIGHT$(W$,19)
30 PRINT A$
Si digitas el mismo, en tu computadora y lo ejecutas luego,
ver s desplegado en pantalla, lo siguiente...
TIENE 31
CARACTERES
ÚÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄ¿
³ QB208
OPERADORES LOGICOS Y FUNCIONES DE CONVERSION 9 ³
ÀÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÙ
COMO EXTRAER UNA SUB-CADENA DE UNA CADENA
-----------------------------------------
Si deseas extraer una sub-cadena de una cadena, tienes que
usar la funci¢n MID$.
Su sint xis es...
ÚÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄ¿
³ ÚÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄ¿ ³
³ ³
ÚÄlongitud de la ÚÄÅÄ de 0 ³
³ ³
³ cadena
ÄÂÄÄÄÄÙ ³ a 255 ³
³ ³ MID$(string, start, length) ÄÄÄÄ¿ num de ³ ³
³ ³
³ ³ comienzo de ³ caracte- ³ ³
³ ³ cadena ÀÄ caracteres ³ res toma-³ ³
³ ³ a ser examinada a examinarse ³ dos ³ ³
³ ÀÄÄÄÄÄÄÄÄÅÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÅÄÄÄÄÄÄÄÄÄÅÄÄÄÄÄÄÄÄÄÄÙ ³
³
³
³ ÚÄÄÄÄÄÄÄÙ
³
³
ÀÄÄÄÄÄÄÄÄÄÄÄÄ¿ ³ ³
³
³
MID$(A$,1,3)="ALP"
³
³ ÚÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÙ ³ ³
³
³ ³ ÚÄÂÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÁÄÙ
³
³ ³ ³ ³
³
³
A$="ALPHANUMERIC"
³
ÀÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÙ
Programa ejemplo:
VISUALIZACI¢N EN PANTALLA
10 LET A$="ALPHANUMERIC"
20 LET B$=MID$(A$,3)
30 PRINT B$
ÄÄÄÄ> "PHANUMERIC CHARACTER"
40 LET C$=MID$(A$,1,3)
50 PRINT C$
ÄÄÄÄ> "ALP"
60 LET D$=MID$(A$,3,5)
70 PRINT D$
ÄÄÄÄ> "PHANU"
80 LET E$=MID$(A$,2,1)
90 PRINT E$
ÄÄÄÄ> "L"
Esta manipulaci¢n de cadenas se usa
bastante en los
programas.
Pronto te encontrar s con
ellas en nuestras
lecciones.
ÚÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄ¿
³ QB208
OPERADORES LOGICOS Y FUNCIONES DE CONVERSION 10 ³
ÀÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÙ
FUNCIONES DE CONVERSION
-----------------------
Para hallar que caracter representa un c¢digo ASCII
debes
usar la funci¢n CHR$.
Su sintaxis es...
ÚÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄ¿
³CHR$(n)
³
³ ³
³
³ ÀÄÄÄÄ c¢digo ASCII de 0 a
255 ³
ÀÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÙ
PRINT CHR$(65) ÄÄÄÄÄÄ> A PRINT
CHR$(219) ÄÄÄÄÄÄÄ> Û
Para hallar qu‚ c¢digo ASCII representa el primer caracter
en una cuerda dada, debes usar la funci¢n ASC. Su sint xis es...
ÚÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄ¿
³ PRINT ASC("F") ÄÄÄÄÄÄÄÄÄÄ>70 ³
³ ÚÄÄÄÄÄÄÄÄÄÄÄÅÄÄÄÄÄÄÄÄÄÄ¿ ³
³ ³ASC(string expression)³ ³
³ ÀÄÄÄÄÄÄÄÄÄÄÄÅÄÄÄÄÄÄÄÄÄÄÙ ³
³ LET
B$="F" ³
³
³ PRINT ASC(B$) ÄÄÄÄÄÄÄÄÄÄ>70 ³
ÀÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÙ
Algunos ejemplos son:
10 A$="FUNCTION"
20 B$="F"
30 PRINT ASC("F") ÄÄÄÄÄÄÄÄÄÄ>70
40 PRINT ASC(B$)
ÄÄÄÄÄÄÄÄÄÄ>70
50 PRINT ASC(A$)
ÄÄÄÄÄÄÄÄÄÄ>70
60 PRINT ASC("FUNCTION") ÄÄÄÄ>70
Para convertir una expresi¢n num‚rica en una cuerda, debes
usar la funci¢n STR$.
Su sint xis es...
ÚÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄ¿
³ 20 LET
B$=STR$(A)
³
³ 30
PRINT B$ ÄÄÄ>"234" ³
³
ÀÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄ¿
³
³ ÚÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÅÄÄÄÄÄÄÄÄÄÄÄ¿ ³
³ ³ STR$(expresi¢n num‚rica o variable num‚rica) ³ ³
³ ÀÄÄÄÄÄÄÄÄÄÄÄÄÄÄÅÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÙ ³
³
ÀÄÄÄÄÄÄÄÄÄ¿
³
³ 40
PRINT STR$(234) ÄÄÄ>"234" ³
ÀÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÙ
ÚÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄ¿
³ QB208
OPERADORES LOGICOS Y FUNCIONES DE CONVERSION 11 ³
ÀÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÙ
Algunos ejemplos son:
10 LET A=234
20 LET B$=STR$(A)
30 PRINT B$ ÄÄÄ>"234"
40 PRINT STR$(234) ÄÄÄ>"234"
Para convertir la representaci¢n en cadena de un n£mero a su
correspondiente valor num‚rico debes usar la funci¢n
VAL. Su
sintaxis es...
ÚÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄ¿
³ 10 LET A$="10" ³
³ 20 LET a=VAL(A$) ³
³
³ ³
³ ÚÄÄÄÄÄÄÄÄÄÄÄÄÅÄÄÄÄÄÄÄÄÄ¿ ³
³ ³VAL(string expression)³ ³
³ ÀÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÙ ³
ÀÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÙ
Ejemplos:
10 let A$="10":B$="3"
20 LET a=VAL(A$):b=val(B$)
30 LET c=a+b
40 PRINT c
ÄÄÄÄÄÄÄÄÄ> visualizaci¢n en pantalla 30
En la pr¢xima lecci¢n estudiaremos la mayor¡a de los t¢picos
considerados aqu¡ usando un programa completo llamado PROGRAMA
DE
MATEMATICA.