Questões de Concurso
Sobre algoritmos em algoritmos e estrutura de dados
Foram encontradas 2.344 questões
valor = 1 Enquanto valor < 20 faça Início valor = valor + 1 escreva (valor) Fim;
A codificação que gera o mesmo resultado da estrutura acima e que utiliza a estrutura PARA, corresponde à seguinte opção:
• Implementação 1: o algoritmo percorre repetidamente a lista, comparando e trocando elementos adjacentes até que toda a lista esteja ordenada.
• Implementação 2: a lista é dividida em duas metades recursivamente, e as metades ordenadas são combinadas para formar a lista final.
• Implementação 3: o algoritmo constrói a lista ordenada elemento por elemento, inserindo cada novo item na posição correta.
• Implementação 4: uma estrutura de heap é utilizada para armazenar os elementos, garantindo que o maior ou menor elemento seja extraído de forma eficiente.
Com base nas descrições anteriores, assinale a alternativa que relaciona corretamente as implementações aos algoritmos de ordenação.
algoritmo "ExemploRepeticao" var i, soma: inteiro inicio soma <- 0 // Estrutura de repetição 1 para i de 1 ate 5 faca soma <- soma + i fimpara
// Estrutura de repetição 2 i <- 1 enquanto i <= 5 faca soma <- soma + i i <- i + 1 fimenquanto
// Estrutura de repetição 3 i <- 1 repita soma <- soma + i i <- i + 1 ate i > 5
escreva("Valor final de soma: ", soma) fimalgoritmo
Sobre o código, analise as afirmativas a seguir.
I. A primeira estrutura de repetição (para) soma os números de 1 a 5, resultando em soma = 15.
II. A segunda estrutura de repetição (enquanto) também soma os números de 1 a 5, acumulando ao valor anterior de soma, resultando em soma = 30.
III. A terceira estrutura de repetição (repita...ate) soma os números de 1 a 5, acumulando ao valor anterior de soma, resultando em soma = 45.
IV. O valor final exibido de soma será 45.
Está correto o que se afirma em
função calcular(valor inteiro x) retorna inteiro { inteiro resultado se (x <= 1) { resultado = 1 } senão se (x mod 2 == 0) { resultado = x / 2 + calcular(x - 1) } senão { resultado = x * 3 + calcular(x - 2) } retorna resultado } início { inteiro num = 5 inteiro res = calcular(num) escreva("Resultado: ", res) }
A saída do programa após sua execução será:
I. Abstração, Decomposição, Algoritmos e Reconhecimento de Padrões são os pilares do PC.
II. Abstração, Herança, Algoritmos e Reconhecimento de Padrões são os pilares do PC.
III. O Reconhecimento de Padrões trabalha a identificação de características comuns entre os problemas e suas soluções.
IV. O pilar de algoritmos envolve somente as instruções descritas com uma linguagem de programação.
É correto o que se afirma em:
Considere o pseudocódigo do algoritmo x a seguir:

Qual das alternativas seguintes descreve corretamente o comportamento do algoritmo x?
Considere que os elementos da matriz m são números reais e que a mesma é bidimensional, com n linhas e p colunas, sendo n e p inteiros não nulos.
Com base no exposto, analise os itens a seguir:
I. O número de vezes que a linha <7> do pseudocódigo é executada é (n * p), para qualquer m.
II. Se p = 1, a matriz de saída é igual à matriz de entrada.
III. Se a segunda linha da matriz de entrada for [9, 2, 3, 7], a segunda linha da matriz de saída será [7, 3, 2, 9].
Está correto o que se afirma em
Considere o seguinte pseudocódigo:

