Programação Aplicada de Computadores. Trabalho 1 Freecell

Tamanho: px
Começar a partir da página:

Download "Programação Aplicada de Computadores. Trabalho 1 Freecell"

Transcrição

1 Programação Aplicada de Computadores Trabalho 1 Freecell 1. Objetivo O objetivo deste trabalho é implementar o jogo Freecell utilizando a estrutura de dados Pilha (stack). Freecell é um jogo de cartas que tem por finalidade agrupar todas as cartas de mesmo naipe (paus, copas, ouro ou espada) em 4 pilhas, seguindo algumas regras. O primeiro passo para começar o jogo é embaralhar as cartas e distribuí las sobre a mesa. A figura abaixo representa uma configuração inicial da mesa. As cartas são embaralhadas e distribuídas em 8 pilhas (nomeadas aqui como pilhas A, B, C,..., H); Há 4 pilhas na mesa (nomeadas aqui como 0, 1, 2 e 3) onde pode se agrupar as cartas pelo naipe; Há ainda 4 espaços reservas (nomeados aqui como W, X, Y e Z) para que se possa colocar uma carta de quaisquer pilhas; A idéia é movimentar todas as cartas contidas nas pilhas A,..., H para as pilhas 0,..., 3, podendo se utilizar os espaços W,..., Z para armazenamento temporário de cartas. Algumas regras devem ser seguidas: A ordem crescente das cartas é: A, 2, 3, 4, 5, 6, 7, 8, 9, 10, J, Q, K; A inserção de cartas nas pilhas A,..., H deve respeitar a ordem decrescente e ainda duas cartas adjacentes não devem ter a mesma cor: preta (paus e espada) e vermelha (ouro e copas). Como exemplo, a seguinte ordem de cartas é aceita: Rei de paus (K), Dama de ouro (Q), Valete de espada (J), 10 de ouro, 9 de espada, 8 de copas. Assim a última carta colocada na pilha é 8 de copas. Se a

2 pilha estiver vazia, qualquer carta é aceita; Em cada uma das pilhas 0,..., 3 deve haver apenas cartas de mesmo naipe e em ordem crescente: por exemplo, na pilha 0, primeiro deve se colocar um às de copas, depois, sobre o às de copas, deve se colocar um 2 de copas, e assim por diante; Cada espaço W,..., Z pode armazenar no máximo uma carta; As cartas devem ser movimentadas seguindo a definição de pilhas: a última carta colocada na pilha deve ser a primeira a ser retirada da pilha. 2. Implemetação O seu trabalho é fazer um programa em C que implemente ao menos uma estrutura pilha (com métodos push e pop) e simule o jogo Freecell. O nome das 52 cartas já embaralhadas e os comandos de movimentação de cartas serão repassados ao programa pela entrada padrão (stdin). O nome de uma carta é formado por 2 caracteres: o primeiro caracter indica o naipe da carta ('0' = copas, '1' = paus, '2' = ouro, '3' = espada) e o segundo caracter indica o valor da carta ('A' = às, 'B' = 2, 'C' = 3,..., 'J' = 10, 'K' = Valete, 'L' = Dama, 'M' = Rei). Por exemplo, '1K' refere se à carta Valete de paus. Inicialmente, essas cartas devem ser colocadas nas pilhas A,..., H uma a uma, ou seja, a primeira carta do baralho deve ir para a pilha A, a segunda deve ir para a pilha B, e assim por diante até a pilha H e retornando para A. Esse processo deve ser feito para todas as 52 cartas de entrada. Um comando de movimentação de carta de um lugar para outro é também formado por 2 caracteres. O primeiro caracter indica a pilha (ou espaço) de origem (de onde deve se retirar uma carta) e o segundo caracter indica a pilha (ou espaço) de destino (onde a carta deve ser colocada). Por exemplo, o comando 'A0' indica que deve se retirar uma carta da pilha A e colocá la na pilha 0, e o comando '0X' indica que deve se retirar a carta que está na pilha 0 e colocá la no espaço X. Qualquer movimentação inválida deve ser simplesmente ignorada. O comando '' indica que deve ser impresso na tela o estado atual das pilhas A,..., H. O estado de uma pilha é o nome da última carta colocada na pilha ('' indica pilha vazia). Entrada: Veja o exemplo a seguir: 0A 0B 0C 0D 0E 0F 0G 0H 0I 0J 0K 0L 0M 1A 1B 1C 1D 1E 1F 1G 1H 1I 1J 1K 1L 1M 2A 2B 2C 2D 2E 2F 2G 2H 2I 2J 2K 2L 2M 3A 3B 3C 3D 3E 3F 3G 3H 3I 3J 3K 3L 3M HW H0

3 CX CY CZ C1 C2 Z1 Z3 1H 3G Saída: 3J 3K 3L 3M 3F 3G 3H 3A 3J 3K 3L 3M 3F 3G 3H 2F 3. Documentação Você deverá documentar seu trabalho no arquivo LEIAME.txt. Sua documentação deve conter: Introdução: descricao do problema a ser resolvido e visão geral sobre o funcionamento do programa. Implementação: descrição da implementação do programa (devem ser detalhadas as estruturas de dados implementadas, o funcionamento das principais funções utilizadas, o formato de entrada e saida de dados, bem como as decisões tomadas relativas aos casos e detalhes de especificação que porventura estejam omissos no enunciado). Conclusão: comentarios gerais sobre o trabalho e as principais dificuldades encontradas em sua implementação. Bibliografia: bibliografia utilizada.

