ESTRUCTURAS DE PROGRAMACIÓN
Estructuras de Programación o Estructuras de Control Son sentencias que permiten controlar el orden en que se ejecutan las instrucciones de los programas.
Estructuras de Programación o Estructuras de Control Se agrupan en 3 categorías: Bloque Selección Iteración La selección y la iteración utilizan expresiones booleanas para poder controlar el flujo de instrucciones.
Expresiones Booleanas Son construcciones formadas por dos operandos relacionados mediante un operador de comparación y operadores lógicos. Por ejemplo: (x>10) AND (X<20) el valor de x es mayor que 10 y menor que 20. (A<>B) ¿A es diferente de B?
Expresiones Booleanas Por ejemplo: (Persona=“Juan”) OR (Persona=“Pedro”) ¿La persona es Juan o es Pedro? Evaluar una expresión booleana significa determinar si la condición impuesta resulta verdadera (true) o si resulta falsa (false).
Expresiones Booleanas En la vida diaria también vemos expresiones booleanas cuando imponemos condiciones. Por ejemplo: “Si bañas al perro y cortas el pasto puedes ir al cine.” “Si ayudas a tu hermana con la tarea saldremos a pasear.”
Bloque de Instrucciones Es una secuencia de instrucciones que comienzan con BEGIN y terminan con END.
Bloque de Instrucciones REM *** ÁREA DE UN CÍRCULO*** INPUT “ESCRIBE EL RADIO DE UN CÍRCULO”; RADIO AREA=3.141516* RADIO*RADIO PRINT”EL ÁREA DE UN CÍRCULO ES:”; AREA END
ACTIVIDAD 5BAS Crea un programa utilizando un bloque de instrucciones.
ESTRUCTURA DE SELECCIÓN Permite decidir entre bloques de instrucciones diferentes; para ello evalúa expresiones booleanas y considera si se cumplió (o no) la condición.
ESTRUCTURA DE SELECCIÓN Permite decidir entre bloques de instrucciones diferentes; para ello evalúa expresiones booleanas y considera si se cumplió (o no) la condición.
IF – THEN - ELSE Se traduce como SI- ENTONCES- DE LO CONTRARIO. Esta selección evalúa una expresión booleana y de resultar verdadera ejecutará el bloque indicado después de la palabra THEN, pero de resultar falsa ejecutará el bloque indicado después de la palabra ELSE.
REM *********** EJERCICIO *********** REM *Leer tres números y escribir el mayor de ellos* CLS INPUT "INTRODUCE TRES NUMEROS DIFERENTES (SEPARADOS POR COMAS)”; A, B, C IF A > B THEN MAYOR=A ELSE MAYOR=B END IF IF MAYOR>C THEN MAYOR= MAYOR MAYOR=C PRINT “EL NÚMERO MAYOR ES:”; MAYOR END
INPUT "Introduce dos palabras (Separadas por comas)“;X$, Y$ REM *PROGRAMA IGUALDAD DE PALABRAS* CLS INPUT "Introduce dos palabras (Separadas por comas)“;X$, Y$ IF X$ = Y$ THEN PRINT "Las dos palabras son iguales" ELSE PRINT "Has escrito dos palabras distintas" END IF END
REM ***** PROGRAMA DE NOTAS ***** CLS INPUT "¿CUAL HA SIDO LA NOTA DE TU EXAMEN? “; NOTA IF NOTA < 5 THEN PRINT “INSUFICIENTE“ END IF IF NOTA >= 5 AND NOTA < 7 THEN PRINT “APROBADO“ IF NOTA >= 7 AND NOTA < 9 THEN PRINT “NOTABLE“ IF NOTA >= 9 AND NOTA < 10 THEN PRINT “SOBRESALIENTE“ IF NOTA = 10 THEN PRINT "ENHORABUENA CON HONORES“ END
ACTIVIDAD 6BAS Crea un programa utilizando una estructura de selección de números. Crea un programa utilizando una estructura de selección de palabras.
CASE Se traduce como EN CASO DE y se usa para decidir entre varias opciones. CASE-OF requiere de una variable para compararla con una lista de opciones. De encontrar una que sea igual ejecutará el bloque indicado (si no la encuentra no efectuará ninguno de los bloques).
CASE Esta selección sustituye a varios IF – THEN- ELSE en cascada, pero sólo acepta números enteros o caracteres y no funciona para reales ni para cadenas.
CASE REM INICIANDO MI COMPUTADORA CLS COLOR 14 INPUT "ESCRIBE TU NOMBRE: ", NOMBRE$ SELECT CASE NOMBRE$ CASE "MARIANA" COLOR 18 PRINT "BIENVENIDO A TU SESIÓN" CASE "CECILIA" COLOR 17 PRINT "VETE DE AQUÍ“ CASE ELSE COLOR 15 PRINT "HOLA, "; Name$; ". ¿CÓMO ESTÁS?" END SELECT END
CASE REM ELIGE EL DÍA DE LA SEMANA CLS COLOR 1 PRINT "DIA DE LA SEMANA" COLOR 2 PRINT "OPCIÓN 1: DOMINGO" PRINT "OPCIÓN 2: LUNES" PRINT "OPCIÓN 3: MARTES" PRINT "OPCIÓN 4: MIÉRCOLES" PRINT "OPCIÓN 5: JUEVES" PRINT "OPCIÓN 6: VIERNES" PRINT "OPCIÓN 7: SÁBADO" COLOR 3 INPUT" HOLA SOY TU COMPUTADORA, DIME QUE DÍA QUIERES QUE SEA HOY";DIADELASEMANA SELECT CASE DIADELASEMANA COLOR 4 CASE 1 PRINT"HOY ES DOMINGO" CASE 2 PRINT "HOY ES LUNESITO" CASE 3 PRINT "HOY ES MARTESSS" CASE 4 PRINT "HOY ES MIERCOLESITO" CASE 5 PRINT "HOY ES JUEVECITO" CASE 6 PRINT "HOY ES VIERNESSSS" CASE 7 PRINT "HOY ES SABADABA" END SELECT END
CASE REM PERIFÉRICOS DE LAS COMPUTADORAS CLS COLOR 6 PRINT "ELIGE DE LAS OPCIONES ¿CÚALES SON PERIFÉRICOS DE ENTRADA" PRINT"A. MONITOR E IMPRESORA" PRINT"B. MÓDEM" PRINT"C. TECLADO Y RATÓN" COLOR 7 INPUT "ESCRIBE TU RESPUESTA: ", PERIF$ COLOR 9 SELECT CASE PERIF$ CASE "A" PRINT "ES UN PERIFÉRICO DE SALIDA" CASE "B" PRINT "ES UN PERIFÉRICO DE ENTRADA/SALIDA" CASE"C" PRINT "CORRECTO ES UN PERIFÉRICO DE ENTRADA" END SELECT END
ACTIVIDAD 7BAS Crea un programa donde le darás al usuario opciones a elegir. REM CASE
WHILE - DO Se traduce como MIENTRAS – HACER . Evalúa una expresión booleana y de resultar verdadera ejecutará el bloque indicado después de la palabra Do.
WHILE - DO Cada vez que acabe de ejecutarse el bloque se avaluará de nuevo la condición El ciclo se detendrá cuando el resultado se la evaluación sea falso.
WHILE - DO REM MULTIPLICANDO UNA Y OTRA VEZ CLS DO COLOR 20 INPUT "ESCRIBE UN NÚMERO: ", A COLOR 21 INPUT "ESCRIBE UN SEGUNDO NÚMERO: ", B RESPUESTA=A*B COLOR 22 PRINT "LA RESPUESTA ES: "; RESPUESTA COLOR 23 INPUT "¿QUIÉRES EMPEZAR DE NUEVO?(S/N)? ", ANSWER$ LOOP WHILE ANSWER$="S" END
WHILE - DO REM PROMEDIO DE UN CONJUNTO DE NÚMEROS CLS COLOR 10 PRINT"OBTENER EL PROMEDIO" COLOR 11 INPUT "DIME CON CUANTAS CANTIDADES TRABAJAMOS: ",CUANTOSNUM I=1 WHILE I<=CUANTOSNUM COLOR 12 INPUT"CANTIDADES: "; NUM SUMA=SUMA+NUM I=I+1 WEND PROMEDIO=SUMA/CUANTOSNUM COLOR 13 PRINT PROMEDIO END
ACTIVIDAD 8BAS Crea un programa donde se deberá repetir el programa, ya sea para realizar nuevamente una operación o algún proceso que se requiera. REM WHILE - DO
FOR NEXT Es un ciclo determinado, esto significa que el bloque de instrucciones se repetirá un número exacto de veces. Este ciclo requiere de indicar un límite inferior, un límite superior y una variable que servirá de contador.
FOR NEXT Es importante que el valor del límite inferior sea menor que el valor del límite superior, de lo contrario nunca se efectuará el bloque de instrucciones.
FOR NEXT REM SERIE DEL 1-10 CLS FOR I = 1 TO 10 PRINT I NEXT I END
FOR NEXT REM SERIE DEL 1-15 CAMBIANDO DE COLOR CLS FOR I = 1 TO 15 COLOR I, 0 PRINT I; "*** COLOR ***“ NEXT I END
FOR NEXT REM CONTANDO DE 2 EN 2 CLS FOR I = 2 TO 20 STEP 2 PRINT I NEXT I END Realiza un ejercicio donde el programa contará de 10 en 10.
FOR NEXT REM CONTANDO 10… CLS FOR I = 10 TO 1 STEP -1 PRINT I SLEEP 1 NEXT I PRINT “TIEMPO” END Realiza un programa donde deberá esperarse 2 segundos.
FOR NEXT REM FACTORIAL CLS FOR I=0 TO 100 STEP .5 PRINT I NEXT INPUT "DAME UN NÚMERO"; NUMERO NFACT=1 FOR I = 1 TO NUMERO NFACT=NFACT*I NEXT I PRINT NFACT END
FOR NEXT REM TU NOMBRE AL REVES CLS INPUT "DAME TU NOMBRE"; NOMBRE$ FOR I=1 TO LEN(NOMBRE$) REM LEN CUENTA EL NÚMERO DE CARACTERES DE TEXTO O POSICIONES EN UN ARREGLO. PRINT MID$(NOMBRE$,I,1) REM MID TOMA PARTE DE UNA CADENA SE DA SU INICIO Y CUANTOS CARACTERES SE TIENE. NEXT INPUT "DAME TU NOMBRE"; REVES$ FOR I=LEN(REVES$) TO 1 STEP -1 PRINT MID$(REVES$, I,1) NEXT I INPUT "DAME TU NOMBRE Y LO ESCRIIRÉ AL REVÉS"; OTRO$ FOR I=LEN(OTRO$) TO 1 STEP -1 TEXTO$=TEXTO$+MID$(OTRO$,I,1) PRINT TEXTO$ END
ACTIVIDAD 9BAS y 10 BAS CREA 2 PROGRAMAS: Crea un programa donde se deberá repetir el programa un número determinado de veces, además de que deberás jugar con el tiempo de aparición (sleep). Crea un programa que involucre al usuario pero que se repita un número determinado de veces. REM FOR NEXT