Baixe o app para aproveitar ainda mais
Prévia do material em texto
P a g e 1 | 7 Unidade Curricular Ano / Semestre Ano letivo Docentes Curso Coordenação Introdução à Programação 1º / 1º 2016-2017 Profa. Elcelina Silva EQB/EA Prof. Isidoro Gomes Profa. Artemisa Moreno EGI/MAT PROJETO PERGUNTAS DE APETIDÕES Regulamento O trabalho deverá ser realizado por grupos de no máximo, 2 elementos. Não pode haver grupo constituído por elementos provenientes de cursos diferentes. O peso deste trabalho é de 20% da nota final da disciplina. Cada grupo deverá entregar o relatório em formato digital (word), bem como, todos os recursos adicionais, nomeadamente os ficheiros do projeto com os respetivos código fonte. O relatório deverá seguir a estrutura apresentada nas folhas em anexo, sob penalização do não cumprimento das normas. Os trabalhos remetidos fora da data de entrega serão considerados inválidos. Critérios de Avaliação Correto funcionamento de todos os programas e Defesa destes……………………………90% Qualidade do código………………………………………………………………………………………………….5% Relatório:……………………………………………………..……………………………………………………………5% Data limite de Entrega: 19 de Janeiro 2017, quinta-feira. O Projeto e o relatório deve ser entregue em formato digital, zipados num único ficheiro e enviados até às 23h59min da seguinte forma: a. Destinatários (para os Alunos de Engenharia Alimentar e Engenharia Química e Biológica): Profª. Elcelina Silva - elcelina.silva@docente.unicv.edu.cv e com Cc (conhecimento para): isidoro.gomes@docente.unicv.edu.cv UNIVERSIDADE DE CABO VERDE FACULDADE DE CIÊNCIAS E TECNOLOGIA P a g e 2 | 7 b. Destinatários (para os Alunos de Estatística e Gestão de Informação e Matemática): Profª. Artemisa Moreno – Artemisa.moreno@docente.unicv.edu.cv e com Cc (conhecimento para): isidoro.gomes@docente.unicv.edu.cv c. Título de e-mail composto por: IP_Turma_PrimeiroUltimoNomeElemento1_ PrimeiroUltimoNomeElemento2. Por exemplo, um grupo composto por Ana Maria e José Fidalgo, pertencentes à turma de MATEMÁTICA, o título de e-mail seria: IP_MAT_AnaMaria_JoséFidalgo. d. O nome do ficheiro zipado a enviar deve ser o mesmo do título do e-mail – alínea anterior (b). e. Antes de zipar o ficheiro, deve eliminar o ficheiro executável do seu projeto, ou seja, o ficheiro tipo application (.exe). Enunciado: Este trabalho consiste no desenvolvimento em linguagem C de um conjunto de pequenos programas, a correr em ambiente DOS. Problemas: P1 - O programa a desenvolver deve imprimir o menu de opções seguinte e funcionar em modo interativo, obtendo do utilizador a opção escolhida, executando a tarefa correspondente a essa opção e voltando a apresentar o menu, até que o utilizador opte por terminar. Descrição das opções 1 – Introduzir dois novos inteiros positivos Permite ler dois números inteiros e guarda-as nas variáveis num1 e num2, receptivamente. 2 - Divisão real Calcula de divisão real de num1 e num2. 3 - Múltiplo de mais próximo Calcula o múltiplo de num2 mais próximo de num1. 4 - Lista de múltiplos positivos de num1 não superiores a num2 Permite listar todos múltiplos de num1 menor ou igual a num2. 1 - Introduzir dois novos inteiros positivos 2 - Divisão real 3 - Múltiplo mais próximo 4 - Lista de múltiplos positivos de num1 não superiores a num2 5 - Menor múltiplo comum positivo 0 - Terminar P a g e 3 | 7 5 - Menor múltiplo comum positivo Calcula o menor múltiplo comum de num1 e num2. 0 - Terminar Termina a execução. Esqueleto do programa: /** * Primeiro trabalho de Introdução à Programaçã0 * Autores: * Nome do aluno1 * Nome do aluno2 */ #include <stdio.h> /* prototipos de funcoes definidas pelo programador */ /* ... A COMPLETAR ... */ /* funcao main inicia a execucao do programa */ int main( void ) { int num1; /* primeiro inteiro dado pelo utilizador */ int num2; /* segundo inteiro dado pelo utilizador */ int opcao; /* opcao a executar */ do{ /* Ciclo de leitura e execucao da opcao ate que essa opcao seja 0 */ /* Ler valor para opcao */ printf("Opcao:\n"); scanf("%d", &opcao); switch (opcao){ case 0: break ; case 1: { /* Processar opcao 1 */ /* ... A COMPLETAR ... */ } case 6: { /* Processar opcao 6 */ /* ... A COMPLETAR ...*/ } } }while(opcao != 0); printf("Fim.\n"); return 0; /* o programa termina com sucesso */ } /* fim da funcao main */ P a g e 4 | 7 /* outras funcoes definidas pelo programador */ /* ... A COMPLETAR ... */ P2 - Um ciclones tropical consiste em uma tempestade muito violenta que, sob determinadas condições, adquire um movimento de rotação em torno de uma região de baixa pressão atmosférica. Um ciclone pode atingir um diâmetro de até 500 km. Furacões são os mais violentos desses ciclones e chegam a produzir ventos de até 320 km/h. Na tabela abaixo, são apresentados alguns dados relativos à classificação dos furacões segundo a escala Saffir- Simpson: http://www.nhc.noaa.gov/aboutsshws.php Escreva um programa que leia a velocidade do vento aferida durante uma tempestade e apresente ao utilizador a classificação do furacão caso a tempestade possa ser classificada como tal. P3 - Considere uma quantia q em escudos aplicada por k anos consecutivos, a uma taxa anual de juros j, com o reinvestimento dos juros ao longo do período (juro composto) e n períodos de composição por ano (exemplos: 1 - anual, 2 - semestral, 12 - mensal, 365 - diário). A quantia final qf a ser resgatada após k anos é calculado da seguinte forma: qf = q * (1 + r/n)(k*n) onde r = j/100. Escrever um programa que calcule os resgates finais de acordo com as opções de programa fornecidas pelo usuário. P4 - Escrever uma função que determine a soma dos elementos na diagonal secundária de uma matriz quadrada de n>0 linhas e colunas. Exemplo: A soma dos elementos da diagonal secundária da matriz. Exemplo: Resultado: 4 + 1 + 0 + 3 = 8 P a g e 5 | 7 Requisitos obrigatórios e funcionais /modos de realização 1. Implemente os programas e introduza comentários sucintos para explicar ideias ou passos principais. 2. Deve-se criar um único projeto e uma única função main (programa principal) que por sua vez, invocará todas as demais funções, responsabilizando-se pela execução do seu programa (recorrer ao switch-case). 3. Deve haver uma função/procedimento void Menu() {} que ocupará pela construção do menu principal do seu TRABALHO. O projeto, uma vez executado deve apresentar no monitor esse meu e sempre que necessário, submenus com várias opções. MENU PRINCIPAL DO PROGRAMA: Changelog Durante a realização do trabalho, pode ser que este enunciado seja submetido a melhorias, correções e clarificações. Por exemplo as dúvidas colocadas pelos alunos poderão resultar em algumas clarificações ou explicações suplementares. As alterações serão listadas nesta secção. Avisos prévios importantes O seu programa vai ser em grande parte corrigido à mão pelos docentes usando uma grelha de critérios bem definida. É importantíssimo escrever o seu programa pouco e pouco, testando sempre as partes novas do programa e garantindo que ele está sempre a funcionar (mesmo que ainda não estejaa fazer tudo o que se pretende). Por cada função nova que escrever, ou detalhe que adicione, verifique se o programa ainda compila e se continua a funcionar. Se não fizer assim, no final você terá um programa com dezenas de erros e uma grande trapalhada. P a g e 6 | 7 Este trabalho é para ser resolvido em grupos de dois alunos. Os alunos pertencentes a grupos diferentes podem discutir entre si ideias, inclusivamente em fóruns, mas devem manter uma certa distância entre si não podendo partilhar código ou ler código mútuo. Quando um grupo escreve um programa inspirando-se no trabalho de outro grupo, isso é muito fácil de detetar pelo docente, assim como pelo sistema automático de deteção de cópias que a disciplina usa. Dúvidas: Eventuais dúvidas podem ser esclarecidas junto do docente da disciplina, através do e-mail e/ou presencialmente. Notas finais: A utilização de trabalhos já concebidos ou qualquer tentativa de ludibriar as regras do trabalho levará a uma penalização, sendo atribuída a classificação de ZERO VALORES. Trabalhos iguais serão ANULADOS. P a g e 7 | 7 ANEXOS 1 - REGRAS PARA ESCRITA DO RELATÓRIO 1. Conteúdo do relatório 1.1 Capa: Logo da Uni-CV. Departamento. Curso. Disciplina. Nome do Projeto. Ano letivo. Nome e número dos elementos de Grupo. Docente. 1.2 Índice 1.3 Desenvolvimento 1.3.1 Introdução – breve abordagem sobre a linguagem C. 1.3.2 Funções utilizadas e explicação, com print screen dos códigos e output dos programas. 1.4 Conclusões: 1.4.1 Aprendizagem 1.4.2 Dificuldades Texto normal: Tipo de letra: Times New Roman Tamanho: 11 Espaçamento entre linhas: 1.5 Alinhamento do texto: Justificado Título 1: Tipo de letra: Times New Roman Tamanho: 18 Título 2: Tipo de letra: Times New Roman (a Bold) Tamanho: 16 Numeração: no cabeçalho, alinhado à direita. Cabeçalho: Deve incluir apenas o tema do trabalho, seguido da numeração. Tipo de letra: TIMES NEW ROMAN (tudo maiúscula e em Itálico) Tamanho: 11 Rodapé: o espaço de rodapé reserva-se apenas às notas de rodapé, não devendo conter mais nenhuma informação adicional. Margens: superior e inferior: 2.5 cm, Esquerda: 3 cm; Direita: 2,5 cm.
Compartilhar