4 4. Avaliação A nota do trabalho terá um total de 10 pontos, sendo 2 pontos para a documentação. A pontuação restante será calculada automaticamente de acordo com a percentagem de erros/acertos em um benchmark pré definido; Serão contemplados com nota zero os trabalhos que se enquadrarem em uma ou mais situações abaixo: Plágio; Programa não compila; Não está de acordo com as especificações (a não utilização de pilhas, por exemplo). 5. Entrega Este trabalho deve ser feito em grupo de até 2 componentes e entregue até o dia 25/09/2011, às 23:59:59hs. Ele deve ser enviado para mberger@inf.ufes.br. O assunto da mensagem deve ser : prog3:trab1:<nome1>:<nome2> Ex: prog3:trab1:jociel Andrade:Mariella Berger O nome do arquivo com o trabalho enviado em anexo deve ser trab1.tar.gz. Ele será descompactado da seguinte forma: tar xvzf trab1.tar.gz e deverá gerar um arquivo chamado Makefile, com as regras de compilação do programa, o arquivo com o código do programa e o arquivo de documentação LEIAME.txt. Ao digitar: make all deve ser gerado um executável chamado trab1. O recebimento dos trabalhos é automatizado. Siga as instruções à risca pois algum erro na submissão pode inviabilizar a entrega do seu trabalho. Não escreva o seu nome com caracteres estendidos (á, ç, etc.). Não utilize contas de e mail do HOTMAIL, TERRA ou BOL pois as mensagens enviadas por esses servidores não seguem o padrão. Assim, o programa de recebimento automático não consegue detectar o seu e mail.

5 Não deixe para entregar seu trabalho no último instante. Você poderá perder o prazo e ter seu trabalho invalidado. 3. Considerações Importantes Modularize o seu código adequadamente. Crie arquivos.c e.h para cada módulo do seu sistema. Em especial, crie arquivos exclusivos para manipular as estruturas de dados dos tipos abstratos de dados que você estiver representando. Seu programa deve ser, obrigatoriamente, compilado com o utilitário make. Crie um arquivo Makefile que gere como executável para o seu programa um arquivo de nome trab1. Não utilize variáveis globais em seu programa. Otimize seu código. Crie códigos claros e organizados. Utilize um estilo de programação consistente. Comente o seu código extensivamente. Isto ajudará no momento da correção. 4. Observação Importante Mais detalhes serão discutidos em sala de aula. Considerações feitas em sala terão mais relevância do que as contidas nesta especificação. 6. Referências 7. Dúvidas KDE Patience Game (KPatience para Linux) 1995, Paul Olav Tvete Em caso de dúvidas no trabalho contate nos.

Programação II. Trabalho 2 Freecell

Programação II. Trabalho 2 Freecell Programação II Trabalho 2 Freecell 1. Objetivo O objetivo deste trabalho é implementar o jogo Freecell utilizando o Tipo Abstrato de Dados (TAD) Pilha (stack). Freecell é um jogo de cartas que tem por

Leia mais

Estrutura de Dados Prof. a Mariella Berger. Trabalho 2 - Freecell

Estrutura de Dados Prof. a Mariella Berger. Trabalho 2 - Freecell Estrutura de Dados Prof. a Mariella Berger Trabalho 2 - Freecell 1. Objetivo O objetivo deste trabalho é implementar o jogo Freecell utilizando a estrutura Pilha (stack). Freecell é um jogo de cartas que

Leia mais

Compiladores Prof. a Mariella Berger. Trabalho 3 Analisador Semântico

Compiladores Prof. a Mariella Berger. Trabalho 3 Analisador Semântico Compiladores Prof. a Mariella Berger Trabalho 3 Analisador Semântico 1. Objetivo O objetivo do trabalho 3 é a criação do Analisador Semântico de seu Interpretador. 2. Implemetação Você deverá utilizar

Leia mais

Máquinas de Busca. Estruturas de Dados II Prof. a Mariella Berger. 1. Objetivo

Máquinas de Busca. Estruturas de Dados II Prof. a Mariella Berger. 1. Objetivo Estruturas de Dados II Prof. a Mariella Berger Máquinas de Busca 1. Objetivo O objetivo deste trabalho é implementar máquinas de buscas baseadas em diferentes modelos clássicos de recuperação de informação.

Leia mais

Compiladores Prof. a Mariella Berger. Trabalho 2 Analisador Léxico

Compiladores Prof. a Mariella Berger. Trabalho 2 Analisador Léxico Compiladores Prof. a Mariella Berger Trabalho 2 Analisador Léxico 1. Objetivo O objetivo deste trabalho é a criação de um analisador léxico para a linguagem Pascalito, um subconjunto modificado da linguagem

Leia mais

Compiladores Prof. a Mariella Berger. Trabalho 1 Analisador Léxico

Compiladores Prof. a Mariella Berger. Trabalho 1 Analisador Léxico Compiladores Prof. a Mariella Berger Trabalho 1 Analisador Léxico 1. Objetivo O objetivo deste trabalho é a criação de um analisador léxico que será utilizado por um interpretador da linguagem Pascalzinho.

Leia mais

Estruturas de Dados II. Caixeiro Viajante

Estruturas de Dados II. Caixeiro Viajante Estruturas de Dados II Prof. a Mariella Berger Caixeiro Viajante 1. Objetivo O objetivo deste trabalho é implementar diferentes soluções para o problema clássico do Caixeiro Viajante. 2. Introdução O Problema

Leia mais

Caixeiro Viajante. Estruturas de Dados II. Prof. a Mariella Berger. 1. Objetivo

Caixeiro Viajante. Estruturas de Dados II. Prof. a Mariella Berger. 1. Objetivo Estruturas de Dados II Prof. a Mariella Berger Caixeiro Viajante 1. Objetivo O objetivo deste trabalho é implementar diferentes soluções para o problema clássico do Caixeiro Viajante. 2. Introdução O Problema

Leia mais

Trabalho de LP 15/07/2013. Prof. Flávio Miguel Varejão

Trabalho de LP 15/07/2013. Prof. Flávio Miguel Varejão 15/07/2013 Trabalho de LP Prof. Flávio Miguel Varejão OBSERVAÇÃO IMPORTANTE: LEIA ATENTAMENTE TODA A ESPECIFICAÇÃO DO TRABALHO E INSTRUÇÕES DE SUBMISSÃO DE MODO A NÃO COMETER ENGANOS POR DESATENÇÃO E SER

Leia mais

08/09/10. Atividade Supervisionada: Programação de Computadores. Profa.: Alessandra Bussador

