• Nenhum resultado encontrado

Faculdade de Computação

N/A
N/A
Protected

Academic year: 2022

Share "Faculdade de Computação"

Copied!
5
0
0

Texto

(1)

Faculdade de Computação

Algoritmos e Programação de Computadores 2a Lista de Exercícios p/ Avaliação

Prof. Cláudio C. Rodrigues

Instruções:

1. Apresentar um relatório de soluções com os seguintes artefatos: codificação em linguagem C;

2. O trabalho deve possuir uma capa, com identificação da disciplina, nome do estudante, número de matrícula e e-mail.

3. O trabalho deve ser desenvolvido em grupo de 1 até 3 estudantes e qualquer identificação de plágio sofrerá penalização;

4. Entregar um CD com as soluções, impreterivelmente, no dia 17/01/2014.

Problemas:

P1) Assumindo que c e d são variáveis do tipo caractere (char) cujo valor é um dígito (’0’,. . . , 9’), e n um inteiro entre 0 e 9, escreva em linguagem C expressões cujo resultado seja:

a) o número inteiro correspondente ao caractere c;

b) o caractere correspondente ao inteiro (dígito) n;

c) o número inteiro obtido por justaposição dos caracteres c e d (exemplo: se c =’2’ e d=’5’ o resultado deverá ser o inteiro 25).

P2) Assumindo que c é uma variável do tipo caractere (char) cujo valor é uma letra minúscula, e n um inteiro entre 1 e 26, escreva em linguagem C expressões cujo resultado seja:

a) a letra maiúscula correspondente a c;

b) a n-ésima letra minúscula do alfabeto (obs: ’a’ é a primeira letra, ’b’ a segunda...);

c) a posição de c no alfabeto (obs: ’a’ está na posição 1 do alfabeto, ’b’ na posição 2...);

d) verdadeiro se c for uma consoante e falso caso contrário (consideramos vogais apenas as letras ’a’, ’e’, ’i’, ’o’ e ’u’).

P3) Escreva um programa em linguagem C que realiza a Sequência de Fibonnacci, onde dado n, calcula Fn. A sequência de Fibonnacci se define os dois primeiros termos e cada termo seguinte é igual à soma dos dois termos imediatamente anteriores. O n-ésimo número da sequência de Fibonnacci Fn é dado pela seguinte fórmula de recorrência descrita abaixo:

Os primeiros números de Fibonnacci são 0, 1, 1, 2, 3, 5, 8, 13, 21, 34, 55, ...

P4) Escreva um programa em linguagem C que leia do dispositivo padrão de entrada (teclado) dois números naturais e calcula o maior divisor comum (mdc), usando o Algoritmo de Euclides. Abaixo, apresentamos a descrição do algoritmo:

Obtendo o mdc entre dois números naturais X e Y onde X > Y.

Divida X por Y e obtenha o resto R1. Se R1 for zero, o mdc entre X e Y é Y.

Se R1 não for zero, divida Y por R1 e obtenha o resto R2. Se R2 for zero, o mdc entre X e Y é R1

Se R2 não for zero, divida R1 por R2 e obtenha o resto R3. Se R3 for zero, o mdc entre X e Y é R2

...

(2)

P5) Escreva um programa em linguagem C para conversão de base numérica. O programa deverá apresentar uma tela de entrada com as seguintes opções:

< Conversao de base >

1: decimal para hexadecimal 2: hexadecimal para decimal 3: decimal para octal

4: octal para decimal 5: Encerra

Informe sua opcao:

A partir da opção escolhida, o programa deverá pedir o número na base escolhida, lê-lo e apresentá-lo na base desejada. Em seguida, o programa deve perguntar ao usuário se ele deseja retornar ao menu principal ou finalizar o programa. O problema pode ser estendido a outras bases, de acordo com o interesse do aluno.

OBS: existem duas formas de implementar o programa, uma mais simples e outra mais complicada: na mais simples, podem ser utilizados os caracteres de formatação de leitura no scanf e de escrita no printf; na mais complicada, você deverá fazer as operações matemáticas para conversão.

