image

Acesse bootcamps ilimitados e +650 cursos pra sempre

60
%OFF
Giliano Novais
Giliano Novais29/08/2025 23:26
Compartilhe

A Base de Tudo: Desvendando Algoritmos e Lógica de Programação

  • #Lógica de Programação

#Desafio3: Escrevendo Artigos para Reforça sua Autoridade | DIO Campus Expert Turma 13

A Base de Tudo: Desvendando Algoritmos e Lógica de Programação

Muitos que iniciam no mundo da tecnologia se preocupam em escolher a "linguagem certa" para começar. No entanto, o alicerce para se tornar um profissional de sucesso não está na sintaxe, mas em uma habilidade muito mais fundamental: o raciocínio lógico e algorítmico. Esta disciplina é a espinha dorsal da ciência da computação. Ela nos ensina a pensar como uma máquina, a decompor problemas complexos em etapas lógicas e a criar soluções eficientes, independentemente da ferramenta (linguagem) que será usada para construí-las.

Meu nome é Giliano Gomes Novais. Minha experiência com algoritmos começou na faculdade de matemática. Nesse período, fui encorajado a pensar de maneira lógica, dividindo meus problemas em problemas menores e resolvendo-os um a um, para que finalmente os resolvesse por completo. Essa disciplina me deu uma base sólida para planejar e acompanhar projetos em minha carreira como Técnico de Planejamento, e agora, como estudante de Análise e Desenvolvimento de Sistemas, sinto que essa abordagem é essencial para a programação.


A Lógica de Programação: A Gramática do Código

A lógica de programação é o processo de organizar pensamentos para criar uma sequência de instruções que o computador pode entender. Pense nela como a "gramática" universal da programação.

1. Variáveis e Tipos de Dados: As "Caixas" de Informação

Antes de tudo, precisamos de um lugar para guardar dados. As variáveis são como caixas com rótulos para armazenar diferentes tipos de informação.

  • idade (tipo: número inteiro) = 30
  • nome (tipo: texto) = "Joao"
  • logado (tipo: valor lógico) = verdadeiro

2. Operadores: As Ferramentas de Ação

Os operadores nos permitem manipular e comparar os dados.

  • Aritméticos: +, -, *, /. Exemplo:

resultado = 5 + 3

  • De Comparação: == (igual a), > (maior que), < (menor que). Exemplo:

se (idade >= 18)

  • Lógicos: e, ou, não. Exemplo:

se (idade > 18 e logado)

3. Estruturas de Controle: O Fluxo da História

Elas dão ao nosso programa a capacidade de tomar decisões e repetir tarefas.

  • Estruturas Condicionais (se-senão):

        SE (idade >= 18) {

            // Bloco de código 1

            imprimir("Pode entrar no site.");

        } SENAO {

            // Bloco de código 2

            imprimir("Acesso negado.");

        }

  • Estruturas de Repetição (para, enquanto):

        // Exemplo com PARA: Imprimir os números de 1 a 5

        PARA contador DE 1 ATE 5{

            imprimir(contador);

        }

        

        // Exemplo com ENQUANTO:

        ENQUANTO (contador < 3) {

            imprimir("Olá!");

            contador = contador + 1;

        }


Algoritmos: A Receita para a Solução

Um algoritmo é a sequência exata de passos para resolver um problema específico. Enquanto a lógica de programação é o "como pensar", o algoritmo é o "o que fazer".

1. Algoritmo de Busca Linear

É a maneira mais simples de encontrar um item em uma lista. Você simplesmente verifica cada item, um por um, até encontrá-lo.

  • Problema: Encontrar o número 7 em uma lista.
  • Algoritmo:
  1. Comece no primeiro elemento da lista.
  2. Verifique se o elemento é o número 7.
  3. Se for, termine a busca.
  4. Se não for, vá para o próximo elemento e repita o passo 2.
  5. Se chegar ao final da lista e não encontrar, retorne "não encontrado".

2. Algoritmo de Busca Binária

