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 20 questões

Q2432589 Arquitetura de Software

Dada a árvore de busca binária da imagem a seguir, insira os elementos 23, 12, 64, 93, 71 e 86 (nessa ordem).


Imagem associada para resolução da questão


Após a inserção, qual é a saída do percurso pós-ordem?

Alternativas
Q2432590 Arquitetura de Software

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:

Alternativas
Q2432591 Arquitetura de Software

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?

Alternativas
Q2432592 Arquitetura de Software

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?

Alternativas
Q2432593 Arquitetura de Software

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:

Alternativas
Respostas
1: C
2: A
3: B
4: D
5: B