IF71A S /2 Computação I

Documentos relacionados
Portal de Cotação da FCC S.A.

ITQ InPrint Cobrança. Manual do Usuário Atualizado em: 27/02/2012.

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

Sistemas - Kz_Config Manual do Usuário. Manual do usuário XPAcesso

Documento de Visão Sistema de Apostas Palpite Certo

Elaboração de Provas Online usando o Formulário Google Docs

Trabalho Computacional Jogo da Forca

Manual de Uso do Aluno

INSTRUÇÕES DO MÓDULO REQUERIMENTOS

Eliana C. M. Ishikawa Guataçara dos Santos Júnior Simone Nasser Matos

MANUAL DE USUÁRIO. Versão 1.0 Servidor

Manual do Usuário RESULTWEB. Módulo Controle de acesso (Agendamento de acesso de visitantes) Versão 1.0

CONSTRUINDO A AGENDA LEGISLATIVA DA INDÚSTRIA 2017 PREENCHIMENTO DAS FICHAS DE PRIORIZAÇÃO

MANUAL PBE - FOGÕES. Sistema PBE On Line (CONPET) Fogões SPBE. Manual Operacional. Versão 1.0. Pág 1/47

Manual da Turma Virtual: NOTÍCIAS e TWITTER. Para acessar a turma virtual com o perfil Docente, siga o caminho indicado abaixo:

SIPAC MANUAL DE UTILIZAÇÃO PROTOCOLO

AUTOLAC VERSÃO FINALIZAÇÃO: 27 JUL PUBLICAÇÃO: 31 JUL. 2017

Internet Banking - Pessoa Jurídica. Manual do Usuário

Manual de Uso do Professor

MANUAL. Certificado de Origem Digital PERFIL PRODUTOR. Versão

CAU Controle de Acesso Unificado. Manual de Usuário

UNIVERSIDADE FEDERAL DO VALE DO SÃO FRANCISCO UNIVASF SECRETARIA DE TECNOLOGIA DA INFORMAÇÃO STI DEPARTAMENTO DE SISTEMAS DE INFORMAÇÕES

Manual do Fiscal de Obras no SIPAC

RECONET Registro de Contrato de Financiamento de Veículos

Introdução à Computação II (Noturno) BCC Unesp Rio Claro/SP 2015 em PDF via Moodle: Escolha apenas 5 exercícios para entrega Exercício 01 (Pilhas)

Levantamento Patrimonial

Manual do Gerência do Cliente Resultados de Exames

Confirmação de Cadastro 2010

Manual Sistema de Gerenciamento dos Auxiliares da Justiça

Lista de Preços. Criando listas de preços

Tutorial Modem. O recurso poderá ser acessado a partir das seguintes telas do sistema:

Manual do Associado 23/8/11. Manual do Associado

SISTEMA ADM ERP - MANUAL DO USUÁRIO. Conceitos Básicos

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

Documento de Protótipo

Manual da Turma Virtual: CONFIGURAÇÕES. Para acessar a turma virtual com o perfil Docente, siga o caminho indicado abaixo:

MANUAL DE OPERAÇÃO PROFESSOR. Página Inicial

Assessoria Técnica de Tecnologia da Informação - ATTI. Projeto de Informatização da Secretaria Municipal de Saúde do Município de São Paulo

MANUAL DE UTILIZAÇÃO DO SISTEMA LUX NF-E V

Manual de Operação do MGV 5. Manual de Operação do MGV5. Módulo Gerenciador de Vendas. Toledo

SISTEMA GSAÚDE: GESTÃO DE ATENÇÃO À SAÚDE

Gerabyte AFV (Automação de Força de Venda) Manual do Aplicativo

Identificação da Empresa

TUTORIAL DO AMBIENTE VIRTUAL DE APRENDIZAGEM (AVA) MOODLE

Carnê de Pagamento. Copyright ControleNaNet

Portal de Atendimento Telluria

Guia de Treinamento. SIPAC Módulo Almoxarifado. Requisitante de Material

Manual de uso do SSM. Classificação da informação: externa. Data: 09/08/18

Identificação da Empresa. MT Última Atualização 26/01/2018

Cadastro dos campos auxiliares:

Tutorial de funcionamento do aplicativo. Nota Paraná Mobile

Identificação da Empresa. MT Última Atualização 30/11/2016

MANUAL EPROC / TJTO. Endereço eletrônico:

SECRETARIA DE EDUCAÇÃO SISTEMA DE GESTÃO E MONITORAMENTO ESCOLAR. iescolar MANUAL DE INSTRUÇÕES MÓDULO PROFESSOR

LANÇAMENTO NOTAS DAS AVALIAÇÕES PARCIAIS Orientações para utilização do Sagres Graduação

Fale Conosco MT Última Atualização 23/07/2015

SISTEMA DE DESEMPENHO DA NAVEGAÇÃO - SDN

MANUAL CADASTRAMENTO EXPORTA FÁCIL PRÉ-POSTAGEM DOCUMENTO

SISTEMA DE GESTÃO PEDAGÓGICA Manual do Professor

Manual Sistema de Gerenciamento dos Auxiliares da Justiça

Sistema de Integração de Biblioteca. Manual do Usuário - Leitor Versão: 1.0

FS-FESP/Manual do Usuário. Manual do Usuário Fábrica de Software FESP

Schaeffler Online. Manual de Operação

MANUAL DO PORTAL DO PROFESSOR

Identificação da Empresa. MT Última Atualização 19/01/2018

VPRS Aplicativo Conversor Vida Manual do Usuário. Manual do Usuário

Manual Converte-MV S_Line

Portal de Sistemas Integrados. Manual do Usuário. Versão: 1.0

MANUAL DE INSTRUÇÕES CLARO TORPEDO EQUIPE

Atualização de Cadastros de Funcionários

ITQ InForm Recebimentos

Primeiro Trabalho Prático Projeto de Software - CI /1 Prof. Andrey Pimentel

CRÉDITO CONSIGNADO ITAÚ. Procedimento de Rescisão de Funcionários

Caso ocorram dúvidas durante a leitura do manual. Por favor, entre em contato com o setor de informática do IDAF.

Manual da Turma Virtual: LANÇAR NOTAS. Para acessar a turma virtual com o perfil Docente, siga o caminho indicado abaixo:

CADPREV Web Módulo de Aplicativo Web. Manual do Usuário. Cadastro de Acordos de Parcelamento. CADPREV - Manual do Usuário CADPREV-Web.

CADASTRAR MEMORANDO ELETRÔNICO

Manual de utilização do sistema de Gerenciamento de Atendimentos da Defensoria Pública do Estado de Rondônia.

WebSIGOM gerência de vales transportes pela Internet

Financeiro - Cadastro de Contas a Receber no Cartão

MANUAL VTWEB CLIENT URBANO

O Sistema Acadêmico online é um portal onde o aluno poderá realizar diversos serviços. A Figura 1 a seguir demonstra a página inicial do sistema.

MANUAL DE UTILIZAÇÃO DO MÓDULO DE ENTRADA DE NOTAS FISCAIS VIA B2B ONLINE

DOCUMENTO PADRÃO TI MANUAL FUNCIONAL PROJETO CRÉDITO CONSIGNADO

1. Acessando o SIGPRH

Como configurar integração com separador Centro de custo e rateio conforme cálculo da folha?

AMBIENTAÇÃO Plataforma TelEduc: ambiente de suporte para ensinoaprendizagem

Nova. Tecnologia em Atendimento. Manual do usuário

Manual SAGe Versão 1.0 (a partir da versão )

Processo de Balanço de Estoque (Inventário de Estoque)

Sumário 1. Inicializando o Sistema Arquitetura do Sistema Consulta Rápida de Veículos Informações Gerais...

Sumário. Conhecendo o Portal Primeiro Acesso Simulações de Renegociação LIQUIDAÇÃO (pagamento à vista, com desconto)...

Manual de uso do SSM Pessoa Natural. Classificação da informação: externa. Data: 03/09/18

Manual de Versão Group Shopping

Saíd í a d o Es E t s o t que Varejo - Vestuário 1

Exercícios: Arquivos

1 Visão Geral. 2 Instalação e Primeira Utilização. Manual de Instalação do Gold Pedido

MANUAL DE OPERAÇÕES ABR (Versão 1.0 de ) CHAVE DE ACESSO DAS ESTADUAIS

CONVIS GUIA DE UTILIZAÇÃO E AÇÕES

Transcrição:

IF71A S83 2015/2 Computação I Projeto da disciplina (versão 0.1 sujeita a alterações) Tema Uma grande empresa de mídias está promovendo um concurso mundial para saber quem é a pessoa com o maior conhecimento agregado sobre jogos, filmes e músicas. Ao vencedor será dado um prêmio de 5 milhões de dólares, logo está acontecendo um grande movimento nas redes sociais. Os 10 participantes que competirão pelo prêmio serão selecionados a partir de competições locais, que definirão 2 participantes por continente. A sua equipe percebeu neste cenário uma oportunidade de criar uma startup para apoiar brasileiros que desejam participar da competição. Para isso vocês criarão um aplicativo que gerará automaticamente questões sobre os temas jogos, filmes e músicas para os participantes. O nome da aplicação será AutoQuizzer, chamada no restante deste texto pelo seu acrônimo AQ.

Tela inicial Ao iniciar o AQ o sistema exibe o texto AutoQuizzer e, logo abaixo, os nomes dos desenvolvedores do sistema. Em seguida o usuário tem duas opções: Acessar como competidor Acessar como administrador Sair do AutoQuizzer Acessar como competidor Ao selecionar estão o AQ deve apresentar ao usuário o Menu principal do sistema. Acessar como administrador Ao selecionar esta opção, o AQ deve pedir o nome do usuário e a senha de administrador. O usuário somente poderá acessar o menu principal do AQ, caso ele informe o usuário e a senha correta. Caso contrário o AQ, deve voltar à Tela inicial. O nome de usuário administrador deve SEMPRE ser admin e a senha inicial é euqsei (esta pode ser alterada após acessar o sistema). Armazene a senha do administrador no arquivo binário config.dat. Sair do AutoQuizzer Ao selecionar esta opção, o sistema deve pedir uma confirmação do usuário antes de encerrar a execução do programa.

Menu principal O menu principal contém todas as funcionalidades disponíveis no AQ. Todas as ações feitas no menu principal são relacionadas ao competidor selecionado ou ao administrador. As ações de um competidor não devem afetar os demais competidores. Toda vez que o usuário encerrar uma operação em uma das funcionalidades disponíveis, o sistema deve retornar ao menu principal. As funcionalidades que compõem o menu principal são: 1. Alterar senha do administrador [*] 2. Cadastro geral [*] 2.1. Novo gênero 2.2. Apagar gênero 2.3. Novo artista 2.4. Apagar artista 3. Cadastro de mídias [*] 3.1. Nova mídia 3.2. Apagar mídia 4. Treinar [**] 4.1. Ver mídia 4.2. AutoQuizzer Simulator 5. Sair do AutoQuizzer ATENÇÃO 1: Menus e seus respectivos submenus marcados com [*] só podem ser visualizados pelo administrador. ATENÇÃO 2: Menus e seus respectivos submenus marcados com [**] só podem ser visualizados por competidores. ATENÇÃO 3: use uma função para limpar a tela após a conclusão de cada operação. As próximas seções apresentam detalhes de cada funcionalidade do menu. Alterar senha do administrador (menu 1) Ao selecionar esta opção o sistema deve pedir a senha atual e, se esta for informada corretamente, o sistema deve pedir para o usuário informar 2 vezes a nova senha. Se ambas forem iguais e alfanuméricas, a senha será alterada. Em qualquer caso, o sistema deve voltar para a Tela inicial. Uma mensagem deve informar o usuário se a operação foi ou não bem-sucedida.

