4ª Lista de IP. Questão 1

Documentos relacionados
Projeto Matemática 5º ano 4ª série. Objetivos

MATERIAL DE APRESENTAÇÃO DO SCRATCH

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

Exercícios de Aprofundamento 2015 Mat Permutação e Arranjo

1. Fazer um programa em C que pergunta um valor em metros e imprime o correspondente em decímetros, centímetros e milímetros.

Implementando uma Classe e Criando Objetos a partir dela

HEX CONEXÕES EXTREMAS EM LADRILHOS HEXAGONAIS

VII MARATONA DE PROGRAMAÇÃO UERJ 17/05/2014. Este caderno contém 12 páginas com a descrição de 10 problemas 1 definidos a seguir:

Matemática SSA 2 REVISÃO GERAL 1

Programação em papel quadriculado

0, OU COMO COLOCAR UM BLOCO QUADRADO EM UM BURACO REDONDO Pablo Emanuel

Tipos de cores. Entendendo as cores. Imprimindo. Usando cores. Manuseio de papel. Manutenção. Solucionando problemas. Administração.

Manual MQS. Logo após colocar essas informações abrirá a página inicial do sistema:

INTRODUÇÃO E OBJETIVO DO JOGO

1. A corrida de vetores numa folha de papel.

A4 Projeto Integrador e Lista de Jogos

Considerações: Leia a lista toda, o quanto antes, para evitar más interpretações e muitas dúvidas em cima da hora

REPRESENTAÇÃO DE DADOS EM SISTEMAS DE COMPUTAÇÃO AULA 03 Arquitetura de Computadores Gil Eduardo de Andrade

MÉDIA ARITMÉTICA MÉDIA PONDERADA MODA MEDIANA

Com Pedido de Compra Sem Pedido de Compra ou Entrada Manual Importando XML enviado do Fornecedor

Sistema Integrado de Gerenciamento de Imposto Sobre Serviços.

Tecnologia da Informação Prof. Mário Henrique de Souza Pardo Resumo Aula 4

COLÉGIO NOSSA SENHORA DA PIEDADE. Programa de Recuperação Paralela. 1ª Etapa Ano: 6º Turma: 6.1

Manual do Usuário. Sistema para Administração de Condomínios MANUAL USUÁRIO. Bancos do Condomínio. ENG Sistemas - 1 -

PROPOSTAS DE TRABALHO PARA OS ALUNOS A PARTIR DE JOGOS 2º ANO. Adriana da Silva Santi Coordenação Pedagógica de Matemática

Manual de Inclusão e Exclusão de Disciplinas Online

Manual do Usuário. Protocolo

Manual do usuário Neo Protocolo Free

ÍNDICE. Tela de Configuração Dados de Etiqueta Configuração da Impressora Configuração do Papel Itens para Inserção...

Quimibol - Revisando a Tabela Periódica

LINEAR EQUIPAMENTOS RUA SÃO JORGE, TELEFONE : SÃO CAETANO DO SUL - SP - CEP:

Índice: CMS 3 O que é Content Management System? Clientes 4 O que é o Cliente? 4 Configurando o i-menu/i-view para trabalhar. com o CMS.

Terminologia. Distribuidor Independente que foi cadastrado diretamente por um patrocinador, independente do lugar que ocupa na rede binária.

1. Introdução. Avaliação de Usabilidade Página 1

APOSTILA ZELIO SOFT 2

NORMAS DO PROJETO DE CONCLUSÃO DE CURSO TRABALHO DE GRADUAÇÃO

Resolverei neste artigo uma prova da fundação VUNESP realizada em 2010.

Curso em Sistema de Editoração Eletrônica de Revistas (SEER) - Tutorial Editores/Editores de Seção

Programação Orientada a Objetos: Lista de exercícios #1. Bruno Góis Mateus

RELATÓRIO DE PROGRAMAÇÃO II. Igor Bissoli. Ramon Bambini. Victor Melo

1. REGISTRO DE PROJETOS

REGISTRO DE PROJETOS

5 - Vetores e Matrizes Linguagem C CAPÍTULO 5 VETORES E MATRIZES

Tanto neste nosso jogo de ler e escrever, leitor amigo, como em qualquer outro jogo, o melhor é sempre obedecer às regras.

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

Coordenadoria de Educação CADERNO DE REVISÃO Matemática Aluno (a) 5º ANO

TRIBUNAL REGIONAL FEDERAL DA 5ª REGIÃO

Objetivo principal: aprender como definir e chamar funções.

OFICINA DE JOGOS APOSTILA DO PROFESSOR

Considerações Gerais. Da Disciplina de Projeto Final de Curso

