logica com javascript
Blog

Lógica de Programação com JavaScript: Guia Completo para Iniciantes (Do Zero ao Primeiro Projeto)

Lógica de Programação com JavaScript: Guia Completo para Iniciantes (Do Zero ao Primeiro Projeto) | Desvendando o Código

📘 Lógica de Programação com JavaScript: Guia Completo para Iniciantes (Do Zero ao Primeiro Projeto)

Do zero ao primeiro projeto • Algoritmos, condicionais, switch case e muito mais

🎯 Neste artigo você vai aprender: o que é algoritmo, como construir um sistema, usar condicionais (if/else e switch case), criar uma calculadora com menu e dar os primeiros passos na programação com JavaScript.

1. Introdução: Por que a lógica de programação é o seu primeiro passo?

Você quer aprender a programar, já assistiu a vários vídeos, mas ainda sente que “trava” na hora de criar seus próprios códigos? O problema quase sempre é o mesmo: falta de base em lógica de programação.

Neste artigo, vamos construir juntos os fundamentos que usei ao vivo com meus alunos da ETEC e nos meus projetos. Todo o conteúdo foi extraído de uma live especial onde unimos duas aulas de lógica com JavaScript. Você vai entender o que é um algoritmo, como transformar uma descrição narrativa em código, e ainda vai pôr a mão na massa com exemplos práticos.

💡 Quer ver a explicação completa em vídeo?
No final deste artigo você encontra o link para a live completa (mais de 2h de conteúdo aprofundado). Continue estudando por aqui e depois assista à aula prática!

2. O que é um Sistema? A analogia que muda tudo

Antes de falar de código, precisamos entender o que estamos construindo. Um sistema é um conjunto de elementos interdependentes que formam um todo organizado. Pense no sistema solar: cada planeta tem sua função, mas todos trabalham em conjunto.

No mundo do desenvolvimento, qualquer sistema – um site, um aplicativo, uma calculadora – precisa de três partes:

  • Entrada (input): dados que o usuário fornece (ex: peso e altura).
  • Processamento: regras, cálculos e decisões (ex: fórmula do IMC).
  • Saída (output): resultado exibido para o usuário (ex: “Abaixo do peso”).

Quando você estuda condicionais, laços de repetição e variáveis, está aprendendo as peças que vão formar o seu sistema.

3. Algoritmo: a sequência que resolve problemas

Algoritmo é uma sequência finita de passos para resolver um problema. Não existe um único jeito certo – dois programadores podem criar algoritmos diferentes que chegam ao mesmo resultado.

📌 Exemplo do dia a dia: o caminho que você faz de casa até o trabalho (levantar, tomar café, pegar o ônibus, andar até a empresa) é um algoritmo.

Na programação, um algoritmo pode ser representado de várias formas:

  • Descrição narrativa: texto em linguagem natural (o cliente descreve o que quer).
  • Fluxograma: diagrama com formas geométricas (início, processo, decisão, fim).
  • Pseudocódigo (Portugol): quase código, mas em português estruturado.
  • Código fonte: JavaScript, Python, Java etc.

Neste artigo, vamos focar em descrição narrativa → código JavaScript, que é o que você realmente vai usar no dia a dia.

4. Da descrição narrativa ao código: Estudo de caso – Cálculo de IMC

Um cliente envia a seguinte mensagem:

“Preciso de um sistema para calcular o IMC de uma pessoa. Depois de calcular, o sistema deve mostrar na tela: abaixo do peso, peso normal, sobrepeso ou obesidade. As informações (peso, altura, IMC e classificação) devem ser salvas em um documento (opcional).”

Agora vamos interpretar e transformar isso em requisitos:

  • Dois campos de entrada: peso (kg) e altura (m).
  • Botão “Calcular IMC” – faz o cálculo e exibe a classificação.
  • Botão “Salvar” (opcional) – guarda os dados em JSON.
  • Fórmula: IMC = peso / (altura * altura).
  • Classificação (exemplo fictício):
    • Menor que 18,5 → “Abaixo do peso”
    • 18,5 a 24,9 → “Peso normal”
    • 25 a 29,9 → “Sobrepeso”
    • 30 ou mais → “Obesidade”

Esse é o poder da lógica: você pega uma conversa “solta” e organiza em etapas que a máquina entende. No código, isso vira variáveis, condicionais e funções.

5. Primeiros passos no JavaScript: input, output e variáveis

Para interagir com o usuário em ambiente de estudo, usamos:

  • prompt("mensagem") → entrada de dados (sempre retorna uma string).
  • alert("mensagem") → janela de alerta.
  • console.log("mensagem") → exibe no console do navegador (F12).
⚠️ Atenção: o valor vindo do prompt é texto. Para fazer contas, converta para número usando Number() ou parseFloat().

Exemplo: somando dois números

let n1 = Number(prompt("Digite o primeiro valor:"));
let n2 = Number(prompt("Digite o segundo valor:"));
let soma = n1 + n2;
alert("A soma é: " + soma);

Se você esquecer a conversão, o sinal de + vai concatenar os textos (ex: 5 + 5 vira “55” em vez de 10).

Outras formas de saída:

  • document.write("texto") → escreve diretamente no HTML.
  • console.log("A soma é:", soma) → útil para depuração.

6. Condicionais: o que o algoritmo deve fazer quando…

As condicionais permitem que o programa siga caminhos diferentes conforme os dados recebidos.

6.1 Estrutura if / else – exemplo do bom dia, boa tarde, boa noite

let hora = 18;

if (hora < 12) {
    console.log("Bom dia!");
} else if (hora >= 12 && hora < 18) {
    console.log("Boa tarde!");
} else {
    console.log("Boa noite!");
}

Explicação: o programa testa a primeira condição (hora < 12). Se for false, vai para o else if. Se também for false, cai no else. Só um bloco é executado.

6.2 Estrutura switch case – quando há muitas opções fixas

O switch é ideal para menus ou situações onde uma variável pode assumir valores específicos (1, 2, 3, “+”, “-“, etc.).

let operador = "+";
let a = 10, b = 5;

switch (operador) {
    case "+":
        console.log(a + b);
        break;
    case "-":
        console.log(a - b);
        break;
    default:
        console.log("Operador inválido");
}
Importante: o break interrompe a execução e sai do switch. Sem ele, o código “cai” no próximo case.

7. Projeto prático: Calculadora com Menu (usando switch case + tratamento de erros)

Vamos construir uma calculadora completa que roda no terminal (Node.js). Usaremos o pacote prompt-sync para capturar dados do usuário.

Passo 1: Instalar o pacote

npm install prompt-sync

Passo 2: Código completo (exemplo da live)

const prompt = require('prompt-sync')();

function realizarOperacao(opcao, num1, num2) {
    switch (opcao) {
        case 1:
            return num1 + num2;
        case 2:
            return num1 - num2;
        case 3:
            return num1 * num2;
        case 4:
            if (num2 === 0) {
                return "Erro: não é possível dividir por zero!";
            }
            return num1 / num2;
        default:
            return "Opção inválida!";
    }
}

console.log("--- CALCULADORA ---");
console.log("1 - Soma\n2 - Subtração\n3 - Multiplicação\n4 - Divisão");
let opcao = parseInt(prompt("Escolha uma opção: "));
let num1 = parseFloat(prompt("Digite o primeiro número: "));
let num2 = parseFloat(prompt("Digite o segundo número: "));

let resultado = realizarOperacao(opcao, num1, num2);
console.log(`Resultado: ${resultado}`);

O que aprendemos aqui?

  • Uso de switch com return (dispensa o break).
  • Tratamento de divisão por zero com if.
  • Conversão explícita com parseInt e parseFloat.
  • Template literal (`` `Resultado: ${resultado}` ``) para strings dinâmicas.

8. Dicas para você evoluir (e não travar)

  • Não copie e cole: digite cada linha. O aprendizado está no processo, não no Ctrl+C / Ctrl+V.
  • Use o console (F12) para depurar: insira console.log(variavel) para ver se o valor está correto.
  • Capriche no CSS: mesmo em projetos pequenos, uma interface bonita aumenta sua motivação.
  • Aprenda Git e GitHub desde agora: controle de versão é obrigatório para qualquer profissional.

📌 Próximos passos sugeridos:

  • Laços de repetição (for, while, do...while)
  • Vetores (arrays) e manipulação de listas
  • Funções assíncronas (async/await)
  • Banco de dados MySQL

9. Conclusão

A lógica de programação é a base que sustentará toda a sua carreira. Não pule etapas. Se você entendeu os conceitos de algoritmo, entradas, saídas, condicionais e praticou com os exemplos, já está à frente de muita gente.

E lembre-se: programar é resolver problemas. Quanto mais você praticar com mini projetos, mais natural fica o processo.


🎬 Assista à live completa sobre este conteúdo no YouTube!

Não se esqueça de se inscrever no canal para mais conteúdos gratuitos.

Leave a Reply

Your email address will not be published. Required fields are marked *