Prévia do material em texto
UNIVERSIDADE FEDERAL RURAL DO SEMI-ÁRIDO – CAMPUS PAU DOS FERROS BACHARELADO EM TECNOLOGIA DA INFORMAÇÃO DISCIPLINA: LABORATÓRIO DE ALGORITMOS E ESTRUTURAS DE DADOS I PROFESSOR: THIAGO RIQUE LISTA DE EXERCÍCIOS 03 ALOCAÇÃO DINÂMICA Questão 1) Uma empresa fez uma pesquisa para saber se as pessoas gostaram ou não de um novo produto. Um número N de pessoas de ambos os sexos foi entrevistado, e o questionário consistia em apenas duas perguntas: (i) o sexo do entrevistado (M/F) e (ii) sua opinião sobre o produto (gostou/não gostou). Escreva um programa em C que: a) leia as respostas contidas no questionário e armazene-as em dois arrays vinculados, um deles contendo a resposta para a primeira pergunta e o outro contendo a resposta para a segunda pergunta. b) determine a porcentagem de pessoas do sexo feminino que responderam que gostaram do produto. c) determine a porcentagem de pessoas do sexo masculino que responderam que não gostaram do produto. Questão 2) Escreva um programa para corrigir provas de múltipla escolha. Cada prova tem N questões e cada questão vale 10/N pontos. Os primeiros dados a serem lidos são o número de questões e o gabarito da prova. Em seguida, serão lidas as respectivas respostas de um total de 10 alunos matriculados. Calcule e mostre: a) a nota obtida para cada aluno; b) a porcentagem de aprovação, sabendo-se que a nota mínima para ser aprovado é 6. Questão 3) Considere a manipulação de matrizes quadradas de inteiros e a representação de matrizes em C por vetor simples e vetor de ponteiros. a) implemente duas versões (usando vetor simples e vetor de ponteiros) de uma função que recebe duas matrizes como parâmetro e retorna a matriz resultante da soma. b) implemente duas versões (usando vetor simples e vetor de ponteiros) de uma função que recebe duas matrizes como parâmetro e retorna a matriz resultante da subtração. c) implemente duas versões (usando vetor simples e vetor de ponteiros) de uma função que recebe duas matrizes como parâmetro e retorna a matriz resultante da multiplicação. d) escreva uma função main para testar as funções dos itens anteriores. Questão 4) A Nlogônia é um país tropical, com muitas belezas naturais internacionalmente famosas; dentre elas, encontram-se as belas praias que compõem o arquipélago do país, que todo verão recebem milhões de turistas estrangeiros. O Ministério do Turismo da Nlogônia está preparando o país para a chegada dos turistas, mas, para fazer seu planejamento, precisa saber a extensão da costa nlogônica. Para isso, ele gerou um mapa que divide o território nacional em vários quadrados, que podem ser ocupados por água ou por terra; considera-se que um quadrado é parte da costa nlogônica se ele é um quadrado ocupado por terra que tem um lado em comum com um quadrado ocupado por água. Na figura abaixo, (a) mostra um trecho do mapa gerado e (b) mostra os quadrados do trecho dado que são costa. Como a Nlogônia é um país muito grande, o ministro do turismo pediu que você escrevesse um programa que, dado o mapa da Nlogônia, determina a extensão da costa nlogônica. Entrada A primeira linha da entrada contém dois inteiros M e N indicando, respectivamente, o número de linhas e o número de colunas do mapa. Cada uma das M linhas seguintes contém N caracteres: um caractere ‘.’ indica que aquele quadrado do território é ocupado por água; um caractere ‘#’ indica que aquele quadrado do território é ocupado por terra. Considere que todo o espaço fora da área do mapa é ocupado por água. Saída Seu programa deve imprimir uma única linha contendo um único inteiro, indicando quantos quadrados do território fazem parte da costa da Nlogônia. Restrições • 1 ≤ M, N ≤ 1000. Exemplos Fonte: CELES, Waldemar; CERQUEIRA, Renato; RANGEL, José Lucas. Introdução a Estruturas de Dados: com técnicas de programação em C. Elsevier, 2016. OLIVEIRA, Ulysses de. Programando em C. Editora Ciência Moderna, v. 1, 2008. OLIMPÍADA BRASILEIRA DE INFORMÁTICA. OBIs Passadas. Disponível em:< http://olimpiada.ic.unicamp.br/passadas>. Acesso em: 27 de jul. 2016.