Novo gênero (menu 2.1) Na funcionalidade Novo gênero o usuário poderá cadastrar um novo gênero (ex. Comédia, para filmes, Corrida, para jogos, Samba, para músicas) que poderá ser usado posteriormente no cadastro de uma mídia. Um mesmo gênero pode ser utilizado para mais de um tipo de mídia (ex. Terror, para filmes e jogos). Todos os gêneros DEVEM ser armazenados no arquivo binário chamado genero.dat. O sistema AQ deverá ter capacidade para armazenar até 60 gêneros. O cadastro de um gênero envolve as informações: Código do gênero (inteiro). Gerado automaticamente pelo sistema. Deve ser um código diferente para cada gênero; Nome do gênero (até 30 caracteres); Filme (Sim/Não). Indica se o gênero pode ser usado para categorizar filmes; Jogo (Sim/Não). Indica se o gênero pode ser usado para categorizar jogos; Música (Sim/Não). Indica se o gênero pode ser usado para categorizar músicas. ATENÇÃO: Um gênero deve obrigatoriamente pode ser usado para ao menos uma mídia. DICA: Use um vetor de struct para o cadastro de gêneros. Dessa maneira você poderá cadastrar todas as informações de gêneros, independentemente do tipo de dados. Apagar gênero (menu 2.2) Ao selecionar esta opção, o AQ deve apresentar a lista de gêneros já cadastrados. Em seguida o usuário deve informar o código do gênero que deseja apagar. O sistema deve apresentar uma mensagem confirmando se ele deseja realmente apagar o gênero. Em caso positivo, o gênero deve ser apagado. ATENÇÃO: Um gênero não poderá ser apagado enquanto houver uma mídia cadastrada usando-o. DICA: Para facilitar a atividade de apagar um gênero, considere somente alterar o código do gênero para -1. Assim, você saberá que esses códigos indicam que não há nada cadastrado naquela posição do vetor.

Novo artista (menu 2.3) Na funcionalidade Novo artista o usuário poderá cadastrar um novo artista. Como artistas são pessoas dinâmicas que podem variar suas funções entre interpretação de papeis, direção, entre outros, é importante um cadastro unificado de artistas, de maneira a identificar todas as funções exercidas por um mesmo artista. Todos os artistas DEVEM ser armazenados no arquivo binário chamado artista.dat. O sistema AQ deverá ter capacidade para armazenar até 1000 artistas. O cadastro de um gênero envolve as informações: Código do artista (inteiro). Gerado automaticamente pelo sistema. Deve ser um código diferente para cada artista; Nome do artista (até 60 caracteres); Dia do nascimento (inteiro). Valores permitidos entre 1 e 31, de acordo com o mês; Mês do nascimento (inteiro). Valores permitidos entre 1 e 12; Ano do nascimento (inteiro). DICA: Use um vetor de struct para o cadastro de artistas. Dessa maneira você poderá cadastrar todas as informações de artistas, independentemente do tipo de dados. Apagar artista (menu 2.4) Ao selecionar esta opção, o AQ deve apresentar a lista de artistas já cadastrados. Em seguida o usuário deve informar o código do artista que deseja apagar. O sistema deve apresentar uma mensagem confirmando se ele deseja realmente apagar o artista. Em caso positivo, o artista deve ser apagado. ATENÇÃO: Um artista não poderá ser apagado enquanto houver uma mídia cadastrada usando-o. DICA: Para facilitar a atividade de apagar um artista, considere somente alterar o código do artista para -1. Assim, você saberá que esses códigos indicam que não há nada cadastrado naquela posição do vetor.

