O if
e o while
são controladores de execução que iremos discutir na próxima secção. Nesta secção iremos usar o comando if
para explicar as perguntas.
Um exemplo simples de perguntas:
x = 6 if x > 5 [ print "olá" ]
Neste exemplo, a pergunta é x > 5
, se a resposta a esta pergunta for “true” (verdadeira), o código entre parêntesis rectos será executado. As perguntas são uma parte importante da programação e são usadas normalmente em conjunto com os controladores de execução, como o if
. Todos os números e variáveis (contentores de números) poderão ser comparados uns com os outros nas perguntas.
Aqui estão todas as perguntas possíveis:
Tabela 4.1. Tipos de perguntas
a == b | igual a | a resposta é “true” (verdadeira) se o a for igual ao b |
a != b | é diferente de | a resposta é “true” (verdadeira) se o a não for igual ao b |
a > b | maior que | a resposta é “true” (verdadeira) se o a for maior que o b |
a < b | menor que | a resposta é “true” (verdadeira) se o a for menor que o b |
a >= b | maior ou igual a | a resposta é “true” (verdadeira) se o a for maior ou igual ao b |
a <= b | menor ou igual a | a resposta é “true” (verdadeira) se o a for menor ou igual ao b |
As perguntas ficam realçadas com azul claro no editor de código.
As perguntas também podem ser coladas umas às outras com “palavras de colagem de perguntas” onde, desta forma, algumas perguntas tornam-se uma pergunta maior.
a = 1 b = 5 if (a < 5) and (b == 5) [ print "olá" ]
Neste exemplo, a palavra de colagem and
é usada para colar 2 perguntas (a < 5
, b == 5
) em conjunto. Se um lado do and
der uma resposta “false” (falsa), a pergunta toda irá responder “false”, porque, com a palavra de colagem and
, ambos os lados precisam de ser “true” para que a resposta seja “true” (verdadeira). Por favor não se esqueça de usar os parêntesis à volta das perguntas!
Segue-se uma vista esquemática; pode encontrar uma explicação mais detalhada de seguida:
Tabela 4.2. Palavras de colagem de perguntas
and | ambos os lados têm de ser “true” (verdadeiros) para a resposta ser “true” (verdadeira) |
or | se um dos lados for “true” (verdadeiros) a resposta é “true” (verdadeira) |
not | Caso especial: só funciona com uma pergunta! Muda o 'true' para 'false' e o 'false' para 'true'. |
As palavras de colagem ficam realçadas a púrpura no editor de código.
Quando são coladas duas perguntas em conjunto com o and
, ambos os lados do and
terão ser 'true' para que o resultado também seja 'true' (verdadeiro). Por exemplo:
a = 1 b = 5 if ((a < 10) and (b == 5)) and (a < b) [ print "olá" ]
Nestes exemplo, poderá ver uma pergunta colada a outra pergunta também colada.
Se uma das duas perguntas coladas em conjunto com o or
for 'true' (verdadeira), o resultado será também 'true'. Por exemplo:
a = 1 b = 5 if ((a < 10) or (b == 10)) or (a == 0) [ print "olá" ]
Neste exemplo, irá ver uma pergunta colada a outra pergunta, também esta colada.
O not
é uma palavra de colagem de perguntas especial que só funciona para uma pergunta de cada vez. O not
muda o 'true' para 'false' e o 'false' para 'true'. Por exemplo:
a = 1 b = 5 if not ((a < 10) and (b == 5)) [ print "olá" ] else [ print "não olá ;-)" ]
Neste exemplo, a pergunta colada é igual a 'true', embora o not
a mude para 'false'. Como tal, no fim, será impresso o "não olá ;-)"
na área de desenho.