Buscar

lista de exercícios 2

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

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
Você viu 3, do total de 5 páginas

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

COMPUTAÇÃO I 
 
 Lista de Exercícios – Laços de Repetição 
1. Implemente o programa abaixo e responda às questões a seguir. 
#include<stdio.h> 
int main(void) 
{ 
 int n; 
 printf(“n: “); 
 scanf(“%d”, &n); 
 while(n > 0) 
{ 
 printf(“%d “, n); 
 n = n - 1; 
} 
return 0; 
} 
a) execute o programa e escolha um valor maior que 3 para n. O que o programa faz? 
b) substitua a linha 
 
n = n – 1; 
 por 
 n = n+1; 
 compile e execute o programa modificado. Diga o que aconteceu. Justifique o comportamento 
do algoritmo. 
 
c) volte o programa à versão original e remova as chaves do while. Compile e execute. O que 
aconteceu? Justifique o comportamento do algoritmo. 
 
 
 
2. Implemente o programa abaixo e responda às questões a seguir. 
#include<stdio.h> 
int main(void) 
{ 
 int i, n; 
 printf(“n: “); 
 scanf(“%d”, &n); 
 i =2; 
while(i <=2*n) 
{ 
 printf(“%d “, i); 
 i= i+2; 
} 
return 0; 
} 
a) execute o programa e escolha um valor maior que 10 para n. O que o programa faz? 
b) substitua a condição 
 
i < = 2*n; 
 por 
 i > =2*n; 
 compile e execute o programa modificado. Diga o que aconteceu. Justifique o comportamento 
do algoritmo. 
 
c) volte o programa à versão original e substitua o comando 
 
i = i +2; 
 
 por 
 
i++; 
 
Compile e execute. O que aconteceu? O que o comando i++; faz? 
 
E se você usar 
 
i--; 
 
o que vai acontecer? 
 
 
Definição. Um valor inteiro positivo N é chamado de quadrado perfeito se existir uma sequência 
de ímpares consecutivos a partir do valor 1 cuja soma seja exatamente igual a N. Exemplo: para o 
valor 16 temos 16 = 1 + 3 + 5 + 7. Assim sendo 16 é um quadrado perfeito. 
 
 
Propriedade. Um quadrado perfeito tem a seguinte propriedade: o número de termos ímpares 
consecutivos a partir do valor 1 cuja soma é igual ao quadrado perfeito corresponde à raiz 
quadrada do quadrado perfeito. No exemplo acima, para N = 16, a quantidade de ímpares 
consecutivos somados a partir do 1 é igual a 4, o que corresponde à raiz quadrada de 16. 
 
3. Faça um programa que calcule a soma dos M primeiros números ímpares (usar laço), onde a 
quantidade M deve ser digitada pelo usuário. 
 
4. Faça um programa que verifique se um valor inteiro N é um quadrado perfeito, considerando a 
definição apresentada. Em caso afirmativo, determine o valor de sua raiz quadrada de acordo com 
a propriedade descrita. Nesse exercício, não é permitido o uso do comando “sqrt()”. 
 
 
Definição. Um número é primo se é divisível somente por 1 e por ele mesmo. 
 
 
5. Escreva um programa que verifica se um número, maior ou igual a 1, digitado pelo usuário é primo 
ou não. 
 
Exemplo: 
 
Digite um numero: 5 
5 eh primo. 
 
6. Altere o programa do exercício 5 para que o mesmo verifique mais que um número digitado pelo 
usuário. O programa só deve parar de pedir novos números quando o usuário digitar 0. 
 
Exemplo: 
 
Digite um numero: 5 
5 eh primo. 
Digite outro numero: 4 
4 nao eh primo. 
Digite outro numero: 127 
127 eh primo. 
Digite outro numero: 0 
Ate mais! 
 
7. Você esta fazendo uma pesquisa entre os habitantes de uma pequena vila. Escreva um 
programa que colete os dados de idade, sexo (M/F) e salário de todas as pessoas que 
desejam participar da pesquisa (para encerrar a entrada de dados, digite a idade igual a 0 
Após coletar todos os dados informe: 
 
a. A média de salário do grupo 
b. Maior e menor idade do grupo 
c. A percentagem do total de mulheres com salário até R$ 300,00 
d. A quantidade de homens e de mulheres 
 
8. Escreva um programa que mostra x, y as posições de um objeto solto no instante t = 0 de 
uma altura h e com velocidade v. As posições devem ser mostradas para cada segundo 
até que o objeto atinja o solo ou, em outras palavras, atinja a altura y = 0. A altura h e a 
velocidade v, são dados pelo usuário. Considere que x = 0 e y = h no início. Lembre-se y 
= h−gt²/2 e x = v*t. Considere g = 9.8; O programa deve se comportar como no exemplo 
abaixo: 
 
Digite v, h, d: 2 20 0.25 
t: 0.00 x: 0.0 y: 20.0 
t: 0.25 x: 0.5 y: 19.7 
t: 0.50 x: 1.0 y: 18.8 
t: 0.75 x: 1.5 y: 17.2 
t: 1.00 x: 2.0 y: 15.1 
t: 1.25 x: 2.5 y: 12.3 
t: 1.50 x: 3.0 y: 9.0 
t: 1.75 x: 3.5 y: 5.0 
t: 2.00 x: 4.0 y: 0.4 
 
9. Modifique o programa do exercício 8 para permitir que o usuário substitua o intervalo de 
tempo de 1 segundo por uma quantidade d de segundos que desejar. 
 
 
 
 
 
10. Use o comando while para mostrar uma pirâmide semelhante à abaixo. O valor de n 
(maior valor da pirâmide) é definido pelo usuário. 
n = 9 
9 8 7 6 5 4 3 2 1 
8 7 6 5 4 3 2 1 
7 6 5 4 3 2 1 
6 5 4 3 2 1 
5 4 3 2 1 
4 3 2 1 
3 2 1 
2 1 
1 
 
11. Faça um programa que calcula o valor de xy, onde x e y são números inteiros digitados 
pelo usuário. Considere que x e y são positivos. 
 
12. Altere o programa do exercício 11 para que também funcione se x e/ou y tiver valor zero 
ou negativo. 
 
13. Faça um programa que mostra as n primeiras potências positivas de 2, sendo que n é 
dado pelo usuário. As potências positivas de 2 são: 1, 2, 4, 8, ..., isto é, 20, 2¹, 2², 2³, .... 
 
Exemplo: 
 
Digite a quantidade de potencias que deseja: 5 
1 2 4 8 16

Outros materiais