08/09/10. Atividade Supervisionada: Programação de Computadores. Profa.: Alessandra Bussador 08/09/10 Atividade Supervisionada: Programação de Computadores Profa.: Alessandra Bussador Leia atentamente TODO o enunciado do trabalho (a especificação do problema e os detalhes sobre a confecção, submissão

Leia mais

WikED! Na última década, um grande número de sistemas colaborativos apareceram

WikED! Na última década, um grande número de sistemas colaborativos apareceram Universidade Federal do Espírito Santo Departamento de Informática Estruturas de Dados I (INF09292) 1o Trabalho Prático Período: 2015/2 Profa Patrícia Dockhorn Costa Email: pdcosta@inf.ufes.br Data de

Leia mais

Universidade Federal do Espírito Santo - CT - DI Trabalho Computacional - PD II - Engenharia Elétrica Profa. Maria Cristina Rangel

Universidade Federal do Espírito Santo - CT - DI Trabalho Computacional - PD II - Engenharia Elétrica Profa. Maria Cristina Rangel Universidade Federal do Espírito Santo - CT - DI Trabalho Computacional - PD II - Engenharia Elétrica Profa. Maria Cristina Rangel Considere o esboço do estado do ES e n = 30 cidades enumeradas de 1, 2,...,

Leia mais

Programação II Primeiro Trabalho

Programação II Primeiro Trabalho 08/10/2008 Programação II Primeiro Trabalho Prof.: Flávio Miguel Varejão Leia atentamente TODO o enunciado do trabalho (a especificação do problema e os detalhes sobre a confecção, submissão e avaliação

Leia mais

Este trabalho tem como objetivo praticar o uso de tipos abstratos de dados e estruturas do tipo Lista.

Este trabalho tem como objetivo praticar o uso de tipos abstratos de dados e estruturas do tipo Lista. Universidade Federal do Espírito Santo Departamento de Informática Estruturas de Dados I (INF09292) 1 o Trabalho Prático Período: 2012/1 Prof a Patrícia Dockhorn Costa Email: pdcosta@inf.ufes.br Data de

Leia mais

29/04/2015. Trabalho de Programação 3. Prof. Flávio Miguel Varejão. I. Descrição

29/04/2015. Trabalho de Programação 3. Prof. Flávio Miguel Varejão. I. Descrição O trabalho de Programação 3 de 2016/1 do prof. Flávio Varejão foi uma versão simplificada do trabalho abaixo, usado pelo prof. Flávio no ano anterior. Basicamente a simplificação foi deixar apenas as classes

Leia mais

Universidade Federal do Espírito Santo - CT - DI Trabalho Computacional - PD II - Engenharia de Computação Profa. Claudia Boeres

Universidade Federal do Espírito Santo - CT - DI Trabalho Computacional - PD II - Engenharia de Computação Profa. Claudia Boeres Universidade Federal do Espírito Santo - CT - DI Trabalho Computacional - PD II - Engenharia de Computação Profa. Claudia Boeres Considere o esboço do estado do ES e n cidades enumeradas de 1, 2,..., n.

Leia mais

Trabalho de LP 14/03/2011. Prof. Flávio Miguel Varejão. I. Descrição

Trabalho de LP 14/03/2011. Prof. Flávio Miguel Varejão. I. Descrição 14/03/2011 Trabalho de LP Prof. Flávio Miguel Varejão I. Descrição Sucuri é uma linguagem de programação criada com o intuito de ser utilizada no ensino de programação básica. Sucuri possui um conjunto

Leia mais

Universidade Federal do Espírito Santo - Departamento de Informática. Estruturas de Dados I INF09292

Universidade Federal do Espírito Santo - Departamento de Informática. Estruturas de Dados I INF09292 Universidade Federal do Espírito Santo - Departamento de Informática Estruturas de Dados I INF09292 1 o Trabalho Prático de 2017/02 Prof.ª Patrícia Dockhorn Costa, Email: pdcosta@inf.ufes.br Data de Entrega:

Leia mais

Sistema Rodoviário Tabajara

Sistema Rodoviário Tabajara Universidade Federal do Espírito Santo Departamento de Informática Est. de Informação (INF02827) & Est. de Dados (INF01906) 2 o Trabalho Prático Período: 2008/2 Prof a Patrícia Dockhorn Costa Email: pdcosta@inf.ufes.br

Leia mais

SME Introdução à Programação de Computadores Primeiro semestre de Trabalho: jogo Semáforo

SME Introdução à Programação de Computadores Primeiro semestre de Trabalho: jogo Semáforo SME0230 - Introdução à Programação de Computadores Primeiro semestre de 2017 Professora: Marina Andretta (andretta@icmc.usp.br) Monitores: Douglas Buzzanello Tinoco (douglas.tinoco@usp.br) Amanda Carrijo

Leia mais

Trabalho de LP - C++ 19/05/2014. Prof. Flávio Miguel Varejão. I. Descrição do Problema

Trabalho de LP - C++ 19/05/2014. Prof. Flávio Miguel Varejão. I. Descrição do Problema 19/05/2014 Trabalho de LP - C++ I. Descrição do Problema Prof. Flávio Miguel Varejão A empresa Seu Imóvel S.A. é uma corretora especializada na venda de terrenos e residências do tipo casa e do tipo apartamento.

Leia mais

Processamento de Dados I - 05/1

Processamento de Dados I - 05/1 Processamento de Dados I - 05/1 Prof.: Leonardo Muniz de Lima - tel.: 3335 2138 (lmuniz@inf.ufes.br) Homepage do curso: www.inf.ufes.br/~lmuniz 1 Objetivo 2 o Trabalho Computacional Fazer uma versão do

Leia mais

Teoria das Filas /2

Teoria das Filas /2 Teoria das Filas - 2009/2 Miniprojeto Universidade Federal do Espírito Santo - UFES Professor: Magnos Martinello 22 de Setembro de 2009 1 1 Proposta A proposta do trabalho é reforçar o compreendimento

Leia mais

Universidade Federal do Espírito Santo - Departamento de Informática. Estruturas de Dados I INF09292

Universidade Federal do Espírito Santo - Departamento de Informática. Estruturas de Dados I INF09292 Universidade Federal do Espírito Santo - Departamento de Informática Estruturas de Dados I INF09292 1 o Trabalho Prático de 2017/01 Prof.ª Patrícia Dockhorn Costa, Email: pdcosta@inf.ufes.br Data de Entrega:

Leia mais

Trabalho Prático Data de Entrega : 30 de Maio

Trabalho Prático Data de Entrega : 30 de Maio Escola Superior de Tecnologia / Instituto Politécnico de Setúbal Algoritmos e Tipos Abstractos de Informação 2005/2006 Trabalho Prático Data de Entrega : 30 de Maio O problema Pretende-se realizar um jogo

Leia mais

Trabalho Prático 2 Mundo dos Blocos Alocação Dinâmica / Listas Encadeadas

Trabalho Prático 2 Mundo dos Blocos Alocação Dinâmica / Listas Encadeadas Disciplina: Algoritmos e Estrutura de Dados I CIC / 9 Trabalho Prático Mundo dos Blocos Alocação Dinâmica / Listas Encadeadas Valor:,5 pontos (5% da nota total) Documentação não-latex: -, pontos Impressão

Leia mais

Terceiro Trabalho Prático. Este trabalho tem como objetivo ordenar um arquivo de dados e implementar as operações cosequenciais de merging e matching.

Terceiro Trabalho Prático. Este trabalho tem como objetivo ordenar um arquivo de dados e implementar as operações cosequenciais de merging e matching. Universidade de São Paulo Instituto de Ciências Matemáticas e de Computação Departamento de Ciências de Computação Disciplina de Algoritmos e Estruturas de Dados II docente Profa. Dra. Cristina Dutra de

Leia mais

Trabalho Prático 1. Prof. Raphael de O. Santos April 29, 2008

Trabalho Prático 1. Prof. Raphael de O. Santos April 29, 2008 Trabalho Prático 1 Prof. Raphael de O. Santos April 9, 008 1 Introdução A operadora de telefonia móvel XYZCom está implantando um novo serviço de propagandas. Agora a operadora irá enviar mensagens para

Leia mais

CI218 - Trabalho - 2 o sem/2016

CI218 - Trabalho - 2 o sem/2016 CI218 - Trabalho - 2 o sem/2016 Entrega: NOVO PRAZO DE ENTREGA: 25/11/2016 Objetivo: Fazer a normalização de uma relação na FNBC e na 3FN. Entrada: A entrada tem o seguinte formato: a primeira linha deve

Leia mais

1 Introdução. 2 Especificação

1 Introdução. 2 Especificação Bacharelado em Ciência da Computação DINF / UFPR CI067 - Oficina de Computação 2. semestre 2012 Prof. Luiz Eduardo S. de Oliveira Prof. Diego Roberto Antunes 29/11/2012 Releases - Histórico: r0 29/11/2012

Leia mais

UNIVERSIDADE FEDERAL DO RIO GRANDE DO SUL INSTITUTO DE INFORMÁTICA INFORMÁTICA APLICADA Sistemas Operacionais I 2016/1

UNIVERSIDADE FEDERAL DO RIO GRANDE DO SUL INSTITUTO DE INFORMÁTICA INFORMÁTICA APLICADA Sistemas Operacionais I 2016/1 1 Descrição Geral Atividade Experimental 2 Programa para calcular o MÁXIMO ou o MÍNIMO dos números de um arquivo O objetivo desta atividade é implementar um programa para determinar o maior ou o menor

Leia mais

Segunda Parte do Trabalho Prático (Parte II) Valor: 70%

Segunda Parte do Trabalho Prático (Parte II) Valor: 70% Universidade de São Paulo Instituto de Ciências Matemáticas e de Computação Departamento de Ciências de Computação Disciplina de Organização de Arquivos Profa. Dra. Cristina Dutra de Aguiar Ciferri PAE

Leia mais

Quinto Trabalho Prático. Este trabalho tem como objetivo indexar arquivos de dados usando um índice árvore-b.

Quinto Trabalho Prático. Este trabalho tem como objetivo indexar arquivos de dados usando um índice árvore-b. Universidade de São Paulo Instituto de Ciências Matemáticas e de Computação Departamento de Ciências de Computação Disciplina de Algoritmos e Estruturas de Dados II docente Profa. Dra. Cristina Dutra de

Leia mais

Primeiro Trabalho Prático Turma A. Descrição do Trabalho. Considere os seguintes dados a respeito de um livro:

Primeiro Trabalho Prático Turma A. Descrição do Trabalho. Considere os seguintes dados a respeito de um livro: Universidade de São Paulo Instituto de Ciências Matemáticas e de Computação Departamento de Ciências de Computação Disciplina de Organização de Arquivos Profa. Dra. Cristina Dutra de Aguiar Ciferri PAE

Leia mais

Segundo Trabalho Prático

Segundo Trabalho Prático Universidade de São Paulo Instituto de Ciências Matemáticas e de Computação Departamento de Ciências de Computação Disciplina de Algoritmos e Estruturas de Dados II docente Profa. Dra. Cristina Dutra de

Leia mais

Universidade Federal de Goiás Bacharelado em Ciências da Computacão Compiladores

Universidade Federal de Goiás Bacharelado em Ciências da Computacão Compiladores Universidade Federal de Goiás Bacharelado em Ciências da Computacão Compiladores 2013-2 Compilador para a Linguagem Cafezinho Especificação dos trabalhos: T2 (Geração da Representação Intermediária e Análise

Leia mais

Guia de atividades para uma aula sobre Energia Mecânica e sua Conservação utilizando analogias

Guia de atividades para uma aula sobre Energia Mecânica e sua Conservação utilizando analogias Guia de atividades para uma aula sobre Energia Mecânica e sua Conservação utilizando analogias Vitor Ribeiro de Souza Antônio Carlos Fontes dos Santos Material instrucional associado à dissertação de Mestrado

Leia mais

Manual do Tenente Skat. Martin Heni Eugene Trounev Revisor: Mike McBride Tradução: Marcus Gama Revisão: Stephen Killing

Manual do Tenente Skat. Martin Heni Eugene Trounev Revisor: Mike McBride Tradução: Marcus Gama Revisão: Stephen Killing Martin Heni Eugene Trounev Revisor: Mike McBride Tradução: Marcus Gama Revisão: Stephen Killing 2 Conteúdo 1 Introdução 5 2 Como jogar 6 3 Regras do jogo, estratégias e dicas 7 3.1 A tela do jogo........................................

Leia mais

Primeira Parte do Trabalho Prático (Parte I) Valor: 30% Descrição do arquivo de dados

Primeira Parte do Trabalho Prático (Parte I) Valor: 30% Descrição do arquivo de dados Universidade de São Paulo Instituto de Ciências Matemáticas e de Computação Departamento de Ciências de Computação Disciplina de Organização de Arquivos Profa. Dra. Cristina Dutra de Aguiar Ciferri PAE

Leia mais

Trabalho Prático. Primeira Parte do Trabalho (Parte I): peso 40%

Trabalho Prático. Primeira Parte do Trabalho (Parte I): peso 40% Universidade de São Paulo Instituto de Ciências Matemáticas e de Computação Departamento de Ciências de Computação Disciplina de Organização de Arquivos Profa. Dra. Cristina Dutra de Aguiar Ciferri PAE

Leia mais

Trabalho de Programação 3 e LP

Trabalho de Programação 3 e LP 01/05/2012 Trabalho de Programação 3 e LP Prof. Flávio Miguel Varejão A empresa ivertimento é especializada na venda de produtos de entretenimento. Ela oferece aos clientes uma ampla gama de produtos de

Leia mais

Segundo Trabalho Prático Turma A

Segundo Trabalho Prático Turma A Universidade de São Paulo Instituto de Ciências Matemáticas e de Computação Departamento de Ciências de Computação Disciplina de Organização de Arquivos Profa. Dra. Cristina Dutra de Aguiar Ciferri PAE

Leia mais

Fixação de conteúdo teórico

Fixação de conteúdo teórico BCC701 Programação de Computadores (2019-01) Universidade Federal de Ouro Preto - MG Departamento de Computação - DECOM http://www.decom.ufop.br/bcc701 [Aula 12] Estruturas de Repetição (prática 2) Fixação

Leia mais

Segundo Trabalho Prático

Segundo Trabalho Prático Universidade de São Paulo Instituto de Ciências Matemáticas e de Computação Departamento de Ciências de Computação Disciplina de Organização de Arquivos docente Profa. Dra. Cristina Dutra de Aguiar Ciferri

Leia mais

Indexação e Busca. O objetivo deste trabalho é projetar e implementar um sistema de programas para indexação e busca em arquivos de texto.

Indexação e Busca. O objetivo deste trabalho é projetar e implementar um sistema de programas para indexação e busca em arquivos de texto. Universidade Federal do Espírito Santo Departamento de Informática Estruturas de Dados 2017/1 Profa. Claudine Badue Trabalho 2 1. Objetivo Indexação e Busca O objetivo deste trabalho é projetar e implementar

Leia mais

Não utilize caracteres acentuados ou especiais para nomes de pastas e arquivos.

Não utilize caracteres acentuados ou especiais para nomes de pastas e arquivos. BCC201 Introdução à Programação (2016-01) Departamento de Computação - Universidade Federal de Ouro Preto - MG Professor: Reinaldo Fortes (www.decom.ufop.br/reinaldo) Estagiário docente: Washington Silva

Leia mais

Microprocessadores I ELE Conjunto de Instruções do Microprocessador 8085 Aula 9 - PILHA E SUBROTINAS -

Microprocessadores I ELE Conjunto de Instruções do Microprocessador 8085 Aula 9 - PILHA E SUBROTINAS - Microprocessadores I ELE 1078 Conjunto de Instruções do Microprocessador 8085 Aula 9 - PILHA E SUBROTINAS - 9.1 - Grupos de Instruções As instruções no 8085 são distribuídas em 5 grupos: 1. Grupo de transferência

Leia mais

Quarto Trabalho Prático. Este trabalho tem como objetivo indexar arquivos de dados usando um índice simples ou linear. Descrição de páginas de disco

Quarto Trabalho Prático. Este trabalho tem como objetivo indexar arquivos de dados usando um índice simples ou linear. Descrição de páginas de disco Universidade de São Paulo Instituto de Ciências Matemáticas e de Computação Departamento de Ciências de Computação Disciplina de Algoritmos e Estruturas de Dados II docente Profa. Dra. Cristina Dutra de

Leia mais

Trabalho 1 ALGORITMOS E ESTRUTURAS DE DADOS I (SCC-202)

Trabalho 1 ALGORITMOS E ESTRUTURAS DE DADOS I (SCC-202) ALGORITMOS E ESTRUTURAS DE DADOS I (SCC-202) Trabalho 1 Professor: Dr. Thiago A. S. Pardo (taspardo@icmc.usp.br) Estagiário PAE: Fernando Alva Manchego (falva@icmc.usp.br) 1. Objetivo Empregar os conhecimentos

Leia mais

2. Descrição do problema

2. Descrição do problema UNIVERSIDADE FEDERAL DO ESPÍRITO SANTO PROGRAMAÇÃO I TRABALHO COMPUTACIONAL 2018/1 Profª: Claudia Boeres Entrega: 29/06/2018 (sexta-feira) Leia atentamente TODO o enunciado do trabalho (a especificação

Leia mais

Algoritmos e Estruturas de Dados II. Trabalho Prático 4

Algoritmos e Estruturas de Dados II. Trabalho Prático 4 Algoritmos e Estruturas de Dados II Trabalho Prático 4 Entrega: 23/11/09 Devolução: 10/12/09 (sem possibilidade de entrega com atraso) Trabalho em dupla Prof. Jussara Marques de Almeida Problema 1: Construção

Leia mais

Manual do KPatience 2

Manual do KPatience 2 Paul Olav Tvete Maren Pakura Stephan Kulow Revisão: Mike McBride Desenvolvimento: Paul Olav Tvete Desenvolvimento: Stephan Kulow Tradução: José Pires 2 Conteúdo 1 Introdução 5 2 Como Jogar 6 3 Regras do

Leia mais

Algoritmos Lógica e Programação Prof. Me. Adelson Felipe Dias Nogueira

Algoritmos Lógica e Programação Prof. Me. Adelson Felipe Dias Nogueira Algoritmos Lógica e Programação 2016-2 Prof. Me. Adelson Felipe Dias Nogueira E-mail: adelson.nogueira@pitagoras.com.br PORTUGUES ESTRUTURADO o o o o Para que o algoritmo possa ser executado por uma máquina

Leia mais

GRADUAÇÃO EM ANÁLISE E DESENVOLVIMENTO PROGRAMAÇÃO DE COMPUTADORES I Trabalho Final Anual TFA

GRADUAÇÃO EM ANÁLISE E DESENVOLVIMENTO PROGRAMAÇÃO DE COMPUTADORES I Trabalho Final Anual TFA GRADUAÇÃO EM ANÁLISE E DESENVOLVIMENTO PROGRAMAÇÃO DE COMPUTADORES I Trabalho Final Anual TFA Introdução O TFA tem por objetivo avaliar todo o conhecimento adquirido pelo aluno ao longo das disciplinas

Leia mais

Segunda Parte do Trabalho Prático (Parte II) Valor: 60% Descrição do índice

Segunda Parte do Trabalho Prático (Parte II) Valor: 60% Descrição do índice Universidade de São Paulo Instituto de Ciências Matemáticas e de Computação Departamento de Ciências de Computação Disciplina de Organização de Arquivos Profa. Dra. Cristina Dutra de Aguiar Ciferri PAE

Leia mais

Inteligência Artificial Projecto 1

Inteligência Artificial Projecto 1 Bantumi ESPECIFICAÇÕES O projecto destina-se a resolver um conjunto de problemas do jogo Bantumi utilizando métodos de procura em espaço de estados. Bantumi é um jogo derivado do jogo Mancala de origem

Leia mais

Trabalho Computacional Jogo da Forca

Trabalho Computacional Jogo da Forca Universidade Federal do Espírito Santo Centro Tecnológico Trabalho Computacional Jogo da Forca PET Engenharia de Computação 1. Introdução: Você será responsável por implementar o Jogo da Forca como trabalho

Leia mais

SCC0504 Programação Orientada a Objetos Prof. Luiz Eduardo Virgilio da Silva / Estevam Arantes (Monitor) Projeto

SCC0504 Programação Orientada a Objetos Prof. Luiz Eduardo Virgilio da Silva / Estevam Arantes (Monitor) Projeto UNIVERSIDADE DE SÃO PAULO INSTITUTO DE CIÊNCIAS MATEMÁTICAS E DE COMPUTAÇÃO Departamento de Ciências de Computação SCC0504 Programação Orientada a Objetos Prof. Luiz Eduardo Virgilio da Silva / Estevam

Leia mais

Manual do KPatience 2

Manual do KPatience 2 Paul Olav Tvete Maren Pakura Stephan Kulow Revisor: Mike McBride Desenvolvedor: Paul Olav Tvete Desenvolvedor: Stephan Kulow Tradução: Marcus Gama Revisão: Stephen Killing 2 Conteúdo 1 Introdução 5 2 Como

Leia mais

Victor Hugo Andrade Soares monitor João Vitor dos Santos Tristão Primeiro Trabalho Prático

Victor Hugo Andrade Soares monitor João Vitor dos Santos Tristão Primeiro Trabalho Prático Universidade de São Paulo Instituto de Ciências Matemáticas e de Computação Departamento de Ciências de Computação Disciplina de Algoritmos e Estruturas de Dados II docente Profa. Dra. Cristina Dutra de

Leia mais

Trabalho Prático. Descrição do arquivo de dados

Trabalho Prático. Descrição do arquivo de dados Universidade de São Paulo Instituto de Ciências Matemáticas e de Computação Departamento de Ciências de Computação Disciplina de Estrutura de Dados III Profa. Dra. Cristina Dutra de Aguiar Ciferri PAE:

Leia mais

SCC-ICMC-USP. Trabalho em Grupo 1 SCC-0205

SCC-ICMC-USP. Trabalho em Grupo 1 SCC-0205 Trabalho em Grupo 1 SCC-0205 2 o. Semestre de 2010 Professor: João Luís G. Rosa - e-mail: joaoluis@icmc.usp.br Monitor PAE: Fernando Alva - e-mail: falva@icmc.usp.br versão 1-23/8/2010 1 Objetivo Desenvolver

Leia mais

Ferramenta automática de correção de códigos em C Elgio Schlemer Setembro de 2017

Ferramenta automática de correção de códigos em C Elgio Schlemer Setembro de 2017 Ferramenta automática de correção de códigos em C Elgio Schlemer Setembro de 2017 Este manual visa ensinar a como realizar um programa que possa ser testado na ferramenta automática desenvolvida pelo professor.

Leia mais

Universidade Federal do ABC Bacharelado em Ciência e Tecnologia Disciplina: Processamento de Informação Data: 31/06/2010. Figura 1 - Labirinto

Universidade Federal do ABC Bacharelado em Ciência e Tecnologia Disciplina: Processamento de Informação Data: 31/06/2010. Figura 1 - Labirinto Universidade Federal do ABC Bacharelado em Ciência e Tecnologia Disciplina: Processamento de Informação Data: 31/06/2010 Roteiro para projeto final da disciplina Processamento de Informação: 1. Introdução

Leia mais

Análise do problema. Desenvolvimento de programas. Desenvolvimento do algoritmo. Análise do problema

Análise do problema. Desenvolvimento de programas. Desenvolvimento do algoritmo. Análise do problema Desenvolvimento de programas 1 Análise do problema 2 Análise do problema Desenvolvimento do algoritmo Codificação do programa Compilação e execução Teste e depuração Conhecer exatamente o que o problema

Leia mais

Identificadores Nome de variáveis, constantes, métodos, etc...

Identificadores Nome de variáveis, constantes, métodos, etc... IV.2 Aspectos Léxicos Convencionais Classes de símbolos Genéricos Token genérico / Lei de formação bem definida Podem possuir limitações de tamanho e/ou valor Possuem valor semântico o token deve ser acompanhado

Leia mais

Desenvolvimento de programas. Análise do problema. Análise do problema. Análise do problema. Desenvolvimento do algoritmo. Codificação do programa

Desenvolvimento de programas. Análise do problema. Análise do problema. Análise do problema. Desenvolvimento do algoritmo. Codificação do programa Desenvolvimento de programas 1 Análise do problema Desenvolvimento do algoritmo Codificação do programa Compilação e execução Teste e depuração Análise do problema 2 Conhecer exatamente o que o problema

Leia mais

IV.2 Aspectos Léxicos Convencionais

IV.2 Aspectos Léxicos Convencionais IV.2 Aspectos Léxicos Convencionais Classes de símbolos Genéricos - Token genérico / Lei de formação bem definida - Limitações de tamanho e/ou valor - Possuem valor semântico o token deve ser acompanhado

Leia mais

Desenvolvimento de programas

Desenvolvimento de programas 1 Desenvolvimento de programas Análise do problema Desenvolvimento do algoritmo Codificação do programa Compilação e execução Teste e depuração 2 Análise do problema Conhecer exatamente o que o problema

Leia mais

Primeira Parte do Trabalho Prático (Parte I) Valor: 40% Descrição do arquivo de dados

Primeira Parte do Trabalho Prático (Parte I) Valor: 40% Descrição do arquivo de dados Universidade de São Paulo Instituto de Ciências Matemáticas e de Computação Departamento de Ciências de Computação Disciplina de Organização de Arquivos Profa. Dra. Cristina Dutra de Aguiar Ciferri PAE

Leia mais

Aula 01 Algoritmos e lógica de programação e introdução ao C++

Aula 01 Algoritmos e lógica de programação e introdução ao C++ Aula 01 Algoritmos e lógica de programação e introdução ao C++ Autor: José Martins de Castro Neto Carga Horária: 2h 21 de julho de 2015 1 Algoritmo e lógica de programação Ementa do curso 1. Definições

Leia mais

É neste ponto que entra o conceito de lógica de programação.

É neste ponto que entra o conceito de lógica de programação. AULA 01 OBJETIVO: Desenvolvimento e solução de Algoritmos. LÓGICA DE PROGRAMAÇÃO A lógica é a ciência do pensamento correto. Esta declaração não implica, contudo, em afirmar que ela seja a ciência da verdade.

Leia mais

Ambiente de desenvolvimento

Ambiente de desenvolvimento Linguagem C Ambiente de desenvolvimento Um programa em C passa por seis fases até a execução: 1) Edição 2) Pré-processamento 3) Compilação 4) Linking 5) Carregamento 6) Execução Etapa 1: Criação do programa

