Você está na página 1de 4

FICHA PRÁTICA ORIENTADA Nº1

Bases de Programação – Estruturas de Controlo


Curso Tecnológico de Informática - 10ºano
2011/2012

A sequência de instruções de um programa apresenta uma ordem implícita da


realização das operações descritas.

Por vezes torna-se conveniente alterar a ordem de instruções de controlo de


execução utilizando as estruturas de Selecção.

Estruturas de Selecção

IF

Frequentemente torna-se necessário decidir qual a próxima instrução a ser


executada, em função do valor lógico de uma expressão booleana.

A estrutura condicional IF permite direccionar o fluxo de acção em função do


valor lógico de uma condição.

A estrutura IF pode ser interpretada da seguinte forma:


 SE a condição for verdadeira ENTÃO é executada a instrução, após o que
a condição continua na instrução imediatamente.

 SE no entanto a condição for falsa, a acção prossegue na instrução que se


encontra imediatamente a seguir á estrutura.

Contrariamente á estrutura IF simples, qualquer que seja o valor lógico da


condição, esta estrutura prevê uma acção específica, e não apenas para o caso
em que a condição é verdadeira.

A estrutura condicional completa pode ser interpretada da seguinte forma:

1 Bases de Programação – Estruturas de Controlo


 SE a condição for verdadeira ENTÃO é executada a instrução1

 SENÃO é executada a instrução 2.

Exemplo: - A partir das dimensões de 2 lados adjacentes de uma polígono de 4


lados e ângulos, pretende-se identificar a respectiva figura.
Código:

Readln(Lado1,Lado2);
IF Lado1 = Lado2 THEN
Writeln(‘A figura é um quadrado’);
ELSE
Writeln(‘É um rectângulo’);

Em determinadas situações surge a necessidade da utilização de duas ou mais


estruturas IF encadeadas.

Repara no seguinte exemplo:


Suponha que, a partir de lados de um polígono que tenha todos os lados iguais,
se pretende escrever o Nome desse polígono, até ao polígono de 5 lados.

Código:

Readln(num_lados);
IF num_lados =3 THEN
Writeln(‘Triangulo’);
ELSE
IF num_lados = 4 THEN
Writeln(‘Quadrado’);
ELSE
IF num_lados=5 THEN
Writeln(‘Pentagono’);

Analisando este exemplo, ressalta de imediato a sua fraca legibilidade, motivada


por várias estruturas condicionais IF encadeadas.

Além da fraca legibilidade, a estruturação lógica de um programa desta natureza


torna-se por vezes extremamente complexa.
- É por isso difícil detectar erros e corrigi-los neste tipo de estruturas.
- A estrutura CASE permite ultrapassar todas estas limitações.

Estruturas de Selecção

CASE
Uma estrutura CASE utiliza-se em situações em que seria necessário aplicar IF
encadeados.

2 Bases de Programação – Estruturas de Controlo


A estrutura CASE tem a seguinte forma:

Reformulação do exemplo anterior utilizando a estrutura CASE:


Código
Readln(num_lados);
CASE num_lados OF
3: writeln(‘Triângulo’);
4: writeln(‘Quadrado’);
5: writeln(‘Pentagono’);
End;

A instrução CASE selecciona uma instrução a ser executada com base no valor
de um a expressão chamada “o selector”.
A expressão (selector) pode ser um qualquer tipo ordinal.
 A instrução 2 é executada sempre que o valor da expressão seja um dos
valores enumerados

 A instrução3 é executada sempre que o valor da expressão esteja contido


no intervalo.

 A palavra reservada ELSE deve ser utilizada sempre que exista uma acção
ou um conjunto de acções, a concretizar quando não se verifique
nenhuma das situações inicialmente previstas.

Tendo em conta as dicas anteriores, elabore em Pascal os seguintes exercícios sobre:


 “IF… Then… Else”;
 “Case… Of”

1. Escreva um programa em que o utilizador introduza um número inteiro menor


que zero e que o programa avalie se esse número introduzido não está de
acordo com essa condição. Caso esteja deve apresentar uma mensagem de

3 Bases de Programação – Estruturas de Controlo


conformidade e de seguida apresentar o dobro do valor introduzido pelo
utilizador. Guarde o exercício com o nome Ex1_if.

2. Construa um programa que permita que o aluno introduza a classificação de


um teste. O programa Lê essa classificação e avalia se o aluno está aprovado ou
reprovado consoante o valor introduzido se for inferior ou superior a 10.
Guarde o exercício com o nome Ex2_if.

3. Elabore um programa que permita avaliar e dizer se um número introduzido


pelo utilizador é par ou impar. Guarde o exercício com o nome Ex3_if.

A. Desenvolva um programa que permita que o computador determine qual é o


maior entre três números, introduzidos pelo utilizador. (Nível elevado) Guarde
o exercício com o nome Ex_extraIf.

4. Escreva um programa que tenha o seguinte output:

Guarde o exercício com o nome Ex4_Case.


5. Modifique o programa anterior, para uma variável de controlo do tipo carácter.
Guarde o programa com o nome Ex5_Case.

6. Constrói um programa que permita verificar o nível de classificação qualitativa


de um determinado teste. (Os níveis são: 0 a 4 – nível mau; 5 a 9 – nível
medíocre; 10 a 13 – nível suficiente; 14 a 17 – nível bom; 18 a 20 – nível muito
bom). Caso o utilizador inserir outro tipo de classificação, deverá ser imprimido
a informação de que o nível não é atribuído. Guarde o programa com o nome
Ex6_Case. (Envie o programa para o email: mariajoao.g.pires@gmail.com)

4 Bases de Programação – Estruturas de Controlo

Você também pode gostar