MSWLOGO - JUANA

Realizado por Carolina Rubio
Esquema del tema
1. Algoritmos : diagramas de flujo
1. Secuencial
2. Condicional
3. Iterativa
2. Lenguaje de programación: MSWLOGO
ALGORITMO
La secuencia ordenada de operaciones y
procedimientos que se tienen que seguir para
resolver un atarea o un problema se llama algoritmo.
Diagrama de flujo
Diagrama de flujo: representación gráfica de los
pasos que conforman el algoritmo.
Ejemplo
ESTRUCTURAS ALGORITMICAS
BÁSICAS
 ESTRUCTURA SECUENCIAL: los pasos o
acciones se ejecutan uno detrás de otro
 ESTRUCTURA CONDICIONAL: la
siguiente acción que se ejecuta depende del estado de
cierta condición que se ha de evaluar
•Simple: si se cumple una
condición se ejecutará una
acción , y si no se cumple ,
no se hará la siguiente.
 Doble: Si se cumple una acción se lleva a cabo una
acción, y si no se cumple se ejecuta otra acción.
•ESTRUCTURA ITERATIVA: hacer una o
diversas acciones mientras se está
cumpliendo una determinada condición
 Estructura “Hasta que”: una acción o acciones
se están repitiendo hasta que se cumple una
condición determinada, que se comprueba al
final de llevar a cabo la acción.
 Estructura ”Mientras”: una acción se repite mientras se
está cumpliendo una determinada condición que se
comprueba cuando se comienza a hacer la acción.
Ejercicios
Ejercicios
LENGUAJE DE PROGRAMACIÓN
 Un programa es una secuencia de instrucciones
ejecutadas por un ordenador con el objetivo de
efectuar una tarea determinada
 Lenguaje de programación: es una notación de
acuerdo con una sintaxis determinada, que se utiliza
para escribir instrucciones que serán ejecutadas por un
ordenador. Tipos:
 De bajo nivel: el lenguaje de máquina y ensamblador
 De alto nivel: se parece más al lenguaje humano
Fases en la elaboración de un
programa
LENGUAJE MSWLOGO
Para el control de las entradas y salidas es necesario un
conjunto de instrucciones (lenguaje de programación)
Ventanas:
1. Ventana de gráficos: se mueve una tortuga
2. Caja de textos: aparecerán las últimas órdenes
introducidas y los mensajes
3. Caja de Entrada: se escriben las órdenes
INSTRUCCIONES MAS UTILIZADAS
 AV n = avanza n pasos
 RE n = retrocede n pasos
 GD n = gira a la derecha n grados
 GI n = gira a la izquierda n grados
 RO [frase] = escribe una frase
 ES [frase] = escribe una frase en la caja de Textos
 Centro= se dirige al centro (cierra figuras)
 PONCL [R G B] = selecciona un color de lápiz O al 255
 BP = borra la pantalla
 SL= no pinta la desplazarse
 BL = pinta al desplazarse
MAS INSTRUCCIONES …
 Repite n [instrucciones] = es posible ejecutar n veces un








conjunto de instrucciones
Mensaje [titulo][mensaje] = crea una ventana con el título y
mensaje especificado
Ponpos [x y]= situa la tortuga en la posición indicada
Circulo radio = dibuja un círculo
Elipse menor mayor = dibuja una elipse de los ejes
indicados
POCCR [R G B] = selecciona el color de relleno
Rellena = pinta una figura (situa la tortuga dentro)
OT= oculta la tortuga
MT= muestra la tortuga
EJERCICIO
REALIZA LAS SIGUIENTES ORDENES
1. Av 10 sl gd 45 re 35 bl av 50 gi 15 ro [hola] poncl 4 av
12 Centro
2. Dibuja un cuadrado (dos formas)
3. Dibuja una casa, árbol y un niño (rellénalos de color)
PROCEDIMIENTOS
Las primitivas propias de logo se pueden agrupar
formando una nueva orden que al ejecutarla, obligarán
al programa a realizar, de forma secuencial todas las
primitivas.
En fichero / editar: en la ventana editar
procedimientos, escribimos el nombre y pulsamos
Intro. En la ventana editar se añaden todas las
primitivas que constituyen el procedimiento. Y escribir
Fin.
Almacenar varios procedimientos
Escribiendo: Guarda “ nombre.log [procedimiento 1, …]
Al iniciar una nueva sesión se pueden utilizar los
procedimientos guardados mediante fichero/cargar.
Bucles
Se utilizan para repetir instrucciones, ya sea un
determinado número de veces o continuamente, bucle
infinito.
REPITE 3 [] = repite 3 veces las instrucciones
REPITE siempre [] = repite indefinidamente las
instrucciones
Ejercicio
Realiza los siguientes ejercicios
1. Triangulo: REPITE 3 [AV 50 GI 120]
2. Pentágono regular: REPITE 5 [AV 70 GD 360/5]
3. Arco circunferencia: REPITE 90 [AV1 GD 1 espera 2]
4. Flor: Para Flor REPITE 50 [cuadrado 80 gd 10 ] Fin
Ejercicio
 Realiza un semáforo : dibuja tres círculos y una elipse
por fuera .
 Realiza un procedimiento para que el círculo central
debe parpadear 3 veces.
EJERCICIO
 Realiza un procedimiento para que coloree en rojo,
amarillo y verde durante 5 segundos
RECURSIVIDAD
 Cuando un programa está diseñado para llamarse a sí
mismo en un bucle sin fin.
Para Triangulo REPITE 3 [AV 50 GI 120] Triangulo Fin
Variables
Para realizar procedimientos con una variable (ej.
Tamaño) se debe crear la variable con :n ( que es en
realidad un hueco en la memoria del ordenador para
almacenar un dato) de forma que cuando tecleemos el
procedimiento dando el valor a la variable que hemos
creado se ejecute.
El contenido de una variable aparece cuando se escribe
precedida por el símbolo :nombre.
EJEMPLO: Para cuadrado :n repite 4 [av :n gd 90] fin
EJERCICIO
Procedimiento para dibujar un polígono de n lados
Para polígono : n Repite : n [av 30 gd 360/:n] fin
Procedimiento para que el semáforo parpadee n
veces
Procedimiento para dibujar un polígono que m sea la
longitud del lado y n el numero de lados
DIALOGO CON EL ORDENADOR
Son preguntas que hace el ordenador para poder llevar a
cabo un programa. Se utiliza las órdenes:
ES [frase] = para escribir un frase en la caja de texto
ES (FRASE [TEXTO] :N [TEXTO]) = frase compleja
HAZ “n LEEPALABRA para crear una variable :n y espera
a que demos el valor
EJERCICIO
 Crea un procedimiento para calcular el área de un
triángulo y el ordenador te pida los datos de base y
altura:
Ejercicios
 Procedimiento capaz de calcular la suma de dos cifras
que pide
Ejercicio
Procedimiento para que nos pregunte el nombre de
nuestros padres y debe aparecer en la pantalla
finalmente lo siguiente: los padres de … son .. Y …
INSTRUCCIONES CONDICIONALES
 Logo puede valorar el contenido de una condición y
decidir entre dos opciones:
 Si condición [acción] : si se cumple la condición, se
ejecutan las acciones contenidas en el corchete; después
e l programa pasa a la siguiente línea. Si no se cumple
pasa a la línea siguiente.
 Sino condición [acción] : si no se cumple la condición
se ejecuta la acción contenidas después del corchete.
 Si condición [acción1][acción2] si la condición es
verdadera ejecutará la acción 1 y si es falsa la acción 2.
 Sisino condición [acción 1][acción 2] es similar al
anterior
Ejercicio
 Procedimiento capaz de decir si un numero es par o
impar:
Ejercicio
Procedimiento en el que pide un número si es positivo
mostrará su raíz, si es negativo no debe calcularlo, ya
que daría error.
Ejercicio
Procedimiento que nos pide un número, si es positivo
se mostrará su raíz, si es negativo escribirá “No se
puede calcular la raíz de un negativo
Instrucciones Lógicas
 Y expresión1 expresión2 : evalúa varias expresiones.
Devuelve el valor cierto si todas las expresiones
evaluadas tienen el valor cierto y devuelve el valor falso
si alguna de las expresiones es falsa.
 O expresión 1 expresión 2: evalúa varias expresiones.
Devuelve cierto si alguna de las expresiones evaluadas
tienen el valor cierto y devuelve falso si todas las
expresiones son falsas.
Ejercicio
Procedimiento que pida dos números, si son mayores
de 100, nos devolverá la suma de ambos. Si alguno de
ellos es igual o menor de 100 nos devolverá mensaje de
error.
Ejercicio
Procedimiento que pide dos números , uno de los
cuales debe ser mayor de 500. Si uno o los dos son
mayores de 500, nos devolverá la suma de ambos. Si los
dos son mayores de 500, nos devolverá la suma de
ambos. Si los dos números son iguales o menores de
500, nos devolverá un mensaje de error.
Bucle de un programa
Si un programa que una parte del mismo se ejecuta
repetidamente un número determinado de veces. Este
número puede ser fijo o depender de determinadas
circunstancias.
1. Hasta [expresión][instrucciones]
2. Mientras [expresión][instrucciones]
Evalúan si la expresión da como resultado cierto, por lo que
las instrucciones podrían no ejecutarse nunca.
1. Haz.mientras [instrucciones][condición]
2. Haz.hasta [instrucciones][condición]
Ejecutan un grupo de instrucciones mientras una condición
sea cierta o hasta que una condición sea cierta.