Leia mais

Se a senha tem de 2 a 30 caracteres. Se tiver mais ou menos caracteres, ela não será válida e deve mostrar a mensagem de erro abaixo:

Se a senha tem de 2 a 30 caracteres. Se tiver mais ou menos caracteres, ela não será válida e deve mostrar a mensagem de erro abaixo: SCC 204 Programação Orientada a Objetos Trabalho 1 Todos os trabalhos da disciplina são parte de um projeto que envolve o desenvolvimento de um Comunicador Instantâneo. Nesta primeira etapa deve se desenvolver:

Leia mais

Universidade Estadual do Oeste do Paraná UNIOESTE Campus de Cascavel Colegiado de Ciência da Computação. Algoritmos Trabalho 3º Bimestre

Universidade Estadual do Oeste do Paraná UNIOESTE Campus de Cascavel Colegiado de Ciência da Computação. Algoritmos Trabalho 3º Bimestre Universidade Estadual do Oeste do Paraná UNIOESTE Campus de Cascavel Colegiado de Ciência da Computação Algoritmos Trabalho 3º Bimestre 1) A utilização de jogos de baralho tem sido um entretenimento muito

Leia mais

III Congresso Regional de Emergências Médicas (CREMED-CO)

III Congresso Regional de Emergências Médicas (CREMED-CO) III Congresso Regional de Emergências Médicas (CREMED-CO) EDITAL PARA SUBMISSÃO E APRESENTAÇÃO DE TRABALHOS ACADÊMICOS Este edital é referente ao envio de trabalhos para o III Congresso Regional de Emergências

