Ir ao conteúdo

Principais características de uma linguagem de programação e sua escrita – parte 6

Preciso logo aqui no início fazer um grande alerta para você, futuro programador ou programadora. Uma das partes mais importantes em programação são os loops, conhecidos como estruturas de repetições.  Se você dominar as estruturas  de repetições, você se tornará um excelente programador e conseguirá resolver problemas muito complexos. Então, #FicaAdica kkkkk

Estrutura de repetição

No artigo sobre funções,  fiz um exemplo onde repito uma parte de uma mensagem de texto, “O resultado da soma é: “, 5 vezes, e efetuo umas operações de adição simples. Se recorda? Essa necessidade de REPETIR coisas é muito comum em todas as linguagens de programação e a grande maioria, mantém a sintaxe muito similar uma das outras, porque o comportamento de uma estrutura de repetição é um padrão muito comum. Vou mostrar para você os dois principais tipos de estruturas de repetições (podem ser chamadas também de laços de repetições) mais comuns que existem. São eles: for e while . Vamos iniciar com o for.

Laço de repetição For

For significa “para”, mas não é o “para de parar” é no sentido de “para fazer alguma coisa” kkkk

Vou te explicar como o for funciona com um exemplo. Imagine que você quer exibir na tela uma sequência de números de 1 à 10. Como você faria sem um laço de repetição? Algo parecido com esse exemplo, utilizando Java:

Laço de repetição java

Para fazer de 1 à 10 é fácil, imaginou ter que digitar de 1 até 100? kkkkk Ai você iria sofrer um pouco… Você pode falar: Há! é fácil vou escrever de 1 até 100 e fazer, aí logo que terminar, queremos modificar o programa ao invés de fazer contagem de 1 à 100, deveria ser de 100 à 1 (decrescente) kkkkk ai você iria sofrer bastante, não é verdade? Veja como ficaria o contador de 1 à 10  utilizando o laço de repetição for:

Laço de repetição java usando for

Viu como é fácil? kkkk  Isso é muito útil! Você vai encontrar no mundo da programação vários problemas que você resolverá utilizando laços de repetição. Veja a anatomia do for:

  • int incrementador = 1

Aqui estou definindo em qual número o for vai iniciar minha contagem para incrementar (1, 2, 3 etc…)

  • incrementador <= 10

Aqui é a condição para definir quando o loop tem que parar. É a quantidade de vezes que o laço for vai repetir. Nesse caso, estou definindo que vai repetir 10 vezes

  • incrementador++

Lembra de um exemplo em que utilizamos uma variável para somar com ela mesma? Na parte de “Operação de atribuição” kkkk  é exatamente o que esse sinal (++) faz! Ele soma +1 a cada loop kkkkkk Veja no exemplo a seguir como o sinal ++ funciona:

Incrementador em java

Percebeu? Toda vez que chamo o sinal de incremento ++, ele pega o valor anterior e soma + 1. É exatamente igual aquela questão da variável somando com ela mesmo usando os sinais += , porém somando +1, contudo, nesse caso, o incrementador tem que começar em zero kkkkk. Veja no exemplo a seguir:

Incrementador em java segundo exemplo

A galera da programação cria vários padrões de escrita, e uma delas é o seguinte…. Eles gostam de chamar o nome da variável  “incrementador” dentro do for, apenas de “i” aí fica assim:

Laço de repetição java exemplo completo

Só ressaltando, esse “i”, pode ser qualquer nome que você queira. O “i” é uma convenção da galera que trabalha com programação kkkk só isso.

Continuando… Vou fazer para um “diálogo” entre o laço for e o processador do computador. Veja como é o comportamento do laço for:

  1. FOR: Processador? Vou iniciar a contagem em 1 (int i = 1), aí você vai incrementando aí (i++), beleza? Só fica de olho porque enquanto  “i” for menor ou igual a 10 é para você somar +1, beleza?
  2. PROCESSADOR: Beleza mano! Vamos lá!
  3. PROCESSADOR: O “i” já é igual à 1, então vou exibir ele na tela e depois que eu exibir, incrementar o “i” somando ele +1 (i++) até chegar no 10. Espera um pouco aí laço FOR, vai ser rapidinho!!!  (i=1, i=2, i=3, i=4, i=5, i=6, i=7,i=8,i=9,i=10)
  4. PROCESSADOR: Opa! o “i” já é igual à 10, vou exibir ele na tela e não vou mais incrementar (i++). Beleza?
  5. FOR: Valeu mano! Chegamos no 10 vou parar aqui também kkkk tamos juntos!!!

Como eu sempre falo, FOQUE NO CONCEITO! Veja que essa forma de implementar o laço for, é idêntico a outras linguagens como as linguagens de programação C# e PHP:

Laço de repetição csharp e php

Veja agora como implementar o laço for em uma linguagem sem chaves {} para delimitar seu escopo, que é o caso da linguagem Python (ele usa indentação para delimitar seu escopo). Veja como o Python implementa o laço for. Observe que o conceito é o mesmo, o que muda é apenas sua sintaxe:

Laço de repetição python

Está vendo? Você já está se tornando um programador ou uma programadora! Em pouco tempo você estará ativamente desenvolvendo diversos programas.  Não se esqueça, leia e releia quantas vezes for necessário! Se tiver dúvidas, deixe aqui nos comentários. Lembre-se, esse assunto de estruturas de repetições é muito importante. No próximo artigo, “Principais características de uma linguagem de programação e sua escrita – parte 7”, vou explicar sobre o laço de repetição while e utilizar mais exemplos de uso de loops.  Até lá!

Confiança Sempre!!!

Olá! Sou Walmir, engenheiro de software com MBA em Engenharia de Software e o cérebro por trás do GrowthCode e autor do livro "Além do Código". Se você acha que programação é apenas sobre escrever código, prepare-se para expandir seus horizontes. Aqui, nós vamos além do código e exploramos as interseções fascinantes entre tecnologia, negócios, artes e filosofia. Você está em busca de crescimento na carreira? Quer se destacar em um mercado competitivo? Almeja uma vida mais rica em conhecimento e realização? Então você chegou ao lugar certo. No GrowthCode, oferecemos insights profundos, estratégias comprovadas e um toque de sabedoria filosófica para catalisar seu crescimento pessoal e profissional.

Publicado emProgramação

Seja o primeiro a comentar

Deixe um comentário

O seu endereço de e-mail não será publicado. Campos obrigatórios são marcados com *