Вы находитесь на странице: 1из 2

MIEEC

/ Programao 1

2013 / 2014


Aula prtica 12
1 Escreva e teste uma biblioteca de rotinas chamada polinomios para operar com
polinmios. Considere que os coeficientes dos polinmios so inteiros e que o grau mximo
10.
1.1 - Implemente uma funo de leitura de polinmios com a seguinte assinatura:
int ler_poli(int * poli);

1.2 - Implemente uma funo de escrita de polinmios com a seguinte assinatura:


void escreve_poli(int * poli, int grau);

1.3 - Implemente uma funo que adicione 2 polinmios com a seguinte assinatura:
void adiciona_poli(int * p1, int * p2, int *pRes, int maior_grau);

1.4 - Implemente uma funo que calcule o valor do polinmios para um certo valor da
varivel independente com a seguinte assinatura:
float calc(int * poli, int grau, float x);

1.5 - Implemente um programa que permita testar a biblioteca desenvolvida.


2 Escreva e teste um programa que para uma data completa de um certo dia (guardada num
registo), fornea a data de k dias frente ou atrs do dia especificado. Utilize a biblioteca
datas e a estrutura sugerida para o programa disponvel no arquivo prob2_12.zip.
Contedo do ficheiro "prob2_12.zip":

datas.h: Cabealho (header file) com prottipo de todas as funes necessrias para
este exerccio.
datas.c: Implementao de grande parte das funes da biblioteca. Dever
implementar as funes diaSeguinte, diaAnterior e somaDias.
programa.c: Ficheiro onde reside o programa principal (funo main()), que deve ser
completado para resoluo do exerccio.
Makefile: ficheiro que permite compilar automaticamente todos os ficheiros no
programa final.

Como compilar:
Opo 1: clang datas.c programa.c -o programa
Opo 2 (usando o ficheiro Makefile): make
3 Os nmeros complexos so representados por pontos no plano, designando-se uma
componente (normalmente segundo a coordenada horizontal) por parte real, e a outra
componente por parte imaginria do complexo.
Escreva uma biblioteca de rotinas chamada complexos para operar com complexos.
Um complexo z com componentes x (parte real) e y (parte imaginria) escreve-se z = x + iy;
dados os complexos u = a + ib e v = c + id a soma u + v = (a + c) + i(b + d); o mdulo e
argumento angular de z correspondem ao mdulo e argumento angular do vector da origem a
(x, y).

3.1 - Defina um registo que permita guardar um numero complexo.


3.2 - Implemente uma funo de leitura de nmeros complexos:
complexo le_complexo();

3.3 - Implemente uma funo de escrita de nmeros complexos:


void escreve_complexo(complexo c);

3.4 - Implemente uma funo que adicione 2 nmeros complexos:


complexo soma_complexo(complexo c1, complexo c2);

3.5 - Implemente uma funo que calcule o modulo de um numero complexo:


double mod_complexo(complexo c);

3.6 - Implemente uma funo que calcule o argumento angular de um numero complexo:
double arg_complexo(complexo c);

3.7 - Escreva um programa que permita testar a biblioteca que desenvolveu.


4 Uma empresa de electrodomsticos pretende informatizar os dados relativos aos artigos


de que dispe para venda.
4.1 Defina um registo, artigo, adequado representao de um artigo, contendo a seguinte
informao: designao do artigo (televisor, rdio, mquina de lavar roupa, etc.), marca (por
exemplo, Blabla), modelo (por exemplo, S-30), preo e quantidade disponvel em armazm.
4.2 Escreva uma funo que leia um elemento do tipo artigo, passado por parmetro. Os
dados do artigo so lidos a partir da informao introduzida pelo utilizador.
void le_artigo(artigo *item)

4.3 Considere que a informao sobre os artigos da empresa, em nmero n < 10000, foi lida
para um vetor (armazem) de elementos do tipo artigo. Escreva uma funo que retorne o
nmero total de artigos de uma certa marca e modelo a especificar.
int total_artigos(artigo armazem[], int n, char marca[], char
modelo[]);

4.4 Implemente um procedimento que liste todos os produtos cuja existncia em stock
inferior a 10 unidades
void alerta_artigos(artigo armazem[], int n);

4.5 Implemente um procedimento que ordene todos os produtos em stock pela sua
quantidade.
void ordena_artigos(artigo armazem[], int n);

4.6 - Implemente um programa que permita testar a biblioteca que desenvolveu.







Outros exerccios recomendados do livro C How To Program: 10.5, 10.6
Pode aceder verso electrnica atravs da rede da FEUP (link no Moodle)

Вам также может понравиться