Buscar

Ex04 pc pascal

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

Programação de Computadores 
Prof. Eduardo Chaves Faria 
4
o
 Exercício 
1. Quais valores serão impressos pelo programa correspondente ao algoritmo abaixo? 
Algoritmo 
função numérica Func( N ) 
 declare N numérico 
 Func ←←←← 0 
repita 
 se N = 0 então 
 interrompa 
 fim se 
 Func ←←←← (Func x 10) + Resto(N,10) 
 N ←←←← Quociente(N,10) 
fim repita 
 fim função 
declare X, Y numérico 
X ←←←← número formado pelos quatro últimos algarismos de sua matrícula 
Y ←←←← Func(X) + 1 
escreva Y 
fim algoritmo 
2. Dizemos que dois números são amigos se cada um deles é igual a soma dos divisores próprios do 
outro. Os divisores próprios de um número positivo N são todos os divisores inteiros positivos de N, 
exceto o próprio N. 
Um exemplo de números amigos são 284 e 220, pois: 
- a soma dos divisores próprios de 220 é igual a 284 ( 1+2+4+5+10+11+20+22+44 +55+110 = 284 ) 
- a soma dos divisores próprios de 284 é igual a 220 ( 1+2+4+71+142 = 220 ) 
Construir um algoritmo para um programa que determine e escreva os números amigos 
compreendidos entre 1 e 1.000.000. Utilize uma função para calcular a soma dos divisores próprios 
de um número inteiro positivo. 
3. Fazer um algoritmo para um programa que escreva todos os números abundantes compreendidos 
no intervalo [A,B], sendo A e B nos inteiros fornecidos na entrada. 
A verificação de que o número é abundante deverá ser feita por uma função. 
Um número inteiro positivo diz-se abundante, ou excessivo, se a soma de todos os seus divisores for 
maior que o dobro do número. Por exemplo, 12 é abundante, pois a soma de seus divisores 
(1+2+3+4+6+12) é igual a 28, e 28 é maior que 24 (2 x 12). 
4. Construir uma função verifique se um dado número inteiro positivo de 4 algarismos tem a seguinte 
propriedade: 
Seja n um nº de 4 dígitos; tome a soma do nº formado pelos dois primeiros 
algarismos de n com o nº formado pelos dois últimos algarismos de n; o 
quadrado desta soma é igual ao próprio n. 
Por exemplo, o número 3025 possui esta propriedade, pois: 
 30 + 25 = 55 
 552 = 3025 
Fazer um algoritmo para um programa que use a função acima para escrever todos os números 
inteiros positivos de 4 algarismos que possuem a propriedade definida. 
5. Construir uma função que receba um valor X e devolva o valor F(X) dado por 
 F(X) = X2 – 3X – 1 se X ≥ 0 
 X + 2 se X < 0 
Construir outra função que receba um valor X e devolva o valor G(X) dado por 
 X2 – 1 se F(X) > 0 
 G(X) = F(X) se F(x) ≤ 0 
Fazer um algoritmo para um programa que tabule a função Y = F(X) + G(X), sendo que X varia de a 
até b, com incrementos iguais a i. 
Os valores de a, b e i são fornecidos pelo usuário. 
6. Construir um algoritmo para um programa que leia o código de uma operação aritmética (add, sub, 
mul, div) e dois números inteiros positivos na base 2 (operandos), calcule e escreva o resultado 
binário da operação. 
A operação será feita na base decimal, utilizando funções para transformar a base dos operandos 
e do resultado. 
 Exemplo: 
- linha na entrada: add 101 111 
- transformando os operandos para decimais, será feita a operação temos: 5 + 7 = 12 
- transformando o resultado decimal 12 para binário, temos o valor impresso 1100. 
A resolução de alguns exercícios do cap.3 do livro Algoritmos Estruturados (pg.204) exige conhecimento 
do cap.2 que ainda estudaremos no próximo módulo do curso. Sendo assim, apenas os seguintes 
problemas podem ser considerados: 
 1, 2, 3, 5, 9, 10, 14, 15, 17 
 
Bom trabalho!

Outros materiais