Leia mais

ARQUITECTURA DE COMPUTADORES

ARQUITECTURA DE COMPUTADORES ARQUITECTURA DE COMPUTADORES 2º Trabalho de Laboratório Unidade de Controlo Hardwired Objectivo: Pretende-se que os alunos compreendam a metodologia usada na síntese, implementação e programação de um

Leia mais

Trabalho Prático 1. Valor: 1,0 pontos (10% da nota total) Data de Entrega: 02/05/2010

Trabalho Prático 1. Valor: 1,0 pontos (10% da nota total) Data de Entrega: 02/05/2010 Universidade Federal de Ouro Preto Instituto de Ciências Exatas e Biológicas Programa de Pós-Graduação em Ciência da Computação Projeto e Análise de Algoritmos - 1 o semestre de 2010 Professor: David Menotti

Leia mais

Aula 8 Especificação de Requisitos

Aula 8 Especificação de Requisitos Aula 8 Especificação de Requisitos Alessandro Garcia Abril 2017 Recados Enunciado do trabalho prático (T2) já está disponível no sítio da disciplina: http://www.inf.puc-rio.br/~inf1301/ Enviem mensagem

Leia mais

Adição de probabilidades. O número de elementos da união dos conjuntos A e B n(aub) = n(a B) Dividindo os dois membros por n(e):