P6) A lei de Coulomb determina a intensidade da força exercida entre duas cargas pontuais, q1 e q2, separadas por uma distância d:

onde K (= 9×109 (Nm2/C2), no vácuo) é uma constante que depende do meio, q1 e q2 são as cargas elétricas em Coulomb (C) e F é a força em Newton (N). Se as cargas possuírem sinais contrários a força é atrativa, senão é repulsiva.

Escreva um programa em linguagem C que leia o valor das duas cargas, q1 e q2 e calcula o valor da força F e informe se esta é atrativa ou repulsiva. As cargas estão localizadas em pontos do espaço definido pelas coordenadas (x,y,z). Para determinar a distância entre as cargas utilize a fórmula: d = sqrt((x2 - x1 ) + ( y2 - y1 ) + (z2 - z1 ) .

P7) Escreva um programa em linguagem C, que imprima na tela uma moldura de ‘*’. A figura abaixo mostra um exemplo de moldura para as dimensões (4, 6) – 4 asteriscos de largura por 6 asteriscos de altura. As dimensões da moldura devem ser informadas pelo usuário e o algoritmo deve se adaptar as escolhas do usuário.

Exemplo: moldura 4 x 6

****

* *

* *

* *

* *

****

P8) Escreva um programa em linguagem C que escreva no dispositivo padrão de saída (tela) a figura de um losango, como mostrado na figura abaixo.

* * * * *

* * * * * * *

(3)

P9) Escreva um programa em linguagem C que construa uma pirâmide de números conforme ilustrado na figura abaixo. O programa deve ler do usuário a informação da altura da pirâmide h. Por exemplo, para uma altura h=5 a pirâmide deve ser construída como na figura abaixo (automatize o algoritmo):

1 1 2 1 1 2 3 2 1 1 2 3 4 3 2 1 1 2 3 4 5 4 3 2 1

P10) Escreva um programa em linguagem C, denominado TapeteAlpha, que receba como entrada o número (inteiro) de caracteres a ser impresso no formato de moldura. A moldura de caracteres deve ter a forma do exemplo abaixo.

Exemplo:

>Numero de caracteres: 3

>Saída:

AAAAAA ABBBBA ABCCBA ABCCBA ABBBBA AAAAAA

P11) No jogo de Vinte e Um (blackjack), as cartas de 2 a 10 são contadas com seus valores nominais, independentemente do naipe. As cartas com figuras (valete, dama e rei) são contadas como 10 e o ás é contado como 1 ou como 11, dependendo da contagem total de pontos na mão do jogador. O ás é contado como 11 somente se o valor resultante total das cartas na mão do jogador não exceder 21, senão é contado como 1. Usando esta informação, escreva um programa em linguagem C para receber o valor de três cartas como entrada (1 correspondendo ao ás, 2 correspondendo ao 2, e assim por diante), calcule o valor total da mão de forma apropriada e mostre o este valor com uma mensagem impressa.

P12) Escreva um programa em linguagem C que imprima a tabela de conversão de polegadas para centímetros. Deseja-se que na tabela constem valores dede 1 polegada até 20 polegadas (lembrando que 1 polegada equivale a 2,54 centímetros).

P13) Pretende-se construir uma chaminé cilíndrica de concreto de altura h, raio do interior Ri e raio do exterior Re. O volume V de concreto necessário é dado por:

Na empresa do Sr. Joaquim o m3 do concreto custa R$ 25,00, se o total de concreto comprado for inferior a 5m3 e R$ 20,00 se o total comprado for superior ou igual a 5m3. Na empresa do Sr. Manuel o m3 do concreto custa R$ 30,00 se o total comprado for inferior a 10m3 e R$ 15,00 se o total comprado for superior ou igual a 10m3.

Escreva um programa em linguagem C que leia h, Ri e Re e que indique a qual das empresas é mais vantajoso comprar e o total a pagar.

P14) Escreva um programa em C para encontrar a soma dos 100 primeiros termos da série:

(4)

P15) Os seguintes dados foram coletados em uma recente viagem de automóvel.

