Buscar

lista4 LP 2015 p3

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Você também pode ser Premium ajudando estudantes

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Você também pode ser Premium ajudando estudantes

Prévia do material em texto

Curso de Bacharelado em Ciência e Tecnologia 
Lógica de Programação
LISTA DE EXERCÍCIOS DE PROGRAMAÇÃO
Continuação da lista 3
Parte 6: Ponteiros 
1) Considere o código abaixo e responda:
int main() {
 int y, *p, x;
 y = 0;
 p = &y;
 x = *p;
 x = 4;
 y +=2;
 (*p)++;
 (*p) += x;
 printf ("y = %d\n", y);
 return(0);
}
Ao final do programa.
a) Qual o valor de x
b) Qual o valor de p
c) Qual o valor de (*p == x)
d) Qual o valor de &p
e) Qual o valor de y
f) Qual o valor de y >= *p
g) Qual o valor de -(*&p)/(y)
f) Qual o valor de y * x / *p
2) Dado um vetor de inteiros de N elementos declarado localmente na função principal
desenvolva uma outra função/procedimento que alimente esse vetor com N valores lidos pelo
usuário. Depois escreva uma outra função/procedimento que imprima o conteúdo do vetor. 
Parte 7: Recursão
Resolva as todos os problemas abaixo na forma iterativa e recursão:
3) Escreva um programa em C que, dado um vetor de inteiros e tamanho N (0<N<50), calcule 
e apresente o somatório dos elementos desse vetor.
4) Crie uma função/procedimento recursivo que: (considerando um item de cada vez)
• Mostre na tela números de 1 a 10.
• Mostre na tela números de 10 a 1.
• Mostre na tela números de 1 até um número fornecido pelo usuário.
• Mostre na tela o somatório de 1 a 15.
• Mostre na tela o somatório de 1 até um número fornecido pelo usuário.
• Mostre na tela números ímpares de 1 a 20.
• Mostre na tela números ímpares de 1 à um número fornecido pelo usuário.
• Mostre na tela números pares entre 1 e 20 inclusive.
• Mostre na tela números pares entre 1 e um número fornecido pelo usuário inclusive.
• Mostre na tela o fatorial de 1 a 10.
• Mostre na tela o fatorial de 1 até um número fornecido pelo usuário.
• Mostre na tela o enésimo (N é fornecido pelo usuário) termo da sequência de 
Fibonacci.
• Mostre na tela o N primeiros (N é fornecido pelo usuário) termos da sequência de 
Fibonacci.
• Some os elementos de um vetor.
• Multiplique dois números a e b sem utilizar o operador *, utilizando apenas +.
5) Escreva um programa em C que dado um vetor A de valores inteiros gere apresente outro
vetor B com os elementos invertidos (primeiro de A = último B etc) (0<N<50).
6) Escreva um programa em C para contar e imprimir o número de ocorrências de um
número inteiro fornecido pelo usuário em um dado vetor de inteiros de tamanho variável,
também obtido pelo usuário (Obs.: o tamanho máximo do vetor é 100).
7) Escreva um programa em C que dado um número inteiro positivo X calcule e apresente o
fatorial de X.
8) Escreva um programa em C que dado um número inteiro positivo X calcule e apresente a
série de fibonacci de tamanho X.
Parte 8: Registros
9) Escreva um programa em C para armazenar registros de passageiros de voos de um
aeroporto em que são armazenados além dos dados do voo (número do voo, cia, origem,
destino, data e horário, tipo[nacional, internacional]) os dados de cada um dos passageiros
(Nome, RG, passaporte, idade e número de assento). Considere que e o número de voos desse
aeroporto não ultrapassa 100 e o número de assentos nos aviões 50. 
 
10) Um armazém trabalha com 20 mercadorias diferentes identificadas pelos números de 1 a
20. O dono do armazém anota a quantidade de cada mercadoria vendida durante o mês. Ele
tem uma tabela que indica para cada mercadoria o preço de venda e quantidade restante em
estoque de cada mercadoria. Usando um vetor de registros, escreva um programa em C que o
ajude a armazenar, relacionar os seu estoque e calcular o faturamento mensal com base nas
vendas e no preço de cada mercadoria do seu armazém.
“Many of life's failures are people who did not 
realize how close they were 
to success when they gave up.”
Thomas A. Edison (1847 - 1931)
“Any fool can write code that a computer can understand.
Good programmers write code that humans can understand.”
Martin Fowler, Refactoring: Improving the Design of Existing Code
Divirta-se!

Continue navegando