Aula anterior... Definição do algoritmo (continuação)



Documentos relacionados
Os meus amigos Robots

PC Robots V. 1.4 V.Lobo Escola Naval 2006

Introdução à Programação. João Manuel R. S. Tavares

7 - Análise de redes Pesquisa Operacional CAPÍTULO 7 ANÁLISE DE REDES. 4 c. Figura Exemplo de um grafo linear.

Psicogênese da Alfabetização Emilia Ferreiro. Rosa Maria Corrêa

Estrutura de Dados Básica

Actividade: Semelhança de triângulos

Instituto Superior Técnico Licenciatura em Engenharia Informática e de Computadores. Projecto de. Arquitectura de Computadores.

UNIDADE 6 - PROGRAMAÇÃO MODULAR

natureza do projeto e da aplicação métodos e ferramentas a serem usados controles e produtos que precisam ser entregues

"SISTEMAS DE COTAGEM"

Amostras e guias de iniciação Versão 8 Edição 0. Guia de iniciação do Hiring Sample para o IBM Process Designer

NOME: TURMA. a) Mostre que, numa representação em complemento para dois, são necessários 8 bits para representar Tset e 7 bits para representar T.

Capítulo 6 Movimentos

Cotagem de dimensões básicas

Estruturas de Repetição

Introdução à Ciência da Computação

Trabalho 7 Fila de prioridade usando heap para simulação de atendimento

Agentes Autónomos e Sistemas Multiagente

Visão Artificial Para a Indústria. Manual do Utilizador

6 Circuitos pneumáticos e hidráulicos

Aula anterior... Aula anterior... (cont.)

Capítulo 2. VARIÁVEIS DO TIPO INTEIRO

Resolução eficaz de problemas: quatro exemplos

Ensinar o conceito de regressão linear com o Geogebra

Assinatura ainda não verificada

DANÇANDO COM A ROSA DOS VENTOS

Implementadas por Computador

PLANO DE OCUPAÇÃO DOS TEMPOS ESCOLARES

MANIPULAÇÃO DE STRINGS

MOODLE: actividade WiKi

Base Nacional Comum Curricular Lemann Center at Stanford University

Cálculo em Computadores trajectórias 1. Trajectórias Planas. 1 Trajectórias. 4.3 exercícios Coordenadas polares 5

Transcrição Automática de Música

Manual de operação do sistema Desenhador Geográfico. 05/2012 Versão

EUCO 5/16 arg/ec/fc 1 PT

Reaproveitando algoritmos

Sistemas de Manutenção da Verdade-4. "Truth Maintenance System" Objectivos de um TMS: 1. Identificar a responsabilidade pelas conclusões

MODELAGEM VISUAL DE OBJETOS COM UML DIAGRAMA DE CLASSES.

GeoMafra SIG Municipal

LÓGICA DE PROGRAMAÇÃO PARA ENGENHARIA INTRODUÇÃO À LÓGICA DE PROGRAMAÇÃO PARTE I. Prof. Dr. Daniel Caetano

Engenharia do Conhecimento

Formador: Carlos Maia

AULA TEÓRICA 10 Tema 9. Introdução à programação. Desenho de Algoritmos

O mecanismo de alocação da CPU para execução de processos constitui a base dos sistemas operacionais multiprogramados.

Plano de Trabalho Docente Componente Curricular: Desenho Auxiliado por Computador II

Plano de Trabalho Docente Ensino Técnico

Capítulo. 4-1 Equações lineares simultâneas 4-2 Equações de elevado grau 4-3 Cálculos de resoluções 4-4 O que fazer quando surje um erro

Guia de Acesso ao AVA. Ms. Eng. Claudio Ferreira de Carvalho

Tema I: Teoria Matemática das Eleições Nº de Aulas Previstas (90 m): 18

INFORMATIVO DE PRODUTO

PROGRAMAÇÃO II 3. FILA DINÂMICA

Sistema topograph 98. Tutorial Módulo Fundiário

Utilização do Solver na solução de problemas de PL

1. Configuração Configuração de eventos Pesquisa de eventos Códigos Dados para configuração

Escalas. Antes de representar objetos, modelos, peças, A U L A. Nossa aula. O que é escala

Algoritmos e Programação Parte Teórica

Ferramentas Web, Web 2.0 e Software Livre em EVT

REGULAMENTO DO CENTRO DE DOCUMENTAÇÃO

Introdução à Programação

1) Plano de Aula PARTE I ENQUADRAMENTO. Título Nível de Ensino Anos de escolaridade Disciplina Escala Tema/Conteúdos

PROVA DE MATEMÁTICA PARA OS CANDIDATOS MAIORES DE 23 ANOS

Portal do Projeto Tempo de Ser

RELATÓRIO. Geogebra- Uma visita aos programas de Matemática dos 2º e 3º ciclos. Formanda: Célia Rute Silva C. Sousa Formador: Luís Roçadas

UNIVERSIDADE PAULISTA UNIP INSTITUTO DE CIÊNCIAS EXATAS E TECNOLOGIA CURSO DE ENGENHARIA COMPUTAÇÃO

DATAGEOSIS EDUCACIONAL 2005

Resolução de Problemas

PP 301 Engenharia de Reservatórios I 11/05/2011

Ferramentas Web, Web 2.0 e Software Livre em EVT

AGRUPAMENTO DE ESCOLAS ALVES REDOL ESCOLA SEDE: ESCOLA SECUNDÁRIA ALVES REDOL. Educação Tecnológica. Desenho Técnico

Introdução à Informática

Programação em papel quadriculado

7. ESTRUTURAS DE DADOS ESTÁTICAS E DINÂMICAS

Grafos Ordenação Topológica. Graça Nunes 1º. Semestre 2012

Projecto de Programação por Objectos 2007/08 Escalonamento em Multi-processador por Programação Evolutiva MEBiom/MEEC 1 Problema

Informática de Gestão 1º ano / 1º semestre Ano letivo: 2014/2015. Visual Basic VBA

FORMULÁRIO E RELATÓRIO DE AVALIAÇÃO DO DESEMPENHO DO PESSOAL DOCENTE

Manual de Operação do Multiconta Drive / Delivery

Cotagem de elementos

Informática no Ensino de Matemática Prof. José Carlos de Souza Junior

Algoritmos e programação

Análise do perfil de cargos de comando da SES/SP

Informática II Cap. 3

Ministério da Indústria e Comércio

Implementando uma Classe e Criando Objetos a partir dela

4 Sistemas de Equações Lineares

Instituto Superior Politécnico de VISEU. Escola Superior de Tecnologia

O Gerenciamento de Documentos Analógico/Digital

e-sus Atenção Básica Manual de Utilização do Sistema Prontuário Eletrônico do Cidadão - PEC

Certificação Digital CETIP. Cartilha de Segurança Digital

SISTEMA VESTIBULAR E MANUTENÇÃO DO EQUILÍBRIO

Filas. A ordem de saída corresponde diretamente à ordem de entrada dos elementos. Fila de caixa bancário

Sessão 2 UFCD 0804 Algoritmos

FORMULÁRIO DE AVALIAÇÃO DO DESEMPENHO DO PESSOAL DOCENTE

1 CIRCUITOS COMBINACIONAIS

Exemplo: Na figura 1, abaixo, temos: Clique aqui para continuar, que é a primeira atividade que você precisa realizar para iniciar seus estudos.

Regulamento de Utilização das salas de Informática

EXAME NACIONAL DO ENSINO SECUNDÁRIO

UNIÃO EDUCACIONAL DO NORTE UNINORTE AUTOR (ES) AUTOR (ES) TÍTULO DO PROJETO

Transcrição:

Aula anterior... Definição do algoritmo (continuação) Método de decomposição hierárquica utilizando níveis crescentes de detalhe (abordagem top-down) Primeira noção de encapsulamento de operações

Decomposição hierárquica nome: asdzxc passo 1 passo 2 passo 3. Nível 1 Nível 2 nome: passo 1 passo 1.1 passo 1.2 passo 1.3 nome: passo 3 passo 3.1 passo 3.2 passo 3.3 passo 3.4 nome: passo 2 passo 2.1 passo 2.2 nome: passo 3.2 passo 3.2.1 passo 3.2.2... Nível 3

Esta aula... Definição do algoritmo (continuação mais exemplos) Encapsulamento de operações Noção geral de procedimento e de função

O robot Francisco Apresentação: O Francisco é um robot formado por uma base móvel, que possibilita a sua deslocação linear, para a esquerda e para a direita, por uma câmara vídeo, que lhe permite a detecção rudimentar de objectos, presentes no cenário visualizado, e a determinação da cor de objectos particulares, e por um braço articulado, terminado numa pinça, que pode ser usado para pegar em objectos de pequenas dimensões.

