Vamos a analizar el algoritmo para obtener el mayor de tres números
Algoritmo para obtener el mayor de tres números
Fuente: Hazaelocielx's Blog
ALGORITMO INFORMAL
INICIO.
1.- Pedir al usuario tres números diferentes.
2.- Comparar el primero con el segundo.
3.- Al mayor de los anteriores, compararlo con el tercero. El número más grande es el mayor de los tres.
4.- Imprimir el resultado en la pantalla.
FIN
ALGORITMO COMPUTACIONAL
INICIO
1.- Solicitar a usuario n1, n2 y n3
2.- Comparar n1 con n2
3.- Si n1 > n2
Si n1 > n3
Imprimir n1
Si no
Imprimir n3
Si no, comparar n2 con n3
Si n2 > n3
Imprimir n2
Si no
Imprimir n3
FIN
En nuestro caso lo vamos a adaptar a para obtener la distancian mayor obtenida por un sensor de ultrasonidos que realiza tres medidas:
Se posiciona en 0º y realiza una medida. distancia_0
Se posiciona en 90º y realiza una segunda media. distancia_90
Se posiciona en 180º y realiza una tercera medida distancia_180
El valor obtenido, la distancia mayor se va a utilizar para indicar al robot la dirección en la que tiene que avanzar.
ALGORITMO INFORMAL
INICIO.
1.- Realizar las medidas de distancia (distancia_0, distancia_90 y distancia_180).
2.- Comparar el primero con el segundo.
3.- Al mayor de los anteriores, compararlo con el tercero. El número más grande es el mayor de los tres.
4.- Imprimir el resultado en la pantalla.
FIN
ALGORITMO COMPUTACIONAL
INICIO
1.- Realizar las medidas de distancia (distancia_0, distancia_90 y distancia_180).
2.- Comparar distancia_0 con distancia_90
3.- Si distancia_0 >distancia_90
Si distancia_0 > distancia_180
avanzar();
Si no
girarDerecha();
Si no, comparar distancia_90 con distancia_180
Si distancia_90 > distancia_180
girarIzquierda();
Si no
girarDerecha();
FIN
Las funciones avanzar(), girarDerecha() y girarIzquierda(), han sido creadas para controlar el funcionamiento del robot.