Adição de probabilidades. O número de elementos da união dos conjuntos A e B n(aub) = n(a B) Dividindo os dois membros por n(e): Adição de probabilidades O número de elementos da união dos conjuntos A e B n(aub) = n(a B) Dividindo os dois membros por n(e): Dois eventos A e B são ditos mutuamente exclusivos se, e somente se, A B

Leia mais

Gauss-Seidel para Solução de Sistemas com Matrizes Banda Usando Armazenamento Especial

Gauss-Seidel para Solução de Sistemas com Matrizes Banda Usando Armazenamento Especial Universidade Federal do Espírito Santo Departamento de Informática Algoritmos Numéricos 2016/2 Profa. Claudine Badue Trabalho 1 Objetivos Gauss-Seidel para Solução de Sistemas com Matrizes Banda Usando

Leia mais

Pseudocódigo e Visualg

Pseudocódigo e Visualg Pseudocódigo e Visualg Professor: Alex Sandro Forghieri alex.forghieri@ifsc.edu.br Agenda Revisão Algoritmos Estrutura de dados Estrutura básica de um algoritmo em pseudocódigo Teste de mesa Operadores

Leia mais

MAC 115 Introdução à Ciência da Computação ROTHELO

MAC 115 Introdução à Ciência da Computação ROTHELO MAC 115 Introdução à Ciência da Computação INSTITUTO DE FÍSICA - BACHARELADO NOTURNO SEGUNDO SEMESTRE DE 2010 Terceiro Exercício-Programa (EP3) Data de entrega: até 06 de dezembro de 2010 (2a.feira) ROTHELO

