t1 Universidade Federal do ABC Disciplina: Processamento da Informação Avaliação: Prova 02 Professor: Jesús P. Mena-Chalco Data: 22/04/2015 Nome: RA: Instruções para a prova (leia antes de começar): 1) A prova tem a duração de 1h30min. 2) É proibido o uso de qualquer aparelho ou recurso de processamento e/ou comunicação. Questão 1 (10 pontos) Escreva o valor da variável z1, após a execução do seguinte trecho: int x1 = 1; int z1 = 1; x1 = x1*z1; z1 = z1*x1; z1 = z1+x1; Resposta Escreva o intervalo de números aleatórios que a seguinte instrução permitirá gerar: (int)(math.random()*1000)%10+1 Escreva o valor da variável soma, após a execução do seguinte trecho: int[][] M = {{1,2,3, {4,5,6, {8,8,8; int n=m.length, m=m[0].length, soma=0; for (int i=0; i<n*m; i=i+1) soma = soma + M[i%n][i%m]; Escreva o valor da variável k, após a execução do seguinte trecho: int k=0; for (int i=1; i<=10; i=i+k) { k = i+k; Escreva o valor da variável contador, após a execução do seguinte trecho: String s = "abcccccccdddf"; char[] v = s.tochararray(); int contador = 0; for (int i=0; i<v.length; i=i+1) { if (v[i]!=v[(i+1)%v.length]) contador = contador+1; Questão 2 (6 pontos) static int funcaor1 (int[] v, int i, int j) { if (i==j) else { int x = funcaor1(v, i+1, j); if (v[i]>x) else return x; (a) O que devolve funcaor1 para v={10,11,12,13,14,15,16,17,18,19,20, i=5, e j=10? (b) O que devolve funcaor1 para v={10,11,12,13,14,15,16,17,18,19,20, i=0, e j=6?
t1 (c) Para um vetor de tamanho n, (com i=0 e j=n 1), quantas vezes a função é chamada? Questão 3 (4 pontos) Indique o valor que devolverá a seguinte função. Considere como parâmetro de entrada, para a função, o seu número de matricula (isto é, seu RA composto de 8 dígitos). static boolean funcaora1 (int ra) { int v[] = new int[8]; for (int i=7; i>=0; i=i 1) { v[i] = ra%10; ra = ra/10; for (int i=3; i<5; i=i+1) { if (v[i]>v[i+1]) return false; return true; RA:... Resposta:... Questão 4 (4 pontos) A seguinte função permite imprimir o resultado da multiplicação de duas matrizes, A e B, cujas dimensões sejam compatíveis. Implemente a função multiplicalinhacoluna de tal forma que devolva a multiplicação da i-éssima linha de A com a j-éssima coluna de B. static void multiplicamatrizes (int[][] A, int[][] B) { for (int i=0; i<a.length; i=i+1) { for (int j=0; j<b[0].length; j=j+1) System.out.print( multiplicalinhacoluna(a, B, i, j) + " "); System.out.print("\n"); static int multiplicalinhacoluna (int[][] A, int[][] B, int i, int j) {
t1 Questão 5 (6 pontos) Crie uma função para determinar o menor valor presente na diagonal principal de uma matriz (quadrada ou retangular) dada como entrada. Limitação: Sua implementação deve ser eficiente e somente os elementos que estão na diagonal deverão ser consultados. Não serão aceitas soluções que considerem laços aninhados (apenas 1 laço é suficiente). static int menorvalornadiagonalprincipal (int[][] M) { Seja M, uma matriz bidimensional de n linhas e m colunas. Qual é o número total de comparações que são considerados na sua solução? Responda em função de n e m. Resposta:...
t2 Universidade Federal do ABC Disciplina: Processamento da Informação Avaliação: Prova 02 Professor: Jesús P. Mena-Chalco Data: 22/04/2015 Nome: RA: Instruções para a prova (leia antes de começar): 1) A prova tem a duração de 1h30min. 2) É proibido o uso de qualquer aparelho ou recurso de processamento e/ou comunicação. Questão 1 (10 pontos) Escreva o valor da variável z2, após a execução do seguinte trecho: int x2 = 1; int z2 = 1; x2 = x2*z2; z2 = z2*x2; z2 = z2+x2; Resposta Escreva o intervalo de números aleatórios que a seguinte instrução permitirá gerar: (int)(math.random()*1000)%9+1 Escreva o valor da variável soma2, após a execução do seguinte trecho: int[][] S = {{7,8,9, {4,5,6, {3,3,3; int p=s.length, q=s[0].length, soma2=0; for (int i=p*q; i!=0; i=i 1) { soma2 = soma2 + S[i%p][i%q]; Escreva o valor da variável d, após a execução do seguinte trecho: int d=0; for (int i=10; i>=0; i=i d) { d = i d; Escreva o valor da variável cont, após a execução do seguinte trecho: String t = "aaaabcdefffggg"; char[] w = t.tochararray(); int cont = 0; for (int i=0; i<w.length; i=i+1) { if (w[i]!=w[(i+1)%w.length]) cont = cont+1; Questão 2 (6 pontos) static int funcaor2 (int[] v, int i, int j) { if (i==j) else { int x = funcaor2(v, i+1, j); if (v[i]<x) else return x; (a) O que devolve funcaor2 para v={10,11,12,13,14,15,16,17,18,19,20, i=5, e j=10? (b) O que devolve funcaor2 para v={10,11,12,13,14,15,16,17,18,19,20, i=0, e j=6?
t2 (c) Para um vetor de tamanho n, (com i=0 e j=n 1), quantas vezes a função é chamada? Questão 3 (4 pontos) Indique o valor que devolverá a seguinte função. Considere como parâmetro de entrada, para a função, o seu número de matricula (isto é, seu RA composto de 8 dígitos). static boolean funcaora2 (int ra) { int v[] = new int[8]; for (int i=7; i>=0; i=i 1) { v[i] = ra%10; ra = ra/10; for (int i=3; i<5; i=i+1) { if (v[i]<v[i+1]) return false; return true; RA:... Resposta:... Questão 4 (4 pontos) A seguinte função permite imprimir o resultado da multiplicação de duas matrizes, A e B, cujas dimensões sejam compatíveis. Implemente a função multiplicalinhacoluna de tal forma que devolva a multiplicação da i-éssima linha de A com a j-éssima coluna de B. static void multiplicamatrizes (int[][] A, int[][] B) { for (int i=0; i<a.length; i=i+1) { for (int j=0; j<b[0].length; j=j+1) System.out.print( multiplicalinhacoluna(a, B, i, j) + " "); System.out.print("\n"); static int multiplicalinhacoluna (int[][] A, int[][] B, int i, int j) {
t2 Questão 5 (6 pontos) Crie uma função para determinar o menor valor presente na diagonal secundária de uma matriz (quadrada ou retangular) dada como entrada. Limitação: Sua implementação deve ser eficiente e somente os elementos que estão na diagonal deverão ser consultados. Não serão aceitas soluções que considerem laços aninhados (apenas 1 laço é suficiente). static int menorvalornadiagonalsecundaria (int[][] M) { Seja M, uma matriz bidimensional de n linhas e m colunas. Qual é o número total de comparações que são considerados na sua solução? Responda em função de n e m. Resposta:...