...collaborate on

Ficha Nº5

Objectivos:

O objectivo principal desta ficha é consolidar os conhecimentos sobre manipulação de arrays em C expandindo para a manipulação de arrays multidimensionais, noemadamente as matrizes.

Exercícios:

Exercício Nº1: Gestão de Armazens

Uma empresa tem 10 armazens e precisa de um programa que leia as vendas mensais dos 10 armazens, calcule a media de vendas e produza uma listagem dos armazens com vendas superiores à média calculada.

Exercício Nº2: Contem ou Contido

Desenvolva um algoritmo e posteriormente codifique-o em C que dadas dumas matrizes de dimensões arbitrárias verifica se a primeira contem a segunda (considere que os valores armazenados nas matrizes são do tipo inteiro).

Exercício Nº3: Média dos Alunos

Cada aluno de uma licenciatura em Ciências da Computação pode ter notas correspondentes a 10 disciplinas feitas durante o ano lectivo (caso não tenha sido avaliado positivamente a uma disciplina não terá essa nota).

  1. Declare as estruturas de dados (o modelo) necessárias para suportar o sistema de informação: um aluno tem um número (inteiro sequencial a partir de 1), um nome (string) e uma lista de notas (reais). Pense na hipótese de encarar o número do aluno como um código alfanumérico (para permitir números em qualquer escala, ou mesmo o uso de letras) e identifique as alterações daí decorrentes.
  2. Inicialize a estrutura de dados: na declaração e/ou numa função de inicialização que é chamada no início da função main().
  3. Crie as funções normais de manipulação de uma pequena base de dados:
    1. Inserir - de modo a manter a informação por ordem alfabética de nome. Numa 1ª versão, utilize o algoritmo por trocas directas e, numa 2ª versão, use a inserção ordenada;
    2. Remover - utilize a pesquisa sequencial ordenada para encontrar o registo a remover;
    3. Consultar - utilize a pesquisa dicotómica para encontrar o registo a consultar;
    4. Listar - liste todos os alunos armazenados, por ordem alfabética.
  4. Especifique uma função em C para calcular a média de cada aluno (faça uma função que dada a estrutura de dados principal e o identificador do aluno, produz como resultado a sua média); note que disciplinas não avaliadas não contam para a média (diferente de obter a classificação 0 numa disciplina).
  5. Calcule a média geral da turma.
  6. Calcule a média da turma em cada disciplina.
  7. Calcule a percentagem de faltas (ausência de nota).

-- PedroRangelHenriques - 29 de Abril, 2005

r6 - 29 Apr 2005 - 08:56:52 - PedroRangelHenriques
This site is powered by the TWiki collaboration platformCopyright © by the contributing authors. All material on this collaboration platform is the property of the contributing authors.
Ideas, requests, problems regarding TWiki? Send feedback
Syndicate this site RSSATOM