Leia mais

Trabalho de Linguagens Formais e Compilação

Trabalho de Linguagens Formais e Compilação Trabalho de Linguagens Formais e Compilação Desenho de uma linguagem simples e do seu compilador para MIPS. (cod. 5387) Departamento de Informática Universidade da Beira Interior Ano lectivo 2012/2013

Leia mais

Estruturas de Dados com Jogos. Capítulo 2 Pilhas - Alocação Sequencial e Estática

Estruturas de Dados com Jogos. Capítulo 2 Pilhas - Alocação Sequencial e Estática Estruturas de Dados com Jogos Capítulo 2 Pilhas - Alocação Sequencial e Estática Seus Objetivos neste Capítulo Entender o que é e para que serve uma estrutura do tipo Pilha; Entender o significado de Alocação

Leia mais

Trabalho Prático. Descrição Considere os seguintes dados a respeito de uma pessoa:

Trabalho Prático. Descrição Considere os seguintes dados a respeito de uma pessoa: Universidade de São Paulo Instituto de Ciências Matemáticas e de Computação Departamento de Ciências de Computação Disciplina de Organização de Arquivos Profa. Dra. Cristina Dutra de Aguiar Ciferri Trabalho

Leia mais

TCC 00308: Programação de Computadores I Organização de programas em Python

