Baixe o app para aproveitar ainda mais
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!
Compartilhar