O robot Francisco Operações que o Francisco executa: deslocar-se para a posição (X) - dada uma coordenada linear de posição, o Francisco acciona o motor da sua base móvel e desloca-se para a posição indicada; (procedimento) pegar num objecto - o Francisco usa a pinça do seu braço articulado para pegar num objecto que ele detectou no cenário visualizado; (procedimento) pousar um objecto - o Francisco move o seu braço articulado para pousar, no centro da área visualizada, o objecto que segura na pinça; (procedimento) detecção de objectos - com a sua câmara vídeo, o Francisco pode determinar se existem ou não objectos no cenário que visualiza (função booleana); cor do objecto - igualmente com a sua câmara vídeo, o Francisco pode ainda determinar a cor do objecto que segura na pinça (função que devolve o nome de uma cor).

Sua formulação: Dados três vasos cilíndricos, A, B, C, colocados sobre uma mesa, que contêm berlindes de vidro de três cores diferentes, ensinar o Francisco a separálos, de modo a que os berlindes verdes fiquem no vaso A, os berlindes azuis no vaso B e os berlindes rosa no vaso C. A B C Variáveis de entrada: X A, X B, X C (coordenadas lineares da posição dos vasos A, B, C)

Solução: Para resolver o problema, é necessário o recurso a um vaso auxiliar, onde os berlindes são despejados, antes de se iniciar o processo de separação. A separação, propriamente dita, vai consistir num processo repetitivo, em que cada berlinde é retirado do vaso auxiliar e, de acordo com a cor que apresenta, é colocado no vaso de destino. A B C A U X

Algoritmo: (Decomposição ao nível 1) nome: Separação dos berlindes Procedimento (Sequência de operações) deslocar todos os berlindes do vaso de partida para o vaso de destino (A, AUX); deslocar todos os berlindes do vaso de partida para o vaso de destino (B, AUX); deslocar todos os berlindes do vaso de partida para o vaso de destino (C, AUX); while há berlindes no vaso (AUX) do retirar um berlinde do vaso e arrumá-lo no vaso de destino correspondente (A, B, C) Função (Operação específica que resulta num dado valor)

nome: Deslocar todos os berlindes do vaso de partida para o vaso de destino procedimento variáveis de entrada: X - vaso de partida Y - vaso de destino while há berlindes no vaso (X) do pegar num objecto; colocar berlinde no vaso (Y) (Decomposição ao nível 2)

(Decomposição ao nível 2) nome: Há berlindes no vaso função booleana retorna TRUE, se existir pelo menos um berlinde no vaso FALSE, em caso contrário variável de entrada: X - vaso em análise deslocar-se para a posição (X); TESTE := detecção de objectos; retornar o valor de TESTE

(Decomposição ao nível 2) nome: Retirar um berlinde do vaso e arrumá-lo no vaso de destino correspondente pegar num objecto; COR := cor do objecto; case COR of VERDE: colocar berlinde no vaso (A); AZUL: colocar berlinde no vaso (B); ROSA: colocar berlinde no vaso (C)

nome: Colocar berlinde no vaso procedimento variável de entrada: Y - vaso de destino deslocar-se para a posição (Y); pousar um objecto (Decomposição ao nível 3)

Separação dos berlindes Procedimento Deslocar todos os berlindes do vaso de partida para o vaso de destino Função Há berlindes no vaso Procedimento Retirar um berlinde de um vaso e arrumá-lo no vaso de destino correspondente Procedimento Colocar berlinde no vaso Nível 1 Nível 2 Nível 3

Observações O problema, tal como foi formulado, não tem variáveis de saída, porque o Francisco é um computador muito especial. Embora, como a generalidade dos computadores e dos seres humanos, o Francisco processe informação, os resultados por ele obtidos traduzem-se em acções concretas. Contudo, se estivéssemos interessados numa solução que pudesse ser executada num computador convencional, as três variáveis de entrada anteriores seriam substituídas por nove variáveis de entrada / saída (variáveis de estado), do tipo N (vaso, cor), relativas ao n.º de berlindes de cor cor, existentes no vaso vaso. A intenção expressa de implementar algumas das operações anteriores, através de mecanismos de encapsulamento de informação, permitiu aumentar o vocabulário do Francisco. Agora, além das cinco operações base, ele conhece mais três: deslocar todos os berlindes de um vaso de partida para um vaso de destino, existência de berlindes num vaso e colocar um berlinde num vaso. Este mecanismo é extremamente importante, porque permite dar concisão, clareza e robustez às descrições das soluções de problemas complexos.

Desenhar um triângulo isósceles e recto Apresentação: Utilizando asteriscos e espaços desenhe no écran um triângulo isósceles e recto (ver figura) que tenha de lado um dado número (n) de asteriscos fornecido como parâmetro de entrada. 15 espaços * * * * * * * * * * * * * * *

Desenhar um triângulo isósceles e recto Formulação: Variáveis de entrada: Variáveis de saída: Solução/Método:

Desenhar um triângulo isósceles e recto Algorítmo: