Você está na página 1de 4

Universidade Federal da Bahia

Escola Politécnica
Departamento de Engenharia Química - DEQ
Disciplina: Métodos Computacionais na Engenharia I – ENG-D01
Professora: Karen Pontes

Aluno: Data:

7ª Lista de exercícios – Estrutura de dados homogênea

Vetores

1. Elabore um algoritmo que permita a entrada de n valores reais e apresente como resultado o
maior entre esses valores.

2. Num frigorífico há 38 bois. Cada boi possui uma tarjeta indicando seu número e sua massa.
Deseja-se saber qual o boi mais magro e qual o mais gordo e suas respectivas massas.

3. Crie um algoritmo para calcular a média dos n valores fornecidos, armazenando os valores.

4. Elabore um algoritmo que determine o módulo do vetor de n dimensões fornecidas. O módulo


de um vetor é um número real que representa o comprimento de um vetor. Logo, calcular o
módulo ou norma do vetor é o mesmo que calcular a distância do ponto (𝑎, 𝑏) até a origem (0,0).
Para um vetor 𝑣 = (𝑎, 𝑏, 𝑐) pertencente a um espaço tridimensional 𝑛 = 3 , seu módulo é
calculado por:
|𝑣| = 𝑎 +𝑏 +𝑐

Se o vetor 𝑣 = (𝑎, 𝑏, … , 𝑛) pertence a um espaço n-dimensional, a soma no interior da raiz


quadrada terá 𝑛 parcelas:

|𝑣| = 𝑎 + ⋯+ 𝑛

5. Faça um programa que leia 10 números e depois de lidos imprima os números na ordem inversa
em que foram digitados.

6. Faça um programa que armazene as notas da primeira nota em um vetor N1, as notas da prova 2
em um vetor N2. Com as notas nos vetores N1 e no vetor N2, o sistema calcula a média para cada
aluno e armazena em um vetor NMED.

7. Faça um programa que leia uma palavra, onde cada letra deve ser armazenada em uma casa do
vetor. Considere que ao digitar o caractere 0 (Zero), a palavra (sequência de caracteres) é
terminada. Depois de montado o vetor, o programa deve avaliar se a palavra lida nos dois sentidos
são a mesma palavra (palíndromo). Veja exemplos abaixo.

Exemplo: ARARA, IRIRI e RIR são palíndromos.


8. Elabore um algoritmo que retorne a as diferenças quadráticas entre as n dimensões de dois
pontos.
𝑃 (𝑋 , 𝑋 , 𝑋 , 𝑋 , . . . , 𝑋 ) 𝑃 (𝑋 , 𝑋 , 𝑋 , 𝑋 , . . . , 𝑋 )
diferença quadrática entre a e b = (a-b)²

9. Desenvolva um algoritmo para calcular a distância entre 2 pontos num sistema com 𝑛 (𝑛 > 3)
dimensões complexas. Por exemplo, no sistema com 𝑛 = 2, a distância entre os pontos A (𝑥 , 𝑦 )
e B (𝑥 , 𝑦 ) é dada por:

𝑑(𝐴, 𝐵) = (𝑥 − 𝑥 ) + (𝑦 − 𝑦 )

Para 𝑛 = 3, a distância entre os pontos A (𝑥 , 𝑦 , 𝑧 ) e B (𝑥 , 𝑦 , 𝑧 ) é dada por:

𝑑(𝐴, 𝐵) = (𝑥 − 𝑥 ) + (𝑦 − 𝑦 ) + (𝑧 − 𝑧 )

10. Desenvolva um algoritmo para converter frações mássicas (𝑌 ) em frações molares (𝑦 ) de uma
mistura multi-componente. Sabe-se que a massa molecular da mistura (𝑀 ) pode ser escrita em
função da fração mássica da seguinte forma:

𝑚 𝑚 1 1
𝑀 = = = =
𝑁 ∑ 𝑚 /𝑀 ∑ 𝑚 /(𝑚 𝑀 ) ∑ 𝑌 /𝑀

onde 𝑚 é a massa da mistura, 𝑁 é o número de mols da mistura, 𝑀 é a massa molar do


componente 𝑖, 𝑚 é a massa do componente 𝑖. Sabe-se ainda que as frações mássica e molar se
relacionam a partir de:

𝑚 𝑁𝑀 𝑀
𝑌 = = =𝑦
𝑚 𝑁 𝑀 𝑀

11. Faça um programa que leia 10 números em um vetor A e 10 números em um vetor B e depois
construa um vetor de 20 posições com os valores de A e B intercalados:

A = 1 1 3 6 ...
B = 3 5 7 9 ...
AB = 1 3 1 5 3 7 6 9 ...

12. Construir dois algoritmos que dado um vetor "V" com N elementos (N <= 1000), inverta o vetor
"V":

a) Utilizando um vetor auxiliar.


b) Sem utilizar um vetor auxiliar.

Obs.: Não é só para inverter o vetor, você deve armazenar o vetor.


13. Dado um conjunto de dados contendo as massas de várias pessoas, deseja-se contar quantas
pessoas apresentam a massa que se encontra em cada um dos intervalos abaixo e quantas não
se encontram em nenhum deles.
[38,55) [55,65) [69,85) [89,--]

14. Fazer um algoritmo para tabular a função 𝑦 = 𝑓 (𝑥) + 𝑔(𝑥) para 𝑥 = 1,2,3, . . . ,18 onde:

ℎ(𝑥) = 𝑥 − 12 𝑓(𝑥) = ℎ(𝑥), 𝑠𝑒 ℎ(𝑥) > 0 𝑔(𝑥) = 𝑥 − 4, 𝑠𝑒 𝑓(𝑥) = 0


2, 𝑠𝑒 ℎ(𝑥) ≤ 0 5 − 𝑥, 𝑠𝑒 𝑓(𝑥) > 0

15. Imagine que um polinômio usado para determinado problema pode ter até o grau 5. Faça um
programa que leia o polinômio em um vetor, cada coeficiente deve estar armazenado em uma
casa do vetor. Depois de um polinômio lido, o programa continuamente solicita um valor para a
variável 𝑋 e calcula o valor do polinômio para aquele valor de variável. Enquanto o usuário não
digitar o valor -1, o programa continuamente solicita o valor de 𝑋 e calcula o valor do polinômio.

16. Faça um programa que leia um vetor de temperatura e calcule o vetor de pressão de vapor de
um componente 𝑖, 𝑃 , a uma dada temperatura (𝑇), utilizando a expressão de Antoine:
𝐴
ln 𝑃 =
+𝐵
𝑇
onde 𝐴 e 𝐵 são parâmetros do componente 𝑖. Considere 𝐴 = −3848.1, 𝐵 = 17532.

17. Faça um programa que leia o nome de três times (Bahia, Vitória e Flamengo) e imprima uma
tabela de jogos entre esses três times, lembrando que um mesmo time não pode jogar contra ele
mesmo. O algoritmo deve ler o nome dos três times e fazer combinações entre eles para imprimir
uma tabela semelhante a:
Bahia [ ]x[ ] Vitória
Bahia [ ] x [ ] Flamengo
Vitória [ ]x[ ] Bahia
Vitória [ ] x [ ] Flamengo
Flamengo [ ]x[ ] Bahia
Flamengo [ ]x[ ] Vitória
Dica: Inicialmente trabalhe apenas com um número para representar um time. Depois,
represente o time com a sua letra inicial, trabalhando com o tipo de dado char. Somente em
seguida, tente fazer o programa lendo o nome completo do time, já que isso exige que você
trabalhe com tipos de dados string.

18. Faça um programa que leia o gabarito de uma prova múltipla escolha com 5 questões e em
seguida leia a resposta de N alunos. O programa deve determinar a nota de cada aluno na prova,
sendo que cada questão vale 2,0 pontos, e a média da turma. Dica: inicie o programa trabalhando
com o gabarito em inteiro e só depois tente utilizar o tipo de dado char.
19. Faça um programa para reservar a cadeira no cinema. Considere a fileira B com 10 cadeiras.
Inicialmente o programa mostra as cadeiras vazias. O usuário deve solicitar a cadeira desejada e
o programa deve exibir novo mapa de reserva com um x na cadeira selecionada. Caso o usuário
escolha uma cadeira reservada, o programa deve avisar. Repetir até que o usuário deseje parar a
reserva.

20. Crie um algoritmo que leia dois conjuntos de números inteiros, tendo cada um 10 e 20 elementos
e apresente os elementos comuns aos conjuntos. Lembre-se de que os elementos podem se
repetir, mas não podem aparecer repetidos na saída.

21. A fábrica de Queijo Rio Novense deseja elaborar um algoritmo para controlar o estoque e as
vendas. Inicialmente, deverão ser lidos e armazenados em vetores: o código, a quantidade
disponível em estoque e o preço de venda dos produtos. O término do cadastramento é
determinado quando se digita -1 para o código do produto. Sabe-se que a Fábrica de Queijo Rio
Novense trabalha com no máximo 50 produtos diferentes.

A segunda fase do algoritmo é a venda. Deverá ser lido o código do produto a ser vendido e a
quantidade requerida. Se o código do produto estiver cadastrado, a venda poderá ser realizada;
caso contrário, a mensagem Produto Não-Cadastrado deverá ser exibida no monitor. Caso o
produto esteja disponível, a venda só poderá ser realizada se a quantidade disponível no estoque
for suficiente para atender ao pedido. Nesse caso, você deverá abater do estoque a quantidade
vendida. Se o estoque não for suficiente para atender ao pedido, a mensagem Estoque
Insuficiente deverá ser exibia no monitor. O final das vendas será detectado quando o código do
produto for igual à zero.

No final, deverá aparecer uma listagem no vídeo contendo o total vendido no dia e a relação de
todos os produtos do estoque, com suas respectivas quantidades, em ordem decrescente de
quantidades disponíveis.

Você também pode gostar