Nova mídia (menu 3.1) Na funcionalidade Nova mídia o usuário poderá cadastrar uma nova mídia, que pode ser um filme, um jogo, ou uma música. Mídias DEVEM ser armazenadas no arquivo binário chamado midia.dat. O sistema AQ deverá ter capacidade para armazenar até 500 mídias. O cadastro de uma mídia envolve as informações: Código da mídia (inteiro). Gerado automaticamente pelo sistema. Deve ser um código diferente para cada mídia; Título da mídia (até 150 caracteres); Ano (inteiro). Ano em que a mídia foi criada/lançada; Tipo da mídia (caractere). Informe F para filmes, J para jogos ou M para músicas; Gênero (inteiro). Deve ser apresentada a lista de gêneros já cadastrados para o usuário escolher. A lista deve conter somente gêneros do tipo de mídia selecionado; Artista (vetor de inteiros). Deve ser apresentada a lista de artistas já cadastrados para o usuário escolher. O vetor deve permitir armazenar até 10 artistas para cada mídia; Álbum (caractere). Nome do álbum em que a música foi lançada. Informá-lo somente para MÚSICAS; Duração (inteiro). Tempo, em segundos, de duração da música ou filme. Informá-lo somente para MÚSICAS ou FILMES; Fabricante (caractere). Nome da empresa fabricante do jogo. Informá-lo somente para JOGOS; DICA: Use um vetor de struct para o cadastro de mídia. Dessa maneira você poderá cadastrar todas as informações de mídias, independentemente do tipo de dados. Apagar mídia (menu 3.2) Ao selecionar esta opção, o AQ deve apresentar a lista de mídias já cadastradas. Em seguida o usuário deve informar o código da mídia que deseja apagar. O sistema deve apresentar uma mensagem confirmando se ele deseja realmente apagar a mídia. Em caso positivo, a mídia deve ser apagada. DICA: Para facilitar a atividade de apagar uma mídia, considere somente alterar o código da mídia para -1. Assim, você saberá que esses códigos indicam que não há nada cadastrado naquela posição do vetor.

Ver mídia (menu 4.1) Antes de testar suas habilidades no AutoQuizzer Simulator, o competidor tem a oportunidade de estudar as mídias cadastradas no AQ. Ao selecionar esta opção, o sistema deve permitir ao competidor selecionar o tipo de mídia desejada (filme, jogo ou música). Após a seleção, o sistema deve apresentar uma lista dos código e nomes das mídias do tipo selecionado. O competidor deve ter a opção de escolher uma dessas mídias e, em seguida, o sistema deve apresentar TODAS as informações relacionadas a ela. AutoQuizzer Simulator (menu 4.2) Agora que tudo está cadastrado e o competidor já teve oportunidades para estudar as mídias, chegou a hora de testar suas habilidades! O AutoQuizzer Simulator (AQS) é um simulador de eventos de competição no estilo perguntas e respostas. Para tornar as perguntas e respostas mais interessantes, elas são geradas automaticamente pelo AQS, com base nos dados cadastrados sobre as mídias. Ao selecionar esta opção o competidor inicia um ciclo de perguntas/respostas. O competidor pode responder quantas perguntas ele desejar. Quando não mais desejar responder a perguntas, o sistema deve apresentar duas informações: Pontuação total alcançada, que é calculada da seguinte maneira: o 100 pontos a cada acerto; o -50 pontos a cada erro; o Bônus cumulativo de 30 pontos, caso acerte duas perguntas em seguida o Exemplo: se o competidor responder a 10 perguntas, sendo 6 acertos e 4 erros, na sequência [A, A, E, A, E, A, A, A, E, E], a pontuação será: [100 + 100 + 30 50 + 100 50 + 100 + 100 + 30 + 100 + 30-50 - 50] = 490 pontos; Ranking dos Top 3. Toda vez que um competidor alcançar a pontuação suficiente para estar entre os 3 melhores competidores, ele tem o direito de registrar seu nome no ranking. O ranking deve conter a pontuação e os nomes dos três melhores competidores e ser atualizado cada vez que um competidor a alcança, mesmo que seja um empate. Os dados devem ser armazenados em um arquivo binário chamado rank.dat. Ao final de cada jogo, independente da pontuação do competidor, o AQ deve apresentar o ranking dos Top 3 atualizado.

