Documenti di Didattica
Documenti di Professioni
Documenti di Cultura
Nome:
N :
E-Mail:
Introduo
O Problema
2
Como pode ser observado, o mapa da ilha a ser percorrida foi dividido em
quadrados, e a cada um dos quadrados pertencia um tipo de superfcie:
Terra ou gua.
Ou seja, dito de outra maneira, o objectivo do robot era identificar as partes
Terra junto ao oceano, de modo a delinear a fronteira da ilha. Portanto, o
robot devia ser programado de modo a reconhecer o tipo de superfcie sua
volta e mover-se de acordo com a informao recolhida.
Soluo
Como j foi referido, o objectivo do robot identificar as superfcies sua
volta e agir de acordo com a informao recolhida.
A forma de agir a seguinte: Temos o robot numa determinada posio, e
necessrio avaliar as superfcies. Imaginemos a seguinte situao:
O robot analisa o terreno em seu redor e pensa:
- Existe gua nas posies x e y minha volta e as restantes so terra, isso
significa que vou ter de me deslocar na direco z
este o raciocnio necessrio fazer em cada cenrio, ou seja, de cada vez
que o robot se move. ento claro que, dependendo das posies em que
exista terra e gua, o robot vai se comportar de maneira diferente.
Supondo o seguinte cenrio:
Legenda:
Cinzento
gua
Branco Terra
2
3
7
6
Norte:
Legenda:
Cinzento gua
Branco Terra
Verde Movimento
Noroeste:
Oeste:
Sudeste:
Sudoeste:
Sul
ORIENTA
SUP-0 SUP-1 SUP-2 SUP-3 SUP-4 SUP-5 SUP-6 SUP-7
O
O vector dirsup responsvel por armazenar a orientao actual do robot
e o tipo de superfcies das posies volta. Este vector pode ser
representado da seguinte maneira:
Ex.: Sup-1 Superfcie
da posio 1.
COORDENADA X DA POSIO DO
ROBOT
COORDENADA X DA POSIO 0
COORDENADA Y DA POSIO DO
ROBOT
COORDENADA Y DA POSIO 1
SUP-8
Norte.
Noroeste se a posio 1 do vector dirsup (correspondente casa 0 do
esquema de posio do robot) contiver um 0 e a posio 2 (correspondente
casa 1) contiver um 1. Vai imprimir o nmero 1 para indicar a direco
Noroeste.
Oeste se a posio 2 do vector dirsup (correspondente casa 1 do
esquema de posio do robot) contiver um 0 e a posio 3 (correspondente
casa 2) contiver um 1. Vai imprimir o nmero 2 para indicar a direco
Oeste.
Sudoeste se a posio 3 do vector dirsup (correspondente casa 2 do
esquema de posio do robot) contiver um 0 e a posio 4 (correspondente
casa 3) contiver um 1. Vai imprimir o nmero 3 para indicar a direco
Sudoeste.
Sul se a posio 4 do vector dirsup (correspondente casa 3 do esquema
de posio do robot) contiver um 0 e a posio 5 (correspondente casa 4)
contiver um 1. Vai imprimir o nmero 4 para indicar a direco Sul.
Sudeste se a posio 5 do vector dirsup (correspondente casa 4 do
esquema de posio do robot) contiver um 0 e a posio 6 (correspondente
casa 5) contiver um 1. Vai imprimir o nmero 5 para indicar a direco
Sudeste.
Nordeste se a posio 7 do vector dirsup (correspondente casa 6 do
esquema de posio do robot) contiver um 0 e a posio 8 (correspondente
casa 7) contiver um 1. Vai imprimir o nmero 7 para indicar a direco
Nordeste.
Concluso
Com este trabalho posso concluir que este projecto ajudou a melhorar as
minhas capacidades de programao, exercitar os contedos leccionados.
Senti que tive a oportunidade de aplicar os conhecimentos adquiridos, alm
de exercitar e desenvolver o raciocnio matemtico, vital para o mundo da
programao.
Posso dizer que este projecto ajudou-me imenso no s minha vida
enquanto futuro programador mas como me ajudou a desenvolver enquanto
pessoa, em como encarar e resolver os problemas e obstculos que vo
surgindo na vida.
10
Anexos
#include <stdio.h>
int main()
{
int dirsup[9];
int coord[9][2];
printf("\t x y d\n\n");
p++;
}
11
12
printf("7"); break;
}
}
printf("\nSe esta for a posio final, insira -1");
scanf("%d",&dec);
getchar();getchar();
}
13