Você está na página 1de 3

LISTA DE EXERCCIOS

Pgina 1 de 3

Curso Bacharelado em Cincia da Computao Disciplina AP2 Algoritmos e Programao 2 Nome do(a) acadmico(a)
N de matrcula Turma 2 Perodo A Data 30/01/2013

Campus Jata

Assinatura Professor(a) Ana Paula Freitas Vilela Boaventura

ATENO: Somente sero passveis de REVISO avaliaes resolvidas a TINTA.


ORIENTAES PARA A RESOLUO - O contedo exigido para resoluo desta lista de exerccios compreende os seguintes captulos no Plano de Ensino da disciplina: (2) Passagem de parmetro por referncia. (3) Recursividade.

1 Faa um programa que calcule o fatorial de um nmero de forma iterativa e recursiva. Fatorial: x!=x*(x-1)! 0!=1

2 Sendo: x^n=x*x^ (n-1) Onde ^ significa elevar um nmero a uma potncia, faa uma funo recursiva e iterativa para o clculo da potncia. Obs.: No ser vlido o uso de funes prontas da linguagem!

3 Dada a funo X: function X(n,m: integer): integer; begin if (n=m) or (m=0) then x:=1; else x:= x(n-1,m)+x(n-1,m+1) end;

a) qual o valor de x(5,3). b) quantas chamadas sero feitas na avaliao acima. c) escreva um cdigo que contenha essa funo recebendo os parmetros por referncia.

LISTA DE EXERCCIOS
Pgina 2 de 3

4 Dada a funo abaixo: function X(N:integer): integer; begin if (n >= 0) and (n <= 2) then x:=n else x := x(n-1)+x(n-2)+x(n-3) end; a) Quantas chamadas sero executadas para avaliar x(6) b) Indique a sequncia temporal dessas chamadas. 5 Escreva uma funo no recursiva para as seguintes funes: a) Function f (i: integer) : integer; begin if i > 1 then f := i + f(i-1) else f := 1 end; b) Function f ( i: integer) : integer; begin if i=0 then f := 0 else if i=1 then i:=1 ] else f := f(i-1)+f(i-2) end; 6 Implemente um programa no recursivo para calcular a soma dos n primeiros elementos da sequncia de Fibonacci, usando uma funo com passagem de parmetro por referncia. 7 Implemente uma funo recursiva que imprima os n primeiros nmeros pares. 8 Escreva uma funo recursiva que recebe como parmetro o nmero inteiro e positivo N e retorna a soma de todos os nmeros inteiros entre 0 e N. 9 Usando a passagem de parmetro por referncia, implemente um cdigo que contenha uma funo chamada Troca, que receba A e B e que troque os seus valores. A funo principal, dever imprimir na tela os valores trocados. 10 Usando a passagem de parmetro por referncia, implemente um cdigo que contenha o mdulo MMM, que recebe trs parmetros A, B e C e retorna o menor deles em A, o valor do meio em B e o maior em C. Caso sejam passados valores repetidos, a ordem das resposta entre eles no importa. A funo principal, dever imprimir na tela os valores trocados.

LISTA DE EXERCCIOS
Pgina 3 de 3

11 Escreva uma funo que recebe as 3 notas de um aluno por parmetro e uma letra. Se a letra for A o procedimento calcula a mdia aritmtica das notas do aluno, se for P, a sua mdia ponderada (pesos: 5, 3 e 2). A mdia calculada deve ser retornada a funo main 12 - Faa um programa que leia um nmero inteiro e positivo, e, chame uma funo que receba este nmero por parmetro e retorne 1 se este nmero for um nmero perfeito e 0 caso contrrio. Aps o retorno da funo o programa deve escrever uma mensagem indicando o resultado. Sendo que, um nmero perfeito aquele cuja soma de seus divisores, exceto ele prprio, igual ao nmero. Exemplo: 6 perfeito porque 1 + 2 + 3 = 6 28 perfeito porque 1 + 2 + 4 + 7 + 14 = 28

Você também pode gostar