Algoritmos

Estruturas de condição

Começando a programar!

Luiza Fattori
Zero e Umas

--

Photo by Safar Safarov on Unsplash. Na foto vemos um laptop aberto em cima de uma mesa. Na tela vemos um programa de programação aberto com código escrito. No lado esquerdo vemos três vasos posicionados em um triângulo com plantas dentro.

Quantas vezes você já não ouviu do seu responsável ou professor: "é melhor você fazer isso, senão…" ou “se você tirar boas notas, eu te dou um presente”? Eu ouvi várias e confesso que em muitos momentos, mesmo que eu tirasse boas notas, meus pais só me davam um parabéns.

Nós também fazemos isso com o nosso computador, usando algoritmos no nosso código. Nos últimos artigos temos falado sobre algoritmos, pode clicar aqui para ler. O artigo anterior explica o que são algoritmos e chega a demonstrar o que é uma estrutura de condição, mas aqui vou explicar detalhadamente. Também é importante que você veja o artigo sobre variáveis e constantes para entender um pouco melhor o que vou explicar, se quiser ler é só clicar aqui.

Estruturas de Condição

Uma estrutura de condição, como o próprio nome diz, é um algoritmo que usamos para realizar certas ações se elas satisfizerem uma condição, vou usar o mesmo exemplo do outro artigo e pensar em um cadeado de senha. O cadeado tem apenas uma senha, então ele só abre se a combinação colocada for igual à senha. Então se eu colocar uma combinação e ela for igual à senha, o cadeado pode abrir, senão, ele permanece trancado. Esse tipo de condição pode ser resolvida com um simples if else.

if else

If em inglês significa “se”, igual o que seu responsável falava para você. Ele é uma palavra chave que usamos para falar com o computador. Basicamente é você dizendo para o computador: olha, se isso aqui for verdade, então faz x. Else significa "senão" em inglês, e usamos ele para quando a condição que estamos querendo testar for mentira, seria algo como: se o que eu disse for falso, então faça y. Simples assim!

Para estruturar um if else, você precisa primeiro falar a condição e em seguida o que se faz se a condição for estabelecida. Abra chaves e diga o que deve ser feito se aquilo for verdade, feche as chaves e coloque o "senão", abra outras chaves, diga o que tem que ser feito se for falso e feche as chaves. Se, por exemplo, fossemos programar um cadeado, poderíamos ter algo parecido com:

let senha: Int = 356
let combinacaoColocada: Int = ()
if combinacaoColocada == senha {
abrirCadeado()
} else {
print("Senha incorreta")

Aqui está escrito em pseudocódigo o que seria a simulação de uma checagem de senha de um cadeado. Aqui eu coloquei que, caso a combinação colocada for diferente da senha, ele só retorna que a senha está incorreta. Essa é uma aplicação bem simples, mas ela pode ser mais complexa, porque podemos ter condições dentro de condições.

Continuando no exemplo do cadeado, você primeiro precisa colocar uma chave específica, que nesse caso eu vou dizer que é uma palavra, só para ficar mais claro para o código. Colocando o código, você pode ver se está certo. É uma condição dentro de condição, ficaria algo assim:

let chave: String = "segredo"
let chaveColocada: String = ()
let senha: Int = 356
let combinaçãoColocada: String = ()
if chaveColocada == chave {
abrirAParteDaSenha()
if combinaçãoColocada == senha {
abrirCadeado()
} else {
print("Senha Incorreta")
}
}

Ok, isso é um pouco mais complexo, mas pode ficar ainda mais complexo. Vamos supor que, dependendo da comparação que você fizer, exista uma resposta diferente. Nesse caso usaríamos o switch case.

Switch Case

O switch case nada mais é do que uma gama de respostas que se pode dar para uma condição. Assim, ao invés de você escrever vários if else, você pode fazer um switch case que vai analisar cada caso que você fizer algo diferente.

Eu vou usar um outro exemplo aqui, vamos pensar em uma bússola, ok?

A bússola pode apontar para 4 pontos cardeais principais: norte, sul, leste, oeste, existem os pontos intermediários, mas eles não são importantes nesse momento. Se fossemos programar um switch case, de forma bem simples seria algo do tipo:

switch apontando { 
case .norte:
print(“Você está apontando para norte!”)
case .leste:
print(“Você está apontando para leste!”)
case .sul:
print(“Você está apontando para sul!”)
case .oeste:
print(“Você está apontando para oeste!")
case default:
print("Você está perdido")
}

O switch case pode ser usado de várias formas e podemos colocar estruturas de condição dentro de cada caso.

Viram que eu coloquei um caso default? Todo switch case precisa ter um caso default, o programa necessita respondê-lo caso você caia em algo que não seja nenhum caso que você estabeleceu anteriormente. O computador dará uma resposta dependendo do sistema e do seu funcionamento.

Lembrando que essa é uma estrutura utilizada em apenas algumas linguagens, enquanto o if else é algo padrão de todas.

E aí? Gostaram de aprender um pouco sobre estruturas de condição? Espero que tenha esclarecido para vocês!

Obrigado por ler esse artigo! Deixe um comentário abaixo se tiver alguma dúvida. Não esqueça de nos seguir aqui no Medium e nossa Newsletter, para dicas, aulas e notícias sobre tecnologia, feito por mulheres para mulheres. Nos siga também no Instagram, para se conectar mais ainda com o Coletivo Zero e Umas!

A Luiza é uma das mulheres que formam o Coletivo Zero e Umas! Luiza, mais conhecida como Xuxu, é estudante de Psicologia e quer empoderar mulheres de vários jeitos, um deles é por meio da educação (e ela ama amarelo haha).

Você consegue se conectar com ela no LinkedIn, Instagram, Medium, ou nos seguindo através do Instagram.

--

--

Luiza Fattori
Zero e Umas

Escritora do 0&Umas https://medium.com/zeroeumas. Aspirante a escritora e Phd em curiosidade. Estudante de Psicologia e de tudo que há de bom.