• Nenhum resultado encontrado

Lista6

N/A
N/A
Protected

Academic year: 2021

Share "Lista6"

Copied!
7
0
0

Texto

(1)

6ª LISTA DE EXERCÍCIOS VETORES E MATRIZES

Disciplina: PC-I

Exercício 1: Os coeficientes de um polinômio de grau n podem ser armazenados

em um vetor v de n+1 posições tal como dado na Figura 1:

n nx c x c x c x c x p = + + 2 +L 2 1 1 0 0 ) ( → c0 c1 c2 ••• cn v[0] v[1] v[2] ••• v[n]

Figura 1: Armazenando os coeficientes de um polinômio em um vetor.

Criar um trecho de código que seja capaz de:

(A) Armazenar os valores dos coeficientes de um polinômio de grau n. (B) Calcular o valor do polinômio para um dado valor x*.

(C) Fornecer o valor do polinômio para m valores xi armazenados em um outro

vetor x=

[

x0 x1 L xm

]

.

Exercício 2: O cálculo de um polinômio n

nx c x c x c x c x p = + + 2 +L 2 1 1 0 0 ) ( em um

dado ponto x pode ser realizado de forma mais eficiente se for utilizada a forma dos parênteses encaixados ou algoritmo de Horner. Neste caso, reescreve-se o polinômio tal como:

n nx c x c x c x c x p = + + 2+L 2 1 1 0 0 ) ( → ) ( ( ) (x c0 x c1 x c2 xcn p = + + +L

Criar um trecho de código que calcula um polinômio em um ponto x pelo algoritmo de Horner (os valores dos coeficientes do polinômio estão armazenados em um vetor tal como ilustrado na Figura 1).

(2)

Exercício 3: Para determinar o volume φ [hm3] de água contido em uma usina hidrelétrica a partir da altura x [m] do reservatório deve-se usar um polinômio cota por volume tal como dado na Figura 2.

Figura 2: Dados de uma usina hidrelétrica.

Sejam os polinômios cota por volume das usinas da Tabela 1 e os valores de altura do reservatório da Tabela 2, construir um programa que calcule, utilizando a forma de Horner, os volumes de cada usina para cada valor de altura do reservatório.

Usina Coeficientes do Polinômio (Cota [m] x Volume [hm3])

c0 c1 c2 c3 c4

Furnas 736 3,19x10-3 -1,6x10-7 5,07x10-12 -6,50x10-17

Emborcação 568 1,45x10-2 -1,2x10-6 5,83x10-11 -1,12x10-15

Ilha Solteira 293 3,60x10-3 -1,8x10-7 5,87x10-12 -7,50x10-17

Água Vermelha 350 5,50x10-3 -3,3x10-7 9,47x10-12 0,00x10-17

Tabela 1: Coeficientes dos polinômios cota por volume para 4 usinas hidrelétricas.

Usina Altura [m]

Furnas 20

Emborcação 15

Ilha Solteira 18 Água Vermelha 30

(3)

Exercício 4: Vetores de caracteres podem ser utilizados para representar cadeias

de DNA. As quatro bases encontradas em um DNA são: Adenina (A), Citosina (C), Guanina (G) e Timina (T). Dada as seqüências da Tabela 3, construir um programa que forneça quais as seqüências em que a Adenina aparece mais de 4 vezes.

Seqüência Bases

DNA 1 A T G C A A C T A

DNA 2 G G C C A A T A T

DNA 3 C A A T G C C A C

DNA 4 T T G C C C T T C

Tabela 3: Seqüências de DNA.

Exercício 5: Generalize o programa do Exercício 4 e construa um programa que

indica para quais seqüências da Tabela 3 uma base selecionada pelo usuário (A, T, G, C) aparece mais de n vezes (n é fornecido pelo usuário).

Exercício 6: Diz-se que uma dada seqüência de DNA possui um certo grau de

similaridade de acordo com o número de bases que aparecem na mesma ordem. Por exemplo, dadas as duas seqüências da Figura 3 possuem similaridade 3.

Sequência Bases DNA 1 A T C G T C ↔ ↔ ↔ ↔ ↔ ↔ DNA 2 A C T G T T = = = = = = Similar 1 0 0 1 1 0

Figura 3: Comparação entre duas seqüências de DNA.

Construir um programa que forneça os valores de similaridade entre as seqüências de DNA da Tabela 3, tal que preenche os valores faltantes da Tabela 4.

DNA 1 DNA 2 DNA 3 DNA 4

DNA 1 9 a12 a13 a14

DNA 2 a21 9 a23 a24

DNA 3 a31 a32 9 a34

DNA 4 a41 a42 a43 9

Tabela 4: Informações acerca da similaridade entre as seqüências da Tabela 3.

Exercício 7: Refazer o programa do Exercício 6 e fornecer uma tabela similar a

Tabela 4, mas cujos elementos são os valores do percentual de similaridade entre as seqüências. Ou seja, os elementos da diagonal principal da Tabela 4 seriam substituídos do valor 9 para o valor 100%, por exemplo.

(4)

Exercício 8: Dados dois vetores v e t de dimensão n, construir um programa que

calcula, e depois armazena o produto externo de v por t uma matriz A, tal como descrito na Equação 1. Mostre a matriz A obtida.

[

]

{ 14444424L44443 M O M M L L M 4 4 3 4 4 2 1 L A n n n n n n T n v n t v t v t v t v t v t v t v t v t v t t t v v v             =             * * * * * * * * * * 2 1 2 2 2 1 2 1 2 1 1 1 2 1 2 1 (1)

Exercício 9: Um caractere pode ser digitalizado, bastando que uma grade seja

aplicada a sua imagem. Depois, para cada área da grade por onde passe a linha correspondente ao desenho do caractere é associado o valor 1. Se a linha não passar por aquela área é associado o valor 0. O esquema de transformação é dado na Figura 4.

Figura 4: Esquema de digitalização e armazenamento de um caractere.

Supondo que as matrizes tenham dimensão 8 x 8, construir um programa que: (A) Gera aleatoriamente os valores das duas matrizes 8 x 8.

(B) Imprime a letra associa a cada matriz 8 x 8 (para tanto, você só deve imprimir os elementos cujos valores são 1).

(C) Calcula a similaridade entre as duas matrizes aleatórias.

Exercício 10: Refazer o Exercício 8, mas comparar as duas matrizes geradas

aleatoriamente com a matriz associada a letra A (a matriz correspondente a letra A está descrita na Figura 4). A comparação deve ser realizada de modo a determinar qual o grau de similaridade entre os padrões aleatórios e o padrão da letra A da Figura 4. Se a similaridade for maior que 90%, o programa deve fornecer uma mensagem dizendo que o padrão aleatório é a letra A.

Exercício 11: Construir um trecho de código que realize a soma de duas matrizes

A e B, e armazena o resultado em uma matriz C.

Exercício 12: Construir um trecho de código que realize a multiplicação de uma

(5)

Exercício 14: A cadeia de Markov é um processo estocástico discreto e que

possui a propriedade de que os estados anteriores são irrelevantes para a predição dos estados seguintes, desde que o estado atual seja conhecido (essa propriedade é também de propriedade Markoviana). Uma cadeia de Markov é uma seqüência X1, X2, ..., Xn de variáveis aleatórias e o conjunto de valores que elas podem

assumir é denominado de espaço de estados. A transição de um estado para outro pode ser representado por uma matriz denominada de matriz de transição M tal que Mij é a probabilidade de que um evento no estado Xi passe para o estado Xj.

Em uma fábrica foram mapeados 3 possíveis estados para uma máquina em uma semana e as descrições dos estados e das probabilidades de transição entre eles estão descritas nas Tabelas 5 e 6.

Estado Descrição

1 Operação Normal.

2 Operação a 50% da capacidade. 3 Sem operação.

Tabela 5: Informações do possíveis estados de uma máquina.

Estado 1 2 3

1 75% 20% 5%

2 0% 75% 25%

3 0 0 100%

Tabela 6: Informações das probabilidades de transição dos estados da máquina.

A partir da Tabela 6 é possível gerar uma matriz A de probabilidade de transição e a partir dela pode-se saber a probabilidade de ocorrência de determinado evento em uma semana. Por exemplo, na primeira semana, dado que a máquina esta funcionando adequadamente (Estado 1) a probabilidade de que ela passe a operar a 50% da capacidade é de 20% (Estado 2), e a probabilidade de que ela pare é de 5% (Estado 3). Para saber o valor dessas probabilidades na segunda semana é necessário empregar: A2=A*A. De forma geral, para conhecer as probabilidades de transição para n semanas deve-se calcular o valor de An.

Deseja-se construir um programa que:

(A) Permita a inserção dos dados da matriz A pelo usuário.

(B) Calcule a nova matriz de probabilidades de transição para a segunda semana, ou seja, calcular A2=A*A.

(C) Utilizando seu programa verifique a partir de que semana a probabilidade de funcionamento sem problemas (Estado 1), dado que ela está no Estado 1, é menor que 40%.

(6)

Exercício 15: Construir um programa que simule um Jogo da velha, cumprindo os

seguintes requisitos:

(a) Permitir movimentos alternados de dois jogadores A e B. (b) Identificar se um movimento pode ser realizado ou não.

(c) Identificar o término de um jogo, indicando as 3 possíveis situações: (1) A

ganhou, (2) B ganhou, (3) Empate.

(d) Construir um tabuleiro que permita a representação das jogadas tal como dado

na Figura 5.

Figura 5: Representação das jogadas do Jogo da Velha em Tabuleiro.

Exercício 16: Modificar o programa do Exercício 14 para não permitir que o

usuário realize jogadas cujas coordenadas excedam os limites da matriz de caracteres tal como: 3 5 (que significa realizar jogada na quarta linha e quinta coluna, ambas inexistentes).

Exercício 17: Construir um programa que simule o jogo Yucky Choccy, cumprindo

os seguintes requisitos:

(a) Permitir movimentos alternados de dois jogadores A e B. (b) Identificar se um movimento pode ser realizado ou não.

(c) Identificar o término de um jogo, indicando as 2 possíveis situações: (1) A

ganhou, (2) B ganhou.

(d) Construir um tabuleiro que permita a representação das jogadas tal como dado

na Figura 6.

(7)

Exercício 18: Construir um programa que simule o controle de um avião em um

ambiente e que verifique se o avião atingiu o seu objetivo ou se colidiu com um obstáculo a cada par de coordenadas de movimento fornecido pelo usuário. Utilize o ambiente tal como descrito na Figura 7.

Referências

Documentos relacionados

Tendo como parâmetros para análise dos dados, a comparação entre monta natural (MN) e inseminação artificial (IA) em relação ao número de concepções e

Após 96 horas, houve um aumento no consumo, com o aumento de 100 para 160 ninfas, que não diferiu significativamente da densidade 220; com 280 ninfas disponíveis houve um

(2019) Pretendemos continuar a estudar esses dados com a coordenação de área de matemática da Secretaria Municipal de Educação e, estender a pesquisa aos estudantes do Ensino Médio

Quando contratados, conforme valores dispostos no Anexo I, converter dados para uso pelos aplicativos, instalar os aplicativos objeto deste contrato, treinar os servidores

Quando Goffman (1985) fala em palco e cenário, atores e platéia, papéis e rotinas de representação, necessidade, habilidades e estratégias dramatúrgicas,

Pontes (2009) trabalhando com reator combinado de leito fixo e escoamento ascendente, utilizando argila expandida e espuma de poliuretano para imobilização da

Uma maneira viável para compreender uma reação química é através da conservação das massas, isso porque numa abordagem mais ampla, como demonstra no livro

Mesmo com suas ativas participações na luta política, as mulheres militantes carregavam consigo o signo do preconceito existente para com elas por parte não somente dos militares,