Há diversos tipos de questões que podem ser feitas, mas há um conjunto mínimo de tipos de questões que o AQS deve ser capaz de gerar automaticamente. São elas: Em que ano a mídia [TÍTULO DA MÍDIA] foi lançado(a)? Qual, entre as opções, é a mídia com maior tempo de duração? Qual, entre as opções, é a mídia mais antiga? Qual, entre as opções, é a mídia mais recente? Qual, entre as opções, é o artista que já participou como ator e cantor? Qual, entre as opções, é o gênero da mídia [TÍTULO DA MÍDIA]? Qual, entre as opções, é o Álbum no qual a música [TÍTULO DA MÚSICA] foi lançada? Qual, entre as opções, é um jogo da fabricante [NOME DA FABRICANTE]? Qual, entre as opções, é o(a) artista mais velho(a)? Qual, entre as opções, é o(a) artista mais jovem(a)? Para as questões que contém o texto entre as opções, o sistema deve oferece 2 opções adicionais além da opção correta. Somente uma das opções deve estar correta. As duas opções adicionais devem ser obtidas ALEATORIAMENTE entre as mídias cadastradas. DICA: Para gerar números aleatórios utilizem a função RandomInteger tal como apresentado no exemplo a seguir. No AQ, de acordo com a pergunta e as opções disponíveis, basta ajustar os valores das variáveis min e max para que a função escolha aleatoriamente qual delas incluir na pergunta. #include <stdio.h> //Exemplo de programa para gerar números aleatórios com valor entre os definidos pelas variáveis min e max. int main() { int min = 0, max = 10; srand(time(null)); printf("%d", RandomInteger (min, max)); } int RandomInteger (int min, int max) { return min+rand()%max; } Sair do AutoQuizzer (menu 5) Ao selecionar esta opção, o sistema deve pedir uma confirmação do usuário antes de encerrar a execução do programa.

Requisitos de entrega Apresentação. A qualidade e criatividade na apresentação é um critério importante para esse projeto. Assim busquem tornar o programa fácil de usar. Por exemplo, usem cores e apresentem as informações de maneira clara e organizada. Organização: O projeto deverá ser desenvolvido em trios; Cada projeto será apresentado em laboratório pelo grupo; Cada membro do grupo deverá mostrar conhecimento do funcionamento do projeto. O código: Deverá ser documentado com comentários; Deverá estar indentado; Atenção nos nomes de variáveis e tipos de dados; Cada funcionalidade deverá ser codificada em funções separadas; A apresentação dos dados deve ser clara e estruturada; A função main deve conter somente as chamadas para as funções do sistema; Funcionalidades: O grupo tem liberdade para implementar a apresentação do programa da maneira que considerar mais criativa; Requisitos do sistema devem ser respeitados; Todo dado informado pelo usuário deve ser validado e, caso o dado não esteja correto, ele deve ter a oportunidade de alterá-lo ou cancelar a operação; O usuário deve ter a possibilidade de realizar quantas operações desejar sem a necessidade de reiniciar/fechar o programa. Entrega: O grupo apresentará o projeto em execução em laboratório; O professor fará perguntas aleatórias para os membros da equipe sobre o funcionamento e detalhes do código; O código-fonte do projeto será entregue ao professor por pen-drive logo após a apresentação. Sobre a nota: Composta de duas partes: nota do grupo e nota individual; Nota do grupo corresponde à parcela da especificação coberta pelo grupo (valores de 1 a 10); Nota individual corresponde à participação do aluno em relação ao projeto (1 a 100); Assim a nota do aluno dá-se por: (nota do grupo * nota do aluno) / 100.