1. Dado um conjunto de valores inteiros e positivos num

Propaganda
1. Dado um conjunto de valores inteiros e positivos num arquivo, determinar a soma dos
dados:
Algoritmo Soma
var
valor, soma: inteiro;
Início
leia(valor);
Faça enquanto não for fim do arquivo
soma = soma + valor
leia(valor);
Fim-faça
escreva (soma);
Fim
2. Construir um algoritmo para calcular a média de um conjunto de valores inteiros e
positivos:
Algoritmo Media
var
valor, soma, quantidade: inteiro;
Início
leia (valor);
Faça enquanto não for fim do arquivo
soma = soma + valor;
quantidade = quantidade + 1;
leia(valor);
Fim-faça
media = soma / quantidade;
escreva (media);
Fim
3. Faça um algoritmo para gerar o valor H, considerando que o número N é um registro
único e lido do arquivo e que H é obtido usando a relação:
1 1 1 1
1
H= 1+ + + + + .. .+
2 3 4 5
n
Algoritmo GerarH
var
numero, baixo, H: inteiro;
Início
leia (numero);
Faça enquanto baixo < numero
baixo = baixo + 1;
H = H + (1 / baixo);
Fim-faça
escreva (H);
Fim
4. O valor aproximado do número π pode ser calculado usando-se a série:
1 1 1 1
+ − + −.. .
33 53 73 93
Sendo π = √3 S+ 32 , faça um algoritmo para um programa que calcule e imprima o valor de π
usando os 51 primeiros termos da série acima.
S= 1−
Algoritmo Calculo S
var
baixo, quantidadeParcelas, parcela, S: inteiro;
pi: real;
Início
baixo = 1;
quantidadeParcelas = 1;
Faça enquanto quantidadeParcelas <= 51
parcela = 1 / ( baixo ** 3 );
Se resto ( quantidadeParcelas / 2 ) = 0
parcela = parcela * ( -1 );
Fim-se;
S = S + parcela;
quantidadeParcelas = quantidadeParcelas + 1;
baixo = baixo + 2;
Fim-faça;
pi = ( S + 32 ) ** ( 1 / 3 );
escreva (pi);
Fim
5. A série de Fibonacci é formada pela seqüê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:
Algoritmo Fibonacci
var
termo1, termo2, termo, i: inteiro;
Início
escreva (“1”);
termo1 = 1;
termo2 = 0;
Para ( i = 1 ; i > 19 ; i = i + 1 )
termo = termo1 + termo2;
escreva (termo);
termo2 = termo1;
termo1 = termo;
Fim-para;
Fim
6. Uma companhia telefônica está interessada em saber qual foi o maior número de
impulsos no mês e quantos assinantes atingiram esse valor. Os resultados devem fornecer o
maior número de impulsos do mês e o número de assinantes que atingiram este valor:
Algoritmo QdeImpulsos
var
impulso, maiorImpulso, qde: inteiro;
Início
leia (impulso);
maiorImpulso = impulso;
qde = 1;
Faça enquanto não for fim do arquivo
Se impulso >= maiorImpulso
maiorImpulso = impulso;
qde = qde + 1;
Fim-se;
leia (impulso);
Fim-faça;
Fim
1. Dada a definição de MDC: “dados dois números inteiros a e b não nulos, define-se o
Máximo Divisor Comum(MDC) como sendo o maior inteiro que divide simultaneamente a
e b”. Faça um algoritmo que leia dois números e descubra o MDC:
Algoritmo Mdc
var
num1, num2, i, auxiliarMdc, mdc : inteiro;
Início
escreva (“Digite o primeiro número”);
leia (num1);
escreva (“Digite o segundo número”);
leia (num2);
mdc = 1;
Se num1 > num2
num= num2;
Senão
num = num1
Fim-se
Para ( i = 1 ; i > num ; i = i + 1 )
Se resto ( num1 / i ) = 0;
e resto ( num2 / i ) = 0;
auxiliarMdc = i;
mdc = auxiliarMdc * mdc;
Fim-se;
Fim-para;
escreva (mdc);
Fim
2. Dada a definição de MMC: “dados dois números inteiros a e b não nulos, define-se o
Mínimo Múltiplo Comum(MMC) como sendo o menor inteiro positivo, múltiplo comum de
a e b. Faça um algoritmo que leia dois números e encontre o MMC:
Algoritmo Mmc
var
num1, num2, i, mmc : inteiro;
Início
escreva (“Digite o primeiro número”);
leia (num1);
escreva (“Digite o segundo número”);
leia (num2);
mmc = num1 * num2;
Para (i = 1; i > num2; i = i + 1)
se resto (num1 * i / num1) = 0 e resto (num1 * i / num2) = 0 e (num1 * i) < mmc
mmc = num1 * i;
Fim-se;
Fim-para;
escreva ("O MMC entre: ", num1 ," e ", num2 ," é: " , mmc);
Fim
Download