Execução passo a passo – Variáveis, tipos de dados e expressões
ComputaçãoAlgoritmos e resolução de problemasIdades 15–16
Carregando…
Entre para usarExecute linha por linha um programa curto em Python ou em pseudocódigo no estilo de prova. Uma tabela de variáveis mostra como cada valor e seu tipo de dado (int, float, string, booleano) mudam a cada atribuição, e uma árvore de expressão mostra a precedência dos operadores e como 17 // 5, 17 % 5 ou int(3.7) são avaliados. Os exemplos abrangem entrada e saída, seleção, laços, números aleatórios com gráfico de frequências, arquivos de texto virtuais, erros de conversão e exceções, e estouro de inteiros de 32 bits, tudo registrado em uma tabela de rastreio.
Aula: Variáveis, atribuição, tipos de dados e expressões; entrada e saída, seleção, repetição, arquivos e exceções
O que mostra
Uma variável é uma posição de memória com nome: uma atribuição avalia a expressão à direita e guarda o resultado na variável à esquerda. Este simulador executa, linha por linha, um subconjunto didático de Python ou pseudocódigo no estilo de prova com ←, DIV, MOD e IF … ENDIF. Uma tabela de variáveis mostra cada valor com seu tipo de dado, uma árvore de expressão mostra a precedência dos operadores e como a divisão inteira, o resto e as conversões são calculados, e uma tabela de rastreio registra cada passo. Os exemplos tratam de entrada e saída, seleção, laços, números aleatórios, arquivos, erros de conversão, exceções e estouro.
Como usar
Escolha um Programa de exemplo e uma Linguagem e clique em Executar 1 linha para avançar linha por linha, em Executar para avançar na Velocidade escolhida ou em Executar até o fim. Os valores lidos por input() ou INPUT vão na caixa Entrada, um por linha. Após cada passo, observe a tabela Variáveis na memória, a árvore de expressão e a Tabela de rastreio. Clique em Editar código para escrever seu próprio programa e mude Inteiros para 32 bits para ver o estouro.
Parâmetros que você pode mudar
- Programa de exemplo Variáveis e tipos de dados, Operadores e precedência, Entrada e saída, Seleção (if / else), Laços, Números aleatórios (dados), Ler e gravar arquivos, Erros de conversão e exceções, Estouro de inteiros de 32 bits
- Linguagem Python, Pseudocódigo (estilo de prova)
- Inteiros Sem limite (como Python), 32 bits (como Java, C)
- Velocidade de execução 0,5–20 linhas/s
Perguntas para explorar
- Por que age + 1 dá erro depois de age = input(), enquanto int(age) + 1 funciona?
- Que valores e tipos 17 // 5, 17 % 5 e 17 / 5 produzem, e como // e DIV diferem com -7?
- No modo de 32 bits, por que 2147483647 + 1 vira um número negativo?