EXERCÍCIOS DE RECUPERAÇÃO- MATEMÁTICA 6º ANO-PROFA. M.LUISA-2º BIMESTRE MÚLTIPLOS, DIVISORES, FATORAÇÃO, MDC.MMC,PROBLEMAS

Como fazer a Renovação de Matrícula online no Sistema Acadêmico

Curso destinado à preparação para Concursos Públicos e Aprimoramento Profissional via INTERNET Aula Gratuita PORCENTAGEM

Boletim. Contabilidade Internacional. Manual de Procedimentos

Exercícios de Java Aula 20 - Matrizes

MANUAL DO PROFESSOR. Suporte: SISTEMA DE GESTÃO EDUCACIONAL VIRTUALCLASS. Skype: suportetisoebras

CAPÍTULO 1 REVISÃO DE LÓGICA COMBINACIONAL

AV1 - MA (b) Se o comprador preferir efetuar o pagamento à vista, qual deverá ser o valor desse pagamento único? 1 1, , , 980

8º Campeonato Nacional de Jogos Matemáticos

Cartões de gamificação. Para saber mais: livrogamification.com.br GAMIFICATION, INC. Como reinventar empresas a partir de jogos

um jogo de Steve Finn

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

BR DOT COM SISPON: MANUAL DO USUÁRIO

PCS LABORATÓRIO DE PROGRAMAÇÃO ORIENTADA A OBJETOS PARA A ENGENHARIA ELÉTRICA

LASERTECK SOFTECK FC MANUAL DO USUÁRIO

RESUMO TEÓRICO. n(a) P(A) = n(u) 0 P(A) 1

A estrutura de repetição em um algoritmo consiste na execução de um trecho do mesmo levando em consideração certas condições imposta pelo algoritmo.

Oficina Porcentagem e Juros

Avanço Autor: Dan Troyka, Rastros Autor: Bill Taylor, Material Um tabuleiro quadrado 7 por peças brancas e 14 peças negras.

Discussão de Sistemas Teorema de Rouché Capelli

Trabalho Computacional 2. Aplicativo para Gestão Financeira. Grupos: Os trabalhos devem ser feitos individualmente ou em duplas.

Gerenciamento de Projetos Modulo II Clico de Vida e Organização

UNIVERSIDADE FEDERAL DO RIO GRANDE DO SUL INSTITUTO DE INFORMÁTICA INFORMÁTICA APLICADA

Notas de versão. Versão

Como fazer um jogo usando o editor de apresentação

Início Rápido para o Templo

Unidade 5: Sistemas de Representação

37ª OLIMPÍADA BRASILEIRA DE MATEMÁTICA PRIMEIRA FASE NÍVEL 1 (6º e 7º anos do Ensino Fundamental) GABARITO

Professor: Venicio Paulo Mourão Saldanha Site:

Trabalho de Implementação Jogo Reversi

Instalação do Sirius sem estações. O primeiro passo é instalar o Firebird 1.5, ele se encontra no CD de instalação do Sirius na pasta Firebird.

Projeto ECA na Escola - Plataforma de Educação à Distância

MD Sequências e Indução Matemática 1

Manual de Uso do Módulo. MerchFinanças

Vamos ver duas telas: Mesa e Itens de uma Mesa, como exemplo.

COMO TRABALHAR COM BLOCOS LÓGICOS

soluções inovadoras para desafios de negócios Manual explicativo do quadro do modelo de negócios passo a passo com exemplos

Resolverei neste artigo a prova de Raciocínio Lógico do concurso para a SEFAZ-SP 2009 organizada pela FCC.

Manual do SeCI. Sistema Eletrônico de Prevenção de Conflitos de Interesses. Guia do Administrador

SEI Superintendência de Estudos Econômicos e Sociais da Bahia Av Luiz Viana Filho, 435-4ª avenida, 2º andar CAB CEP Salvador - Bahia Tel.

Treinamento - Union Web

IFTO LÓGICA DE PROGRAMAÇÃO AULA 05

Guia de utilização da notação BPMN

CRIAÇÃO DE CURSO. 1. Criar a Disciplina

Aula 4 Conceitos Básicos de Estatística. Aula 4 Conceitos básicos de estatística

UNIVERSIDADE FEDERAL DO AMAPÁ PRÓ REITORIA DE ADMINISTRAÇÃO E PLANEJAMENTO DEPARTAMENTO DE INFORMÁTICA. Manual do Moodle- Sala virtual

Hit dos Bits. Série Matemática na Escola

Programadores e Problemas: Instruções. Introdução. Seu Objetivo. Configuração. Instruções do jogo equipe evolução 5/5/2006 v2.0

Transcrição:

4ª Lista de IP Questão 1 Apesar dessa era digital, os jogos de tabuleiros foram jogos que deixaram marcada a infancia de muitos. Assim como Banco Imaboliario e Jogo da Vida por exemplo, esses jogos são constituidos por por um tabuleiro onde o objetivo é atravessar todas as casas do tabulereiro. Faça um programa que simula um jogo de tabuleiro similar a figura acima. O jogo possui quatro jogadores(azul, Verde, Vermelho, Amarelo) que partidindo do Inicio devem atravessar todas as casas do tabuleiro até o Final, a movimentação das peças é feita a partir dos dados lançados. O programa deve informar quem é o ganhador do campeonato, os campeonatos serão compostos por pelo menos uma partida. O jogo deve funcionar da seguinte forma: 1. o usuário informa o tamanho do tabuleiro( < 500), a quantidade de armadilhas ( < ¼ do tamanho do tabuleiro) e a quantidade de partidas por campeonato( < 5). 2. as armadilhas são espalhadas no tabuleiro de forma randomica 3. caso o jogador caia em uma armadilha, ele deve ficar a rodada sem jogar os dados 4. a quantidade de quadrados do tabuleiro e de armadilhas não muda durante o campeonato 5. deve ser impresso na tela a situação dos 4 jogadores a cada rodada(posição e se está em alguma armadilha) 6. no final do campeonato deve ser mostrado a classificação dos jogadores com suas pontuações, a pontuação é feita da seguinte forma: 1º (8 * a quantidade de quadrados do tabuleiro) pontos 2º (4 * a quantidade de quadrados do tabuleiro) pontos

3º (2 * a quantidade de quadrados do tabuleiro) pontos 4º (0) pontos Esclarecimentos Finais: Deve-se usar todos os conhecimentos quanto a ponteiro nessa questão. Seu tabuleiro não deve ser estatico, deve ser alocado dinamicamente e as utilize também o conceito de passagem por refêrencia nas funções implementadas. Para gerar valores aleatorios, tanto para distribuir as armadilhas no tabuleiro quanto gerar o valor dos dados, utilizae uma função da biblioteca stdlib.h chamada rand. Para mais informações sobre essa função acesse: http://www.cplusplus.com/reference/clibrary/cstdlib/rand.html Exemplo de Entrada e Saída ENTRADA Tamanho: 30 Armadilhas: 7 Numero de Jogos no Campeonato: 1 SAIDA +---------------------+----------+ Game (1/1) + +---------------------+----------+ Blue 0 0 Green 0 0 Red 0 0 Yellow 0 0

Blue 5 1 Green 4 1 Red 8 1 Yellow 8 1 Blue 5 0 Green 4 0 Red 8 0 Yellow 8 0 Blue 14 0 Green 9 0 Red 19 0 Yellow 16 0 Blue 23 0 Green 15 0 Red 26 0 Yellow 25 0

...::::::::Classification Board::::::::... Player Yellow... 240 Pts. Player Red... 120 Pts. Player Blue... 60 Pts. Player Green... 0 Pts. Questão 2 O governo está precisando de blocos de casas e pediu a sua ajuda. Sua tarefa é fazer um programa que ajude o governo a planejar a contrução de um quarteirão. Mas como o computador que esse programa irá rodar é antigo, o uso de memória deve ser otimizado. Ou seja, não deve haver espaço alocado e sem uso. Para isso, o programa deverá capturar quantas ruas o bloco tem, e quantas casas tem em cada rua. Cada casa deverá conter 3 informações: quantidade de pessoas que moram lá, soma das idades de todas as pessoas e renda total da casa. O Menu será subdividido em dois: um para manutenção do quarteirão e outro para estatísticas. Tendo isso, o programa oferecerá os seguintes recursos: 1. Menu de manutenção 1.1. Criar nova rua: essa função deverá preencher uma nova rua. Se houver espaço vago (de alguma outra rua que foi despovoada) os novos moradores devem ser colocados nesse espaço. Se não, uma nova rua será construída no final do quarteirão (depois da ultima rua de baixo). 1.2. Adicionar nova casa: Será pedido ao usuário o número da rua em que deseja criar a nova casa. Da mesma fora da função acima, caso haja alguma casa desocupada na rua dada, ela deverá ser preenchida. Caso não, uma nova casa será construída no final desta rua. 1.3. Despovoar rua: Dado o número da rua, o programa deverá despejar todos os moradores dela e esvaziar as casas. 1.4. Despovoar casa: Dado o número da rua e da casa, essa deverá ser despovoada e esvaziada. (Ao final de qualquer operação anterior, deverá ser impresso o log, que seria, por exemplo, Casa despovoada com sucesso!, Rua criada com sucesso ou Rua inexistente ). 2. Menu de estatísticas 2.1. Procurar rua mais rica: essa função deverá checar qual rua tem a maior soma de rendas médias. A renda média de uma casa é a renda total dividido pelo número de pessoas. Deverá ser impresso o resultado. Ex: A rua mais rica é a 1 com renda média de R$ 1200.. A renda de uma rua é a soma de todas as rendas médias de cada casa habitada divida pela quantidade de casas daquela rua. 2.2. Procurar rua mais velha: essa função deverá procurar qual rua tem a maior idade média. A idade média de uma rua é a soma das idades médias de cada casa dividida pela quantidade de pessoas naquela rua. Deverá ser impresso o resultado: Ex: A rua mais velha é a 3, com idade média de 27 anos.. 2.3. Procurar casa mais promissora da rua: dado o número de uma rua, essa função deverá informar qual a casa mais promissora dela. Uma casa ser promissora é ela ser a que tem a maior razão renda média/idade média, o que significa que pessoas mais novas estão tendo

