Programação II Prof. Mateus Raeder Universidade do Vale do Rio dos Sinos - São Leopoldo - Questão 1 • Dado o método: Qual seu resultado para as seguintes chamadas: F(2), F(4), F(9)? Programação II – Prof. Mateus Raeder Resposta: questão 1 F(2) = 6 F(3) = 9 F(9) = 27 Programação II – Prof. Mateus Raeder Questão 2 • Criar uma função recursiva para calcular a soma dos inteiros de 1 a n, sendo n >= 1. Programação II – Prof. Mateus Raeder Resposta: questão 2 public static int calcSoma(int n){ int resultado = 0; if(n < 1) resultado = 0; else resultado = n + calcSoma(n-1); return resultado; } Programação II – Prof. Mateus Raeder Resposta: questão 2 public static void main(String args[]){ System.out.println("SOMA com 1 = "+calcSoma(1)); System.out.println("SOMA com 2 = "+calcSoma(2)); System.out.println("SOMA com 4 = "+calcSoma(4)); System.out.println("SOMA com 6 = "+calcSoma(6)); } SOMA com 1 = 1 SOMA com 2 = 3 SOMA com 4 = 10 SOMA com 6 = 21 Programação II – Prof. Mateus Raeder Questão 3 • Escreva uma função recursiva que retorne a soma dos elementos de um vetor v contendo t elementos. Programação II – Prof. Mateus Raeder Resposta: questão 3 public static int somaVetor(int[] v, int t){ int resultado = 0; int i; if(t <= 0) resultado = 0; else resultado = v[t-1] + somaVetor(v, t-1); return resultado; } Programação II – Prof. Mateus Raeder Resposta: questão 3 public static void main(String args[]){ int[] v = {1, 2, 3, 4}; int[] v2 = {10, 30, 5, 20, 100}; System.out.println("Resultado de V = "+somaVetor(v, 4)); System.out.println("Resultado de V2 = "+somaVetor(v2, 5)); } Resultado de V = 10 Resultado de V2 = 165 Programação II – Prof. Mateus Raeder