TCC 00308: Programação de Computadores I Organização de programas em Python TCC 00308: Programação de Computadores I 2017.1 Organização de programas em Python Vamos programar em Python! Como um programa é organizado? Quais são os tipos de dados disponíveis? Como variáveis podem

Leia mais

Métodos de implementação de linguagens. Kellen Pinagé

Métodos de implementação de linguagens. Kellen Pinagé Métodos de implementação de linguagens Kellen Pinagé Sumário Métodos de implementação de linguagens Compilação Interpretação pura Híbrido Métodos de implementação de linguagens Principais componentes de

Leia mais

Questão 01 (Neilor Tonin) Aula Prática 3: Estrutura Condicional. Entrada. Saída. Exemplo de entrada e Saída. - Procedimento para a entrega:.

Questão 01 (Neilor Tonin) Aula Prática 3: Estrutura Condicional. Entrada. Saída. Exemplo de entrada e Saída. - Procedimento para a entrega:. BCC201 Introdução à Programação (2016-01) Departamento de Computação - Universidade Federal de Ouro Preto - MG Professor: Reinaldo Fortes (www.decom.ufop.br/reinaldo) Estagiário docente: Washington Silva

Leia mais

PROGRAMAÇÃO DE COMPUTADORES I BCC Aula Prática 15

PROGRAMAÇÃO DE COMPUTADORES I BCC Aula Prática 15 Exercício 1 PROGRAMAÇÃO DE COMPUTADORES I BCC701 2017-1 Aula Prática 15 No jogo Inventei, cada posição do tabuleiro é representada por suas coordenadas x e y e contém um número. O tabuleiro pode ser representado

Leia mais

Programar com o CARMEN

Programar com o CARMEN Apêndice B Programar com o CARMEN Este anexo descreverá os passos básico para se criar um novo módulo utilizando CARMEN. O documento de referência utilizado, contendo mais informações sobre estilos de

Leia mais

PCI - Programação de Computadores I Trabalho Avaliativo - Semestral. Palavras Cruzadas

PCI - Programação de Computadores I Trabalho Avaliativo - Semestral. Palavras Cruzadas PCI - Programação de Computadores I Trabalho Avaliativo - Semestral Considerações! O trabalho semestral pode ser resolvido em dupla ou individual;! O(s) aluno(s) deve(m) ter total conhecimento sobre o

Leia mais

Unidade de Processamento Baseado em Pilha Fundamentos de sistemas digitais

Unidade de Processamento Baseado em Pilha Fundamentos de sistemas digitais Unidade de Processamento Baseado em Pilha Fundamentos de sistemas digitais 2016.2 O presente trabalho tem por objetivo explorar os conceitos apresentados em sala de aula ao longo do semestre. Para tanto,

Leia mais

2ª. Competição Tecnológica (Outubro/2010)

2ª. Competição Tecnológica (Outubro/2010) 2ª. Competição Tecnológica (Outubro/2010) DESCRIÇÃO A competição compreende duas fases e consiste na implementação de cinco aplicações, três na fase I e duas na fase II. Na fase I, os resultados obtidos

Leia mais

1/16 MAKEFILES Makefiles Programação II

1/16 MAKEFILES Makefiles Programação II 1/16 MAKEFILES Definição 2/16 Definição O makefile - é um arquivo para configuração de compilação utilizado pelo programa make, - a ideia é simplificar e agilizar a compilação de programas. Vantagens e

Leia mais

Abaixo seguem os comandos e suas particularidades, bem como exemplos para o indicador de linha

Abaixo seguem os comandos e suas particularidades, bem como exemplos para o indicador de linha Trabalho II de CI067 - Oficina de Computação 2º Semestre - 2018 Tema: Editor compactador de arquivos Data de Entrega: 1. Introdução O editor a ser implementado edit([arquivo]) edita arquivos de texto ASCII.

Leia mais

Algoritmos e Programação

Algoritmos e Programação Algoritmos e Programação Aula 3 Introdução a Linguagem C Profa. Marina Gomes marinagomes@unipampa.edu.br 1 Aula de Hoje - Criar programas simples em C utilizando a estrutura básica; - Declarar variáveis;

Leia mais

Ferramentas Programação. UDESC - Prof. Juliano Maia 1

Ferramentas Programação. UDESC - Prof. Juliano Maia 1 Ferramentas Programação UDESC - Prof. Juliano Maia 1 Índice Seção 1 Linguagens de Programação Seção 2 Interpretador Seção 3 Compilador / Linkeditor Seção 4 Ambientes de Desenvolvimento UDESC - Prof. Juliano

Leia mais