Geral
Compiladores
Semana 4
0

Questão

Dado o seguinte trecho de código em uma linguagem de programação: 

int main() {
 int x = 5;
 x = x + 1;
 return x;
} 

Suponha que você está construindo um analisador sintático ascendente LR(1) para essa linguagem. Qual é o próximo passo de análise após reconhecer o seguinte símbolo: int x = 5;? 

A)

Realizar uma redução da produção declaration para stmt.

B)

Realizar uma redução da produção stmt para declaration.

C)

Procurar por um tokende lookaheadcorrespondente ao símbolo x.

D)

Realizar uma redução da produção stmt para expression_stmt.

E)

Procurar por um token de lookaheadcorrespondente a uma instrução dentro do bloco main(). 

function vote(questaoId, value) { window.location.href = "/accounts/login/?next=/questao/363/"; return; fetch(`/vote/questao/${questaoId}/`, { method: 'POST', headers: { 'Content-Type': 'application/json', 'X-CSRFToken': 'fc0FAQ8iitIFTgYIFDlOlt9qUtS62Jwm7BGVsfa4yLBqX2V9d1XpmNzWzfkBGL4Y' }, body: JSON.stringify({ value: value }) }) .then(response => response.json()) .then(data => { if (data.success) { document.getElementById(`score-${questaoId}`).textContent = data.score; const upBtn = document.querySelector(`button[onclick="vote(${questaoId}, 1)"]`); const downBtn = document.querySelector(`button[onclick="vote(${questaoId}, -1)"]`); upBtn.classList.remove('active-up'); downBtn.classList.remove('active-down'); if (data.user_vote === 1) upBtn.classList.add('active-up'); if (data.user_vote === -1) downBtn.classList.add('active-down'); } }); }