rendas melhores. O resultado deverá ser impresso. Ex: A casa mais promissora da rua 2 é a 3, com razão igual a 40.. Em caso de empate, qualquer uma das duas será mostrada. 2.4. Procurar casa mais rica: essa função deverá procurar dentre todas as casas qual é a mais rica. A riqueza de uma casa é medida pela renda média, que é a renda total dividida pelo número de pessoas. O resultado deverá ser mostrado. Ex: A casa mais rica da quadra está na rua 2, numero 11, com renda media de R$2570.. OBS.: Como dito acima, o programa deverá ter o gasto de memória otimizado, por isso, todo e qualquer vetor ou matriz deverá ser alocado dinamicamente, com o tamanho necessário. O descumprimento disso acarretará em perda de pontos. OBS2.: Aconselha-se o uso da função free(), da biblioteca stdlib.h, nas funções de remoção, já que deve-se otimizar o gasto de memória. Questão 3 Você foi contratado por uma empresa de fabricação de componentes eletrônicos. Sua tarefa nessa empresa é desenhar caminhos em chips para a passagem de pulsos elétricos no mesmo. Você recebe uma folha (entenda como captar dados do usuário ) com as especificações da fabricação: 1. Primeiro será dada a quantidade de microchips para serem desenhados os caminhos. 2. Cada microchip terá formatos diferentes, mas todos terão forma de quadriláteros. (Ou seja terão formatos n x m). 3. Para o desenho dos caminhos será dado um determinado ponto de inicio no microchip e após esse ponto será dado uma string com as letras N (para Norte), S (para Sul), L (Leste), O (Oeste) indicando o caminho a ser seguido. Em cada microchip foi posto (no inicio e final) um nano adesivo para identificar onde é o início e o final de cada caminho (ou seja o endereço das coordenadas), de cada microchip desenhado. Você deverá imprimir de cada microchip o endereço do ponto inicial e o endereço do ponto final do caminho (todos os endereços devem estar em Hexadecimal.) Exemplo de Entrada: 1 8 32 0 0 SSSLLLLNLLLLLSSSSSS Exemplo de Saída: Microchip #1 X... X...XXXXXX... XXXXX...X... Endereço Inicial: 0x12 Endereço Final: 0xFF

Clarificações: biblioteca, caberá a você implementar utilizando os conceitos de ponteiros.) Admita que o caminho não se sobrepõe não queremos um curto no microchip. Questão 4 Números "sortudos" são os números 4, 7, e qualquer número cuja representação decimal contém apenas os números 4 e 7. Assim, 4, 7, 47, 74, 744, e 477 são exemplos de números "sortudos", enquanto 5, 17, e 467 não são. O problema que você deve resolver é o seguinte: Seu programa deve receber um número N do usuário. A partir daí, o programa receberá N números inteiros K ( 0 < K <= 100000 ). Após N números terem sido recebidos, se houver pelo menos um número "sortudo" entre os números K, para cada número "sortudo" entre os números K, você deverá descobrir quais dos divisores desse número são "sortudos" (exceto o próprio número), imprimir a quantidade total desses números, imprimi-los na tela, e repetir o procedimento para cada um dos números sortudos dentre os divisores de K. O processo deve ser repetido até que seja encontrado um caso em que não haja números "sortudos" entre os divisores de nenhum dos K. Observação: Divisores iguais devem ser impressos apenas uma vez! Exemplos: Entrada: N = 3 K1 = 4774 K2 = 10382 K3 = 77774 Saída: Número de divisores "sortudos": 2 Divisores: 7, 77 Número de divisores sortudos: 1 Divisores: 7 Número de divisores sortudos: 0 Entrada: N = 2 K1 = 7777

K2 = 4444 Saída: Número de divisores "sortudos": 4 Divisores: 4, 44, 7, 77 Número de divisores "sortudos": 2 Divisores: 4, 7 Número de divisores "sortudos": 0 Entrada: N = 4 K1 = 5215 K2 = 532 K3 = 4456 K4 = 7456 Número de divisores "sortudos": 0