

Seu próximo nível começa aqui
Com a Assinatura Ilimitada, você tem tudo que precisa para sua aprovação.
Com a Assinatura Ilimitada, você combina prática, teoria e método em uma única assinatura com tudo que você precisa para sua aprovação.
Analise o trecho de código abaixo:
animal a = new animal( );
a.locomover( );
a = new cobra( );
a.locomover( );
a = new gato( );
a.locomover( );
É um exemplo de:
Encapsulamento
Polimorfismo
Troca de mensagens
Classe abstrata
Analise o trecho de pseudocódigo a seguir.
function f(a as integer, b as integer, c as
integer) as integer
{
while b <= c
{
a = b+c;
y = b+1;
};
return a+b+c;
};
x=10;
y=2;
z=3;
print f(x, y, z), x, y, z;
Em algumas linguagens de programação é possível fazer a passagem de parâmetros como byref ou byvalue, e assim podemos supor que a função f acima poderia ser reescrita especificando, para cada parâmetro, uma das duas formas citadas.
Supondo-se que o primeiro e o segundo parâmetro da função tenham sido passados como byref e o terceiro, como byvalue, os quatro valores exibidos pelo comando print seriam, respectivamente,
13, 6, 2 e 3.
13, 6, 4 e 3.
10, 10, 2 e 3.
13, 0, 0 e 3.
10, 8, 5 e 2.





Um algoritmo é uma sequência detalhada de ações a serem executadas para realizar uma tarefa. Dentre as formas de representação de algoritmos temos: o Portugol, também conhecido como Português Estruturado ou Pseudocódigo. Analise a veracidade de cada uma das seguintes afirmações sobre códigos escritos em Portugol:
I - O código abaixo gera um algoritmo que declara dois vetores, um denominado A e outro denominado B com a capacidade máxima de 4 (quatro) elementos, cada vetor, que nesse exemplo serão do tipo inteiro. Na continuação do algoritmo, o vetor A é preenchido com valores inteiros definidos através de comando específico (leia). E finalizando com a transferência de todos os elementos do vetor A para o vetor B, sendo que os elementos do vetor B são visualizados como saída do algoritmo.
Algoritmo VetorB
var
A, B : vetor(1..4) de inteiro
i : inteiro
inicio
para i de 1 ate 4 faca
escreval ("Digite o valor de A(",i,"):")
leia (A[i])
fimpara
para i de 1 ate 4 faca
B[i] : =A[i]
escreval ("B[",i,"] :"B[i])
fimpara
Fim
II - O algoritmo abaixo possui a declaração de três vetores, um denominado A e outro denominado B e mais um denominado de C, com a capacidade máxima de 15 (quinze) elementos, que nesse exemplo, serão do tipo real. O vetor C é preenchido com elementos também de valores reais que são gerados a partir da multiplicação dos elementos do vetor A com os elementos do vetor B, e finaliza-se o algoritmo tendo como saída os elementos do vetor C. Para fazer o preenchimento do vetor C, foi utilizada a seguinte operação aritmética vetor C[i]:= vetor A[i] * vetor B[i] , em que a variável i representa a variável controladora para dar acesso aos elementos dos vetores.
Algoritmo VetorC
var
A, B, C: vetor (1..15) de
i : inteiro
inicio
para i de 1 ate 15 faca
escreval ("Digite o valor de A[",i,"]:")
leia (A[i])
fimpara
para i de 1 ate 15 faca
escreval ("Digite o valor de B[",i,"]:")
leia (B[i])
fimpara
escraval ("=== Vetor C ==")
para i de 1 ate 15 faca
C[i] : = A[i] * B [i]
escreval ("C[",i,"]:",C[i])
fimpara
Fim
III - O algoritmo descrito a seguir irá gerar uma matriz 6 x 6, conforme a Figura abaixo:
1 3 3 3 3 2 3 1 3 3 2 3 3 3 1 2 3 3 3 3 2 1 3 3 3 2 3 3 1 3 2 3 3 3 3 1 |
Algoritmo matA
var
matA : vetor[1..6,1..6] de inteiro
i, j : inteiro
inicio
para i de 1 ate 6 faca
para j de 1 ate 6 faca
se (i+j=7) entao
matA[i, j]:=2
senao
se (1+j=7) entao
matA[i,j]:=3
fimse
fimse
escraval
fimpara
fimpara
para i de 1 ate 6 faca
escraval
para j de 1 ate 6 faca
escreva (matA[i,j])
fimpara
fimpara
Fim
IV - Um algoritmo escrito em Portugol que declara uma matriz 3 x 1 e preenche essa mesma matriz com 31 (trinta e um) elementos do tipo real. E obtém como saída/resultado final do algoritmo a soma de todos os elementos da diagonal principal da matriz gerada, que está definido a seguir:
algoritmo "Matriz Diagonal"
var
matrizA:vetor[1..,3 1..3] de real
soma:real
i,j:inteiro
Inicio
parai i de 1 ate 3 faca
para j de 1 ate 3 faca
leia(matrizA[i,j))
fimpara
fimpara
para i de 1 ate 3 faca
para j de 1 ate 3 faca
soma := (matrizA[l,1) + matrizA[2,2) + matrizA[3,3)
fimpara
fimpara
escreval(soma)
Fim
E escolha a alternativa CORRETA:
São verdadeiras I e II.
São verdadeiras I e III.
São verdadeiras I, II e III.
São verdadeira I, II e IV.
Todas são verdadeiras.
Dado o algoritmo abaixo, assinale a alternativa que apresenta o algoritmo de ordenação utilizado no código.
public class Ordenacao { __public static void main(String[] args) { ____int[] array = { 3, 4, 9, 2, 5, 1, 8 }; ____ordenaArray(array); ____for (int i = 0; i < array.length; i++) { ______System.out.println(array[i]); ____} __} __static void ordenaArray(int[] array) { ____int i, j, eleito; ____for (i = 1; i < array.length; i++) { ______eleito = array[i]; ______j = i; ______while ((j > 0) && (array[j - 1] > eleito)) { ________array[j] = array[j - 1]; ________j = j - 1; ______} ________array[j] = eleito; _____} __} } |
Merge Sort.
Selection Sort.
Quick Sort.
Heapsort.
Insertion Sort.
Um algoritmo de complexidade exponencial pode ser representado por qual notação?
0(2n)
0(n+1)
0(n)
0(n−1)
0(n)+3
Analise as seguintes equações binárias:

O resultado das equações apresentadas é, respectivamente: