Como o seu nome indica estas estruturas executan unhas ou outras ordes según se cumplan ou non determinadas condicións. As principais estruturas condicionais son:
- Condicional se (if)
- Condicional se...senón (if...else)
- Condicional se múltiple (if...elif)
- Condicionais elif encadeados
Condicional se (if)
Imaxina que no exemplo do cálculo da superficie dun círculo co que traballamos antes o que queres é poder calcular a superficie ou o perímetro da circunferencia. Imos preguntar no programa que queres calcular e se responde que a superficie calculamos a superficie, e se responden o perímetro calculamos o perímetro. Empregaremos a seguinte orde:
Orde | Scratch | Python |
---|---|---|
Se |
|
if condición: #non esquezas os ' : ' finais |
Diagrama de fluxo
Programa en Scratch
Condicional se...senón (if...else)
Noutras ocasións atopámonos que soamente hai dúas posibilidades: ou se cumpre unha condición ou non. Para iso empregaremos a sentencia if...else, que significa se...(se cumpre unha condición faremos algo) senón (faremos outra cousa). Vexámolo cun exemplo. Imaxina que queres facer un programa para que a empresa de Facebook determine se tes a idade suficiente para empregar WhatsApp. Soamente hai dúas posibilidades: ou tes menos de 16 ou non.
Orde | Scratch | Python |
---|---|---|
Se...senón |
|
if condición: #as ordes que se executan se se cumpre a condición van aquí indentadas. else: #as ordes que se executan se non se cumpre a condición van aquí indentadas. |
Diagrama de fluxo
Programa en Scratch
Condicional se múltiple (if...elif)
Cando empregamos o condicional anterior se... senón, pódese dar o caso de que nos interese revisar se se cumpren algunhas condicións máis, é dicir ter varios condicionais anidados. Neses casos empregaremos o condicional if..elif..else.
Orde | Scratch | Python |
---|---|---|
Se (se cumpre unha condición) senón: se (se se cumpre esta condición) senón |
|
if condición: elif condición: #para que Python lea o elif se debe incumplir a condición de if else: |
Por exemplo, supoñamos que queremos seleccionar persoas para formar unha banda de Rock. Coas persoas que se presenten faremos tres grupos:
- Os mellores candidatos: aqueles que toquen a guitarra e canten
- Os candidatos regulares: aqueles que so toquen a guitarra
- Os candidatos rexeitados: os demais
Vexamos como facer este programa:
Diagrama de fluxo
Programa en Scratch
Condicionais elif encadeados
Supoñamos que queremos ser máis esixentes na formación da banda de Rock. Queremos clasificar á xente tamén en tres grupos do seguinte xeito:
- As persoas ideais para a banda serán aquelas que saiban tocar a guitarra ben e tamén saiban cantar. Tamén incluiremos ás baterías.
- As persoas que poderemos chamar, pero non son ideiais serán aquelas que saiban cantar (pero non saiban ler unha partitura) e as que toquen a guitarra pero non saiban cantar.
- Rexeitaremos ás que non saiban solfear nin cantar e ás que non toquen ben nin a guitarra nin a batería.
A estas alturas esta clasificación te resultará un pouco complexa, por eso especialmente nestas ocasións é bo tirar man dos diagramas de fluxo para aclarar un programa:
Programa en Python
Exercicios
Podes practicar estas estruturas nos exercicios que aparecen aquí
Estruturas secuenciais Estruturas condicionais Estruturas iterativas: Bucles