Exercicios Programação - Repetição
Por: Vinicius Gasparini • 11/4/2016 • Trabalho acadêmico • 1.127 Palavras (5 Páginas) • 883 Visualizações
Algoritmos e Programação
Lista de exercícios sobre estrutura de repetição
1 – Dado o algoritmo a seguir, responda:
início
inteiro: A, B, I, J;
leia(A);
faça
para (I de 1 até A) faça[pic 1]
J=I;[pic 2]
enquanto (J <= A) faça
escreva (J);[pic 3]
J=J + 1;
fimenquanto;
fimpara;
B=A;
leia (A);
enquanto ((A <> B) ou (A >= 0));
fim.
- O que será mostrado se forem fornecidos os números 4 e 0 ?
- “1 2 3 4”
b) O que será mostrado se forem fornecidos os números 3, 2 e 2?
- “1 2 3 1 2 1 2”
c) O que será mostrado se forem fornecidos os números 2, 1 e 0?
- “1 2 1”
d) O que será mostrado se forem fornecidos os números 1 e 0?
- “1”
2 – Sendo H = 1 + 1/2 +1/3 +1/4 + ... + 1/N, escreva um algoritmo para gerar o número H. O número N é fornecido pelo usuário.
início
inteiro: h, n, i, num, fracao;
leia(n);
para (i de 1 até n) faça
num=i;[pic 4]
h=0;
enquanto (num <= n) faça
fracao=1/num[pic 5]
h=h + fracao;
fimenquanto;
fimpara;
escreva (h);
fim.
3 – Elabore um algoritmo que calcule N! (fatorial de N), sendo que o valor inteiro de N é fornecido pelo usuário.
Sabendo que:
- N! = 1 * 2 * 3 * ...* (N – 1) * N;
- 0! = 1, por definição.
início
inteiro: f, n, i, num;
leia(n);
se (n==0)
Escreva(“1”);
senao
f=1;
para (i de 1 até n) faça
num=i;[pic 6]
f=f*num;
fimpara;
escreva (f);
fimse
fim.
4 – A série de Fibonacci é formada pela seguinte sequência: 1, 1, 2, 3, 5, 8, 13, 21, 34, 55, ... etc. Escreva um algoritmo que gere a série de Fibonacci até o vigésimo termo.
início
inteiro: a,b,c,i;
a=1;
b=0;
escreva (“1”);
para (i de 1 até 20) faça
c=a+b[pic 7]
b=a
a=c
escreva (c);
fimpara;
fim.
5 – Construa um algoritmo que verifique se um número inteiro maior que zero, fornecido pelo usuário, é primo ou não.
início
inteiro: numero, numdivisores, d;
real: raiz,
Escreva “Escreva um numero inteiro maior que zero.”);
Leia(numero)
se(numero <= 0)
Escreva("Por definição só há primos de números Naturais");
senao
se (numero == 1)
Escreva ("Por definição 1 não é número primo!");
senao
numdivisores = 0;
raiz = sqrt(numero);
enquanto (d = 2; numdivisores==0 e d<>raiz; d++);
se(numero % d == 0)
numdivisores++;
fimse
fimenquanto
fimse
se (numdivisores > 0)
Escreva ("Não é número primo");
senao
Escreva ("É número primo");
fimse
fimse
fim
6 – Escreva um algoritmo para calcular o valor S da série abaixo:
S = 1/1 + 2/3 + 3/5 + 4/7 + 5/9 + ... + n/m.
A saída do algoritmo deve ser o valor de S para um n fornecido pelo usuário.
início
inteiro: n, d, s, a;
leia(a);
se (a<=0)
Escreva(“Valor invalido”);
senao
n=1;
d=1;
s=0;
para (i de 1 até a) faça[pic 8]
div=n/d;
s=s+div;
n++;
d=b+2;
fimpara;
escreva (s);
fimse
fim.
7 – Em uma eleição presidencial existem três candidatos. Os votos são informados por código. Os dados utilizados para a escrutinagem obedecem a seguinte codificação:
- 1, 2, 3 = votos para os respectivos candidatos;
- 4 = voto nulo;
- 5 = voto em branco.
Escreva um algoritmo que calcule e mostre ao usuário as seguintes informações:
- O total de votos para cada candidato;
- O total de votos nulos;
- O total de votos em branco.
Como finalizador do conjunto de votos, tem-se o valor 0 (zero).
inicio
inteiro: opc, c1, c2, c3, c4, c5, t1, t2, t3, t4, t5; i, v;
para (i=1;i<>0;i=i+1);
...