Introdução
À medida que a complexidade dos programas aumenta, é necessário ter o conhecimento de como controlar o fluxo do programa usando estruturas de decisão e laços de repetição. Essas construções fornecem ferramentas poderosas para lidar com diferentes cenários e automatizar tarefas repetitivas.
Além disso, uma outra ferramenta importante na programação são as funções. Afinal, elas permitem que você modularize seu código, dividindo-o em partes menores e mais fáceis de gerenciar.
Neste artigo, iremos explorar o uso das estruturas de decisão em Python: if, else e elif, assim como os laços de repetição while e for.
Estruturas de decisão
Uma estrutura de decisão permite que o fluxo do programa seja alterado com base na avaliação de uma condição que pode ser verdadeira ou falsa.
if
O if é uma estrutura de condição que avalia uma expressão e, se a condição dada for verdadeira, executa uma ação especificada em seu bloco de instruções.
Sintaxe
if expressão:
comando
comando
É importante que a sintaxe e indentação sejam respeitadas ou o programa não funcionará como esperado.
Exemplo
a=7
contador=0
if a<10:
print(“o número eh menor que 10”)
contador+=1
Nesse primeiro exemplo, se a variável a for menor que 10 uma mensagem será exibida e o contador será incrementado.
a=7
contador=0
if a<10:
print(“o número eh menor que 10”)
contador+=1
Já no segundo exemplo, se a variável a for menor que 10 uma mensagem será exibida e independente do if o contador será incrementado. Esse detalhe pode gerar um grande problema no programa, então é importante se atentar à indentação.
else
O if executa uma ação se uma determinada condição for verdadeira. Por outro lado, o else é uma alternativa para lidar com o caso em que a condição do if é falsa.
Sintaxe
else:
comando
comando
É importante ressaltar que não existe else sem if.
Exemplo
a=7
if a<10:
print(“o número eh menor que 10”)
else:
print(“o número eh maior que 9”)
elif
Se for preciso testar mais de uma condição, utiliza-se o elif entre o if e o else.
Sintaxe
elif expressão:
comando
comando
É importante ressaltar que não existe elif sem if.
Exemplo
a=15
if a<10:
print(“o número eh menor que 10”)
elif a<20:
print(“o número estah entre 10 e 19”)
else:
print(“o número eh maior que 19”)
Laços de repetição
Os laços de repetição são utilizados para executar um bloco de código repetidamente, permitindo automatizar tarefas que precisam ser realizadas diversas vezes. No entanto, é importante tomar cuidado ao utilizar loops para evitar loops infinitos e garantir que as condições sejam definidas corretamente, a fim de evitar comportamentos inesperados no programa.
Dentro do bloco de código de um loop, é possível utilizar outras estruturas de controle, como if e else, para controlar o fluxo do loop e tomar decisões específicas com base em condições.
Existem dois principais laços de repetição em Python: o while e o for.
while
O while é utilizado quando queremos repetir um bloco de código enquanto uma condição específica for verdadeira, quando o resultado da condição passa a ser falso o loop é interrompido.
Sintaxe
while condição:
comando
comando
A estrutura do while consiste em avaliar a condição no início do loop. Se a condição for verdadeira, o bloco de código será executado. Em seguida, o próximo reinicia, a condição é avaliada novamente e o processo continua até que a condição seja falsa. É importante garantir que a condição eventualmente se torne falsa para evitar loops infinitos e suas consequências no programa.
Exemplo
a=0
while a<10:
print(“a=”, a)
Do jeito que o código está escrito o programa ficará em um loop eterno, pois não há nada que faça a condição do while se tornar falsa. Por isso, ao montar uma estrutura while você sempre deve pensar na condição de início do loop e na condição de parada.
a=0
while a<10:
print(“a=”, a)
a+=1
Já neste código, a cada vez que o conteúdo do while é lido o a é incrementado até atingir o valor 10 e interromper a execução do loop.
for
O for é utilizado quando queremos iterar sobre uma sequência de elementos, como uma lista, uma string ou um intervalo numérico. O for é especialmente útil quando já sabemos quantas vezes o loop precisa ser executado. Ele percorre cada elemento da sequência e executa o bloco de código correspondente para cada elemento.
Sintaxe
for variável in sequencia:
comando
comando
No for já é definido o início e a parada do loop diminuindo as chances de se ter loop infinito.
Exemplo
for a in range(10):
print(a)
O programa irá imprimir de 0 a 9 incrementando de um em um.
for a in range(5, 10):
print(a)
O programa irá imprimir de 5 a 9 incrementando de um em um.
for a in range(0, 10, 2):
print(a)
O programa irá imprimir de 0 a 9 incrementando de dois em dois.
Funções
As funções são blocos de código reutilizáveis que realizam uma tarefa específica. Elas ajudam a tornar o código mais organizado, permitindo a reutilização de trechos de lógica.
Sintaxe
def nome_da_funcao(parâmetros):
comandos
comandos
return valor_de_retorno
A declaração da função tem os seguinte itens:
- A palavra-chave “def” é utilizada para definir a função.
- “nome_da_funcao” é o nome escolhido para a função, que deve seguir as convenções de nomenclatura em Python e ser descritivo e intuitivo. Então recomenda-se escolher um nome que represente claramente a tarefa ou ação que a função realiza.
- “parâmetros” são os valores de entrada que podem ser passados para a função. Eles são opcionais e você pode definir quantos forem necessários e separá-los por vírgula.
- A estrutura “comandos” está no bloco de código, que é onde a lógica da função é implementada. Aqui você pode realizar operações, manipular dados e executar outras ações.
- A palavra-chave “return” é usada para retornar um valor opcional da função. Isso permite que você obtenha um resultado específico quando chama a função. Mas nem toda função precisa ter retorno.
Exemplo
def testa_maior (x,y)
if x>y:
print (x)
else:
print (y)
Uma vez definida, a função pode ser chamada em qualquer parte do programa, fornecendo os argumentos necessários. Assim a função poderia ser chamada tanto com um valor como com variáveis:
Exemplo 1:
testa_maior(15, 5)
Exemplo 2:
a=20
b=23
testa_maior(a, b)
Note que nesse primeiro exemplo fizemos a função sem retorno, agora façamos a mesma função mas com retorno.
def testa_maior (x,y)
if x>y:
return x
else:
return y
E a chamada da função poderia ser feita da seguinte forma:
Exemplo 3:
c= testa_maior(15, 5)
print (c)
Exemplo 4:
a=20
b=23
c= testa_maior(a, b)
A linha chamando a função print foi utilizada para exibir o valor de retorno da função testa_maior.
Saiba Mais
Video aulas: Programação da Raspberry Pi Pico com MicroPython







Muito interessante. Parabéns.
Me parece que temos um erro nos exemplos do if:
Os dois exemplos ficaram exatamente iguais e assim não dá para entender a explicação de se atentar à indentação.
Aryldo, obrigado pelo correção.