Questões de Concurso Público IF-MT 2023 para IF-MT - Professor do Ensino Básico, Técnico e Tecnológico: Informática
Foram encontradas 50 questões
Dada a árvore de busca binária da imagem a seguir, insira os elementos 23, 12, 64, 93, 71 e 86 (nessa ordem).
Após a inserção, qual é a saída do percurso pós-ordem?
Considere as afirmações abaixo sobre estruturas de dados em árvore.
I – Uma árvore AVL (Adelson-Velskii e Landis) é uma árvore na qual as alturas das subárvores esquerda e direita de cada nó diferem no máximo em um elemento.
II – A árvore B é uma estrutura de dados que foi projetada para minimizar o número de acessos à memória secundária, sendo que cada nó associado pode ter mais de uma chave.
III – Uma Black-Red Tree é uma árvore B+ que possui um bit extra para armazenar a cor de cada nó.
Está CORRETO o que consta em:
A seguir, é apresentado um código que implementa uma estrutura de dados utilizando a linguagem de programação Java. A classe LinkedList é uma implementação de fila convencional e utiliza o método add() para incluir um elemento na fila e o remove() para removê-lo. A classe Stack implementa uma pilha e utiliza o método push() para empilhar e o pop() para desempilhar.
import java.util.Stack;
import java.util.Queue;
import java.util.LinkedList;
public class Tad {
public static void main(String[] args) {
Stack<String> s = new Stack<String>();
Queue<String> q = new LinkedList<String> O;
s.push("Z");
s.push("X");
q.add(s.pop());
s.push("y");
q.add(s.pop());
q.add ("W");
q.add(s.pop());
q.add(q.remove());
s.push("H");
s.push(q.remove());
q.remove();
System.out.print("stack: " + s);
System.out.println(", Queue: "+ g):
}
}
Após a execução, qual é a saída do programa acima?
Código fonte em Java para as questões 34 e 35.
package com.example. demo;
public class MyCalc {
public static void main(String[] args) {
double amount = 1000;
double intRate = 2;
int period = 12;
CalcSrv c = new CalcSrv(new CalcLC());
double fv = c.fValue (amount, intRate, period);
System.out.printf("VF of LC:%.2\n", fv);
c = new CalcSrv (new CalcCDB());
fv = c.fValue(amount,intRate, period);
System.out.printf("VE of CDB:%.2f", fv);
}
private static class CalcSrv {
private CalcFV calcsrv;
public CalcSrv(CalcFV calcsrv) {
this.calcsryv = calesrv;
}
public double fvalue(double amount, double intRate, int period) {
amount = amount + calcsrv.calc(amount, intRate, period);
return amount;
}
}
interface CalcFV {
double calc(double amount, double intRate, int period);
}
private static class CalcLC implements CalcFV{
@Override
public double calc(double amount, double intRate, int period)
return (amount * Math.pow(1 + intRate/100, period)) - amount;
}
}
private static class CalcCDB implements CalcFV{
@Override
public double calc(double amount, double intRate, int period){
double fv = amount * Math.pow(1 + intRate/100, period);
if (period >12)
return (fv - amount) * 0.85;
return (fv - amount) * 0.78;
}
}
}
Qual Padrão de Projeto foi implementado nesse código?
Código fonte em Java para as questões 34 e 35.
package com.example. demo;
public class MyCalc {
public static void main(String[] args) {
double amount = 1000;
double intRate = 2;
int period = 12;
CalcSrv c = new CalcSrv(new CalcLC());
double fv = c.fValue (amount, intRate, period);
System.out.printf("VF of LC:%.2\n", fv);
c = new CalcSrv (new CalcCDB());
fv = c.fValue(amount,intRate, period);
System.out.printf("VE of CDB:%.2f", fv);
}
private static class CalcSrv {
private CalcFV calcsrv;
public CalcSrv(CalcFV calcsrv) {
this.calcsryv = calesrv;
}
public double fvalue(double amount, double intRate, int period) {
amount = amount + calcsrv.calc(amount, intRate, period);
return amount;
}
}
interface CalcFV {
double calc(double amount, double intRate, int period);
}
private static class CalcLC implements CalcFV{
@Override
public double calc(double amount, double intRate, int period)
return (amount * Math.pow(1 + intRate/100, period)) - amount;
}
}
private static class CalcCDB implements CalcFV{
@Override
public double calc(double amount, double intRate, int period){
double fv = amount * Math.pow(1 + intRate/100, period);
if (period >12)
return (fv - amount) * 0.85;
return (fv - amount) * 0.78;
}
}
}
Considere os princípios e padrões de projetos implementados no código.
I – Injeção de dependência
II – Inversão de controle
III – Injeção por construtor
Está CORRETO o que consta em: