Analise o código JavaScript da função XPTO exibido a seguir.
function XPTO(valor, lista) {
var i = 0;
var posicao = -1;
for (i = 0; i < lista.length; i++) {
if (lista[i] == valor) {
posicao = i;
}
}
return posicao;
}
A função percorre um array contendo números inteiros e retorna a posição de um determinado número. Se esse número não é encontrado no array, a função retorna o valor -1. O número procurado e o array são fornecidos como parâmetros. Note que o código, como apresentado, executa tantos ciclos quantos forem os elementos na lista.
Por exemplo,
XPTO (11, [2, 1, 3, 4, 7, 8, 10, 12]) retornaria -1, e percorreria 8 ciclos.
XPTO (13, [1, 2, 3, 5, 8, 13, 21]) retornaria 5, e percorreria 7 ciclos.
XPTO (1, [1, 2]) retornaria 0, e percorreria 2 ciclos.
Pede-se
Considerando que o array fornecido jamais contém números repetidos, e que seus elementos estão sempre dispostos em ordem crescente, apresente uma nova versão do código dessa função de modo que o tempo de processamento (ou número de ciclos) diminua tanto quanto possível.
Note que a solução apresentada:
a) deve manter a assinatura original e a especificação da função original;
b) não pode utilizar funções/métodos de busca auxiliares;
c) não pode criar/utilizar índices/tabelas auxiliares;
c) deve manter a sintaxe JavaScript;
d) não deve conter comentários.
Serão avaliados:
a) a conformidade com a assinatura e a especificação original;
b) a correção da versão apresentada;
c) o grau de redução do tempo de processamento obtida.
CONTEÚDO EXCLUSIVO
Confira nossos planos especiais de assinatura e desbloqueie agora!
CONTEÚDO EXCLUSIVO
Confira nossos planos especiais de assinatura e desbloqueie agora!
Ops! Esta questão ainda não tem resolução em vídeo.
Questões Relacionadas
O Máximo Divisor Comum (MDC) de dois ou mais números inteiros, positivos e diferentes de zero é o maior (máximo) número inteiro que divide simultaneamente esses dois ou mais números. Os exemplos a seguir ilustram o cálculo do MDC.
| Números | MDC |
| 90, 12 | 6 |
| 23, 17 | 1 |
| 1024, 2048, 256, 48 | 16 |
Item 1
Descreva em português, sucinta e precisamente, o passo a passo de um algoritmo eficiente que calcula o MDC de dois números inteiros, positivos e diferentes de zero.
Observações sobre o texto apresentado:
a) deve respeitar rigorosamente a especificação;
b) deve ser claro e organizado;
c) não deve conter comentários e/ou justificativas;
d) não deve incluir trechos que estejam fora do escopo da so…
Uma instituição pública deseja modernizar seu sistema interno de gestão de solicitações administrativas, atualmente baseado em planilhas e troca de e-mails. O novo sistema será desenvolvido como uma aplicação web, acessível a servidores e gestores, permitindo registro de novas solicitações (ex.: passagens, diárias, TI, manutenção); consulta e atualização do status; anexação de documentos; e visualização gerencial de pendências e tempos de atendimento.
A equipe de desenvolvimento decidiu adotar a arquitetura MVC (Model–View–Controller) para garantir separação de responsabilidades, baixa acoplamento e facilidade de manutenção.
No projeto, definiu-se que o Model representará entidades como Soli…
Os contratos inteligentes têm se tornado mais populares nos últimos anos, principalmente devido à ascensão das criptomoedas e criação de diversas redes blockchain. Embora ainda seja um conceito relativamente novo para muitas pessoas, organizações públicas e privadas, é uma tecnologia que está mudando as formas de como se realizam transações, eliminando intermediários e aumentando a segurança das transações.
a) Explique o que é uma rede blockchain.
b) Explique como funcionam os mecanismos de consenso em uma rede blockchain e apresente dois exemplos de utilização.
c) Explique o que são contratos inteligentes e apresente um exemplo de utilização.