Quilometragem Litros

Início da viagem: 22495 Tanque cheio

22841 36,6

23185 33,9

23400 31,5

23772 33,0

24055 36,6

24434 44,1

24804 42,9

25276 45,6

a) Escreva um programa em C que receba a quilometragem e o consumo em litros e calcule o consumo médio por quilômetro de cada segmento da viagem. O

consumo médio é obtido com a diferença de quilometragem entre dois abastecimentos, dividindo-a pelo número de litros do último abastecimento.

b) Modifique o programa do item a para também calcular e mostrar o consumo médio cumulativo ao final de cada trecho (a cada abastecimento). O consumo médio cumulativo é calculado com a diferença entre a quilometragem de um abastecimento e a quilometragem do início da viagem, dividindo-a pela soma dos litros de todos os abastecimentos até então.

P16) Imprimir uma tabela de senos e cossenos dos valores de x pertence [0 , pi/2[ com intervalos de 0.01 radianos.

Saída:

x sin(x) cos(x) 0.00 0.0000 1.0000 0.01 0.0100 1.0000 0.02 0.0200 0.9998 0.03 0.0300 0.9996 0.04 0.0400 0.9992 0.05 0.0500 0.9988 0.06 0.0600 0.9982 P17) Sabendo que

Escreva um programa em linguagem C que calcule uma aproximação a constante , somando os termos da série acima até que seu valor absoluto seja < 0.00001.

P18) Escreva um programa em linguagem C, denominado senox.c, que calcula o seno de x. A sua função apenas deverá calcular os primeiros 10 termos, isto é, até ao termo x19/19!. O seno de x pode ser calculado utilizando a expansão da série de Taylor:

O elemento x da série de Taylor deve ser em radianos. Portanto, o programa senox.c deve ler o valor do ângulo em graus e converter para radianos. Para realizar a conversão utilize a regra de três, considerando que PI radianos é igual a 180 e que a constante PI assume valor de 3.141592

(5)

P19) Escreva um programa em linguagem C, denominado cosex.c, que calcula o cosseno de x.

A sua função apenas deverá calcular os primeiros 10 termos, isto é, até ao termo x20/20!.

O cosseno de x pode ser calculado utilizando a expansão da série de Taylor:

O elemento x da série de Taylor deve ser em radianos. Portanto, o programa cosex.c deve ler o valor do ângulo em graus e converter para radianos. Para realizar a conversão utilize a regra de três, considerando que PI radianos é igual a 180 e que a constante PI assume valor de 3.141592 P20) Calcular ex por desenvolvimento em Série de Taylor desprezando termos, em grandeza,

inferiores a 10-7.

Análise Infinitesimal:

1

Referências

Documentos relacionados

O menor espaço ocupado pelo V-Cone, que precisa de até 70% menos de tubulação reta sem ser afetado por equipamentos que perturbam a vazão a montante e a jusante, é mais compacto do

São trabalhos em sítios específicos, conhecidos e sondados anteriormente à produção de imagens, estas, foram produzidas em ateliê através da análise das fotografias

Dessa forma, objetivou-se investigar o conhecimento, percepção e consciência ambiental dos alunos e professores da Escola Municipal Avani Cargninelutti Sehlauer e

Quando os nascimentos forem de transferências de embriões, o símbolo TE deverá aparecer no final do nome e o total de caracteres também será 25 (vinte e cinco). Coluna

No entanto, maiores lucros com publicidade e um crescimento no uso da plataforma em smartphones e tablets não serão suficientes para o mercado se a maior rede social do mundo

O valor da reputação dos pseudônimos é igual a 0,8 devido aos fal- sos positivos do mecanismo auxiliar, que acabam por fazer com que a reputação mesmo dos usuários que enviam

Então se esse requisito obrigatório não for legível, abre um leque de probabilidades para uma interpretação errada do profissional, podendo acarretar graves danos à saúde

Os casos não previstos neste regulamento serão resolvidos em primeira instância pela coorde- nação do Prêmio Morena de Criação Publicitária e, em segunda instância, pelo