Assinale a opção que indica a saída impressa pelo programa.
I.O Portugol é uma linguagem de programação de alto nível usada para escrever algoritmos de forma mais clara e compreensível.
II.Pseudocódigo é uma representação formal e precisa de um algoritmo, podendo ser interpretado diretamente por um compilador.
III.Algoritmos são uma sequência finita de passos que descreve um processo ou solução para um problema.
IV.Escrever algoritmos em Portugol é uma prática recomendada para profissionais de TI, mas não é comumente utilizada em ambientes de desenvolvimento.
Assinale a alternativa correta:
As expressões regulares são ferramentas poderosas e amplamente utilizadas para a manipulação e busca de padrões em cadeias de texto, sendo essenciais em diversas áreas da computação. Sobre expressões regulares, considere as seguintes afirmações:
I - Expressões regulares são notações utilizadas para representar a classe de linguagens mais simples que se conhece, a classe das linguagens regulares, a mais restrita dentro da Hierarquia de Chomsky.
II - Os parênteses são empregados para modificar localmente a precedência ou a associatividade predefinida dos operadores, assim como ocorre nas expressões aritméticas tradicionais da matemática.
III - A notação das expressões regulares foi desenvolvida na década de 1950 como alternativa para a representação dos conjuntos regulares.
IV - As expressões regulares são utilizadas em áreas que abrangem desde a especificação de linguagens de programação até a entrada de dados em editores de texto e programas de busca.
Assinale a alternativa que apresenta apenas afirmações corretas:
Os autômatos finitos são amplamente utilizados na computação devido à sua simplicidade e eficiência para resolver problemas que envolvem o reconhecimento de padrões e a manipulação de cadeias de caracteres. Sobre autômatos finitos, considere as seguintes afirmações:
I - A máquina de estados de um autômato finito, também denominada controle finito, é definida pelo conjunto de estados e pela função de transição.
II - Uma cadeia de entrada é aceita por um autômato quando, após esgotamento da cadeia, o estado corrente do autômato é do tipo final.
III - Estados inacessíveis são aqueles para os quais não existe no autômato qualquer caminho, formado por transições válidas, que permita atingi-los a partir do estado inicial do autômato.
IV - Uma das características dos autômatos finitos é a existência de memória auxiliar.
Assinale a alternativa que apresenta apenas afirmações corretas:
As linguagens livres de contexto são essenciais nas áreas de Linguagens de Programação e Compiladores, onde desempenham um papel central na definição da sintaxe de linguagens de alto nível. A sua importância reside, principalmente, na capacidade de capturar a estrutura recursiva de linguagens complexas. Sobre as linguagens livres de contexto, considere as seguintes afirmações:
I - A característica que torna as gramáticas livres de contexto especialmente adequadas à formalização sintática das linguagens de programação é a sua capacidade de representação de construções aninhadas, que são frequentemente encontradas em linguagens dessa categoria.
II - Uma linguagem L é dita estritamente livre de contexto se ela for livre de contexto e for regular.
III - Dado o elevado interesse pelas gramáticas livres de contexto, inúmeras notações, denominadas metalinguagens, foram desenvolvidas para facilitar a formalização sintática das linguagens artificiais.
IV - A representação da estrutura de sentenças ou formas sentenciais de linguagens livres de contexto, na forma de árvores bidimensionais, é um recurso muito utilizado, tanto na teoria quanto na prática da implementação de linguagens.
Assinale a alternativa que apresenta apenas afirmações corretas:
As linguagens regulares têm uma aplicação ampla e significativa em diversas áreas da computação, devido à sua simplicidade e capacidade de modelar problemas práticos. Com relação a esse tipo de linguagem, considere as seguintes afirmações:
I - Sejam A e B, duas linguagens regulares quaisquer, a questão A = B não é decidível.
II - A classe das linguagens regulares é fechada em relação às operações de união, concatenação e fechamento reflexivo e transitivo.
III - Nas gramáticas lineares de linguagens regulares, o lado direto das regras possui no máximo um único símbolo não terminal do lado direito das suas regras.
IV - As gramáticas lineares à esquerda ou à direita geram exatamente a mesma classe de linguagens.
Assinale a alternativa que apresenta apenas afirmações corretas:
I. A princípio, um algoritmo nada mais é do que uma receita que mostra passo a passo os procedimentos necessários para a resolução de uma tarefa.
II. Um algoritmo é uma sequência lógica, finita e definida de instruções que devem ser seguidas para resolver um problema ou executar uma tarefa.
III. A partir dos conhecimentos tidos como verdadeiros, caberia à Lógica de Programação a formulação de leis gerais de encadeamentos lógicos que levariam à descoberta de novas verdades.
Está CORRETO o que se afirma:
Usado na abstração de alguns processos que seriam melhor descritos isoladamente. O início e fim de uma sub-rotina utiliza os mesmos blocos início e fim descritos acima (utilizando o nome da sub-rotina para especificar).
O algoritmo para resolver o problema da Torre de Hanói pode ser definido pela seguinte função recursiva:
T(n) = 2T(n − 1) + 1, com T(0) = 1, onde n representa o número de discos.
Esse algoritmo resolve o problema movendo os discos entre três pinos de acordo com as regras do jogo.
Diante dessa definição, qual seria a ordem de complexidade do algoritmo?