Este algoritmo é muito mais eficiente, mas só funciona em listas que já estão ordenadas. Ele reduz pela metade a quantidade de dados a serem pesquisados a cada passo.

  • Problema: Encontrar o número 7 em uma lista ordenada.
  • Algoritmo:
  1. Olhe para o elemento do meio da lista.
  2. Se ele for o 7, a busca termina.
  3. Se o 7 for menor que o elemento do meio, descarte a metade superior da lista e volte para o passo 1 com a metade inferior.
  4. Se o 7 for maior, descarte a metade inferior e volte para o passo 1 com a metade superior.

3. Algoritmo de Ordenação: Bubble Sort

Um exemplo clássico de algoritmo de ordenação que move os maiores elementos para o final da lista, "empurrando-os" como bolhas.

  • Problema: Ordenar a lista [5, 1, 4, 2].
  • Algoritmo (em alto nível):

1. Compare o 5 e o 1. Troque-os. A lista se torna

[1, 5, 4, 2].

2. Compare o 5 e o 4. Troque-os. A lista se torna

[1, 4, 5, 2].

3. Compare o 5 e o 2. Troque-os. A lista se torna

[1, 4, 2, 5]. (O 5, o maior, está no final).

4. Repita o processo para os elementos restantes até que a lista esteja completamente ordenada.



Ferramentas Essenciais: Pseudocódigo e Fluxogramas

Antes de escrever o código em uma linguagem específica, é uma boa prática planejar a solução. O pseudocódigo e os fluxogramas são ferramentas que nos ajudam a fazer isso.

  • Pseudocódigo: É uma forma híbrida entre a linguagem natural e a linguagem de programação.

       INICIO

            RECEBA peso_do_produto

            SE peso_do_produto <= 1.0 ENTAO

                frete = 5.00

            SENAO SE peso_do_produto <= 5.0 ENTAO

                frete = 10.00

            SENAO

                frete = 20.00

            FIM SE

            IMPRIMA frete

       FIM

  • Fluxograma: É uma representação visual do algoritmo, usando formas e setas para ilustrar o fluxo de controle.


Conclusão: O Conhecimento Que Transcende a Linguagem

Na faculdade, aprendi algoritmos e lógica de programação utilizando a linguagem Pascal, que é muito antiga e muitos nem conhecem. Mesmo depois de tantos anos afastado, ao começar a estudar nos bootcamps da DIO, vi que tudo o que eu havia aprendido ainda era a base para as linguagens de hoje. Por isso, vejo que dominar algoritmos e lógica de programação é o passo mais importante para qualquer pessoa que queira trabalhar com tecnologia. Uma vez que você aprende a "pensar como um computador", a sintaxe de uma nova linguagem (como Python, Java, C#, entre outras) se torna apenas um detalhe. O verdadeiro poder está na sua capacidade de resolver problemas de forma eficiente, e essa é a principal lição que essa disciplina oferece.


E agora? O que você faz?

O objetivo deste artigo é chamá-lo para experimentar. Use o conhecimento que adquiriu para resolver um desafio simples. Proponho que você tente criar um algoritmo, usando pseudocódigo, para:

  • Calcular o IMC (Índice de Massa Corporal):
  1. Receba o peso e a altura de uma pessoa.
  2. Calcule o IMC usando a fórmula

peso / (altura * altura).

  1. Use uma estrutura condicional para dizer se a pessoa está abaixo do peso, com peso normal, com sobrepeso ou obesa.


Referencias Bibliográficas:

As informações e exemplos apresentados neste artigo são baseados em meus estudos e materiais de referência. A informação contida no artigo é considerada conhecimento básico e fundamental para a disciplina. Os conceitos de algoritmos, variáveis, operadores, estruturas de controle e os exemplos de busca linear, busca binária e Bubble Sort são ensinados em praticamente todos os cursos e materiais introdutórios de programação.

Portanto, não há uma lista de referências bibliográficas específicas, pois o conteúdo é uma compilação de princípios e exemplos pedagógicos que fazem parte do senso comum da educação em programação.

#DIO #CampusExpert #Turma13

Compartilhe
Recomendados para você
Ri Happy - Front-end do Zero #2
Avanade - Back-end com .NET e IA
Akad - Fullstack Developer
Comentários (0)