Variáveis e Tipos de Dados: como o programa armazena informação
Toda informação que um programa manipula fica armazenada em variáveis. Entender os tipos de dados evita os erros mais comuns da programação.
O que é uma variável?
Uma variável é um espaço reservado na memória do computador para guardar um valor que pode mudar ao longo do programa. Ela tem dois atributos fundamentais: um nome (identificador) e um valor.
Pense em variáveis como gavetas etiquetadas: a etiqueta é o nome, e o conteúdo da gaveta é o valor. Você pode abrir a gaveta para ler o conteúdo (usar a variável) ou trocar o que está dentro (atribuir um novo valor).
- Nome deve ser descritivo: `idadeUsuario` é melhor que `x`. Código se lê mais do que se escreve.
- Sem espaços no nome: use camelCase (idadeUsuario) ou snake_case (idade_usuario), dependendo da linguagem.
- Sensível a maiúsculas: `Nome` e `nome` são variáveis diferentes na maioria das linguagens.
🧮 Teste você mesmo — CalcSim
Quer mais recursos? Baixar app CalcSim IA
Os principais tipos de dados
O tipo de dado define que tipo de informação a variável pode guardar e quais operações fazem sentido com ela. As linguagens modernas têm vários tipos, mas quatro são universais.
Inteiro (int): números sem parte decimal. Exemplos: 10, -5, 0, 1000. Ideal para contagens, índices e quantidades discretas.
Decimal (float ou double): números com ponto flutuante. Exemplos: 3.14, -0.5, 99.99. Float tem precisão de 7 dígitos; double, de 15. Use double quando precisão importa (cálculos financeiros, científicos).
Texto (string): sequência de caracteres entre aspas. Exemplos: 'Olá', 'CalcSim IA', '123'. Note que '123' (string) é diferente de 123 (int) — você não pode somar '123' + 1 sem converter.
Booleano (boolean): só tem dois valores possíveis — verdadeiro (true) ou falso (false). Fundamental para condicionais. Exemplos: `estaLogado = true`, `senhaCorreta = false`.
- int: 0, 42, -7, 1000000
- float/double: 3.14, -0.001, 2.718
- string: 'texto', "também texto", ''
- boolean: true, false (jamais 'true' — isso é string, não booleano)
Tipagem: estática vs dinâmica
Em linguagens de tipagem estática (Java, C, Swift), o tipo é definido na declaração e não muda. Você escreve `int idade = 25;` e `idade` nunca poderá receber um texto. Isso torna os erros de tipo detectáveis antes do programa rodar.
Em linguagens de tipagem dinâmica (Python, JavaScript, Ruby), o tipo é inferido pelo valor atribuído e pode mudar. `x = 10` cria um inteiro; depois `x = 'texto'` transforma em string. Mais flexível, mas exige mais atenção do programador.
TypeScript (JavaScript com tipagem) e Python com type hints são soluções intermediárias: a linguagem é dinâmica, mas você pode anotar os tipos para obter checagem em tempo de desenvolvimento.
Constantes e conversão de tipos
Quando um valor não deve mudar durante o programa, use uma constante. Em muitas linguagens, a convenção é escrever o nome em maiúsculas: `TAXA_JUROS = 0.05`, `PI = 3.14159`. Algumas linguagens têm palavra-chave específica: `const` (JavaScript/Dart), `final` (Java/Dart), `val` (Kotlin).
Conversão de tipos (cast) é transformar um valor de um tipo para outro. Exemplos comuns: int para string (para exibir na tela junto com texto), string para int (para fazer cálculos com um número digitado pelo usuário), float para int (para truncar casas decimais).
Atenção: converter float para int trunca o valor — 3.9 vira 3, não 4. Se quiser arredondar, use a função de arredondamento da sua linguagem (round, Math.round, etc.).
- int('42') → 42 (string vira inteiro)
- str(42) → '42' (inteiro vira string)
- float('3.14') → 3.14 (string vira decimal)
- int(3.9) → 3 (trunca, não arredonda)
Perguntas frequentes
Qual a diferença entre float e double?
Ambos representam números decimais, mas com precisões diferentes. Float ocupa 4 bytes e tem cerca de 7 dígitos de precisão. Double ocupa 8 bytes e tem cerca de 15 dígitos. Para a maioria dos usos, a diferença é imperceptível, mas em cálculos financeiros ou científicos, a perda de precisão do float pode causar erros. Prefira double quando precisão importa.
Por que 0.1 + 0.2 não é exatamente 0.3 em programação?
Porque computadores usam representação binária para números decimais, e alguns valores (como 0.1) não têm representação exata em binário — assim como 1/3 não tem representação exata em decimal. O resultado de 0.1 + 0.2 é 0.30000000000000004. Para comparações, use margem de tolerância: `abs(resultado - 0.3) < 0.0001` em vez de `resultado == 0.3`.
Posso guardar um número numa variável string?
Sim, mas ele se torna texto — não um número. A string '42' e o inteiro 42 são coisas diferentes. '42' + '8' = '428' (concatenação de texto), enquanto 42 + 8 = 50 (soma). Sempre converta para o tipo correto antes de operar.
Este artigo foi útil para você?
Avalie com estrelas para nos ajudar a melhorar o conteúdo.
Faça login para avaliar este artigo.
Ainda tem dúvida?
O Professor IA explica passo a passo
Faça uma pergunta em linguagem natural e receba uma explicação personalizada sobre Lógica de Programação — ou qualquer outro tópico.
Prefere resolver pelo celular?
Baixar o app grátis →Continue aprendendo