Clase 1
-
Upload
gugui-maguna -
Category
Education
-
view
25 -
download
0
Transcript of Clase 1
La programación se refiere a idear y ordenar las acciones que se realizarán en el marco de un proyecto, a la preparación de máquinas para que cumplan con una cierta tarea en un momento determinado, a la elaboración de Programas para la resolución de problemas mediante computadoras.
• Planteamiento del problema
• Análisis de la solución del problema
•Diseño de la solución del problema
• Desarrollo de la solución del problema
• Evaluación y mantenimiento de la solución del problema
Todo persona que pretenda construir un programa que de solución determinada problemática, se enfrenta a dos grandes tareas:
• El QUÉ: acciones a realizar para poder resolver el problema. Esta tarea forma
parte del trabajo de mesa previo a toda actividad de programación.
• El CÓMO: instrucciones de las que se va a valer para escribir el código que realice las acciones determinadas en el QUÉ, las cuales están determinadas por el lenguaje de programación seleccionado.
• Algoritmo
Es un conjunto de pasos secuenciales y ordenados que permiten lograr un objetivo. Que sean secuenciales significa que deben ser ejecutados uno después de otro y que sean ordenados quiere decir que deben llevar un orden casi obligatorio. El algoritmo es el que permite lograr el objetivo propuesto.
• Diagrama de flujo
Los diagramas de flujo son una manera de representar visualmente el flujo de datos a través de sistemas de tratamiento de información. Los diagramas de flujo describen que operaciones y en que secuencia se requieren para solucionar un problema dado.
• Pseudocódigo
Es una descripción informal de alto nivel de un algoritmo informático de programación, compacto e informal, que utiliza las convenciones estructurales de un lenguaje de programación verdadero, pero que está diseñado para la lectura humana en lugar de la lectura mediante máquina, y con independencia de cualquier otro lenguaje de programación.
Un diagrama de flujo u organigrama es una representación diagramática que ilustra la secuencia de las operaciones que se realizarán para conseguir la solución de un problema. Los diagramas de flujo se dibujan generalmente antes de comenzar a programar el código frente a la computadora.
Inicio o fin del programa
Pasos, procesos o líneas de instrucción
Operaciones de entrada y salida
Toma de decisiones y Ramificación
Conector
Envía datos a la impresora
1. Los Diagramas de flujo deben escribirse de
arriba hacia abajo, y/o de izquierda a derecha.
2. Se debe evitar el cruce de líneas, para lo cual
si se quisiera separar el flujo del diagrama a
un sitio distinto, se puede realizar utilizando
los conectores.
3. No deben quedar líneas de flujo sin conectar.
4. Todo texto escrito dentro de un símbolo debe
ser legible, preciso, evitando el uso de
muchas palabras.
5. Todos los símbolos pueden tener más de una
línea de entrada, a excepción del símbolo
final.
6. Solo los símbolos de decisión pueden y deben
tener mas de una línea de flujo de salida.
Al igual que en la vida diaria, en un programa informático es necesario tomar decisiones basadas en ciertos hechos y actuar en consecuencia. En programación existe una sentencia básica denominada IF (condicional Sí), que realiza una comparación y permite dar una respuesta o ejecutar algún procedimiento de acuerdo al resultado. La sentencia IF actúa como una condición, si esta es verdadera la sentencia se ejecuta, de lo contrario se salta dicha sentencia, continuando así la ejecución del programa que puede involucrar otras sentencias IF que están a continuación de esta.
Condición SÍ
Función 1
NO
Función 2
La función While (Mientras) permite repetir una acción un numero finito o infinito de veces, siempre que se cumpla una condición. También se le llama Loop (Bucle).
Condición Sí cumple
Función 1
En la paleta completa de la consola NXT encontramos el menú “FLOW” (Flujo) ahí tenemos lo necesario para la programación.
LOOP
IF
Paleta común
Hace que se muevan los motores del robot. Con este bloque se mueven dos motores al mismo tiempo.
Dirección Potencia Duración
Motores a mover
Este bloque permite grabar movimientos físicos del robot y reproducirlos después, en cualquier parte del programa.
Este bloque permite reproducir sonidos al robot, incluyendo palabras grabadas previamente.
Accion Control Volumen
Este bloque permite visualizar imágenes y texto en la pantalla del NXT, incluso permite dibujar.
Accion
Este bloque hace que el robot espere por un dato de entrada (sensor) o a que transcurra un tiempo determinado.
Tiempo Toque Luz Sonido
Ultrasonico Color
Los bloques de acción le permiten controlar tipos de comportamiento específico relacionados con varios dispositivos de salida: el servomotor interactivo, los sonidos del NXT, la pantalla del NXT, el Bluetooth (enviar), los motores y las lámparas.
El bloque motor sirve para mover los motores, pero a diferencia del bloque “mover” este mueve de un motor por vez.
Es el mismo bloque de sonidos del menú comun Es el mismo bloque de visualización del menú común
Permite el envió de datos por bluetooth.
Enciende las lámparas led del NXT y cambia los colores.
Bloque de espera o retraso. Este bloque hace que el robot se detenga esperando el cumplimiento de una acción.
La espera puede depender del tiempo o de la activación de algún sensor.
Todo lo que esta en el interior de este bloque se repite cuantas veces sea necesario, incluso infinitas veces.
Sirve para que el robot tome decisiones a partir de diferentes condiciones. Estas condiciones pueden depender de un sensor o de un estado lógico (verdadero o falso)
Este bloque, detiene al robot.
En este menú se encuentran todos los bloques que nos servirán para el tratamiento de datos.
Entrega un valor lógico (verdadero o falso, 1 o 0) de acuerdo a los datos que ingrenan.
Sirve para realizar operaciones matemáticas; suma, resta, división y multiplicación.
Este bloque compara dos valores, por ejemplo: A<B: A>B: A=B, etc.
Se usa para saber si un valor se encuentra dentro o fuera de un intervalo o rango.
Este bloque genera valores aleatorios.
En este bloque se designa una variable, lógica o numérica, que ira cambiando a medida que transcurra el programa del robot.
A este bloque se le designa un valor constante para ser usado durante el programa.
Este menú contiene funciones avanzadas, del cual solo nos serán útiles, por el momento, los dos primeros bloques.
Este bloque convierte un numero en texto para poder ser mostrado en el display. Por ejemplo la lectura de un sensor.
Se usa para mostrar textos en la pantalla o para escribir textos ya sea para mostrarlos o enviarlos por mensaje vía bluetooth.
Barra Personalizada
En esta barra encontraremos los bloques creados por nosotros y los bloques que se pueden descargar de la pagina de Lego.