You are on page 1of 22

09-10-2012

Estruturas de controle Aplicaes Informticas B 12 ano 2012-2013 Prof. Pedro Rodrigues

09-10-2012

Nas estruturas condicionais, os comandos s sero executados se uma condio for alcanada. Por exemplo: "multiplique se os nmeros forem diferentes de zero". O comando s ser executado se a condio "diferentes de zero" for verdadeira.
If Then [Else] Case. Of Repeat Until While Do For To

09-10-2012

A instruo IF THEN Else uma estrutura de controlo que permite, com base numa condio, decidir fazer ou no uma determinada aco ou conjunto de aces, ou ento, optar entre duas alternativas possveis. A sintaxe genrica a seguinte:

If Then [Else] program EhPar;

var numero : integer; begin write('Informe um nmero inteiro: '); readln(numero); if (numero mod 2 = 0) then // Verifica se o nmero par. begin writeln(numero, ' par!'); end else // Caso contrrio, mpar. begin writeln(numero, ' mpar!'); end; end.

09-10-2012

Fluxograma de um If Then [Else]

Fluxograma de um If Then [Else]

09-10-2012

If Then [Else]

A estrutura CASE OF uma estrutura de seleco ou escolha mltipla com base numa varivel de controlo ou selector. A sua sintaxe a seguinte

09-10-2012

09-10-2012

Pede-se um programa que leia uma nota de 0 a 20 e efectue a correspondncia entre a classificao numrica e um nvel qualitativo.
0..4 Mal 5..9 Medocre 10..13 Suficiente 14..17 Bom 18..20 Muito Bom Se nenhum dos valores anteriores Nvel invlido

Pretendesse um programa que apresente 3 opes:


1 gerar um numero aleatrio de 0 a 100; 2 gerar um numero aleatrio de 0 a 100 e calcular a raiz quadrada; 3 ler um nmero e calcular a raiz quadrada.
Os nmeros aleatrios so gerados internamente pelo computador, atravs da rotina randomize. Ex: randomize , num := random (100); Nmero ao quadrado: sqr(A) Raiz quadrada: sqrt(A)

09-10-2012

uma estrutura de repetio que coloca a sua condio de controlo no final das instrues pertencentes a esse ciclo, o que faz com que essas instrues sejam sempre executadas pelo menos uma vez, visto que, quando a condio avaliada, as instrues j foram executadas.
Sintaxe

09-10-2012

Pretende-se um programa que efectue uma soma ou somatrio de vrias parcelas a introduzir pelo utilizador, at que o valor introduzido seja Zero. Aps cada valor introduzido, apresentada a soma acumulada at ao momento. No final apresentado o nmero de valores que foram introduzido pelo utilizador. conta:=conta +1 Soma:= soma + valor

09-10-2012

Pretende-se um programa que pede a introduo de um nmero inteiro entre 0 e 100 e s se sai do ciclo quando o nmero introduzido obedece a essa condio.
Repeat Read (num) if num<0 or num>100 then write num no vlido Until num in [0..100] write o numero , num

Pretende-se que o computador gere um numero aleatrio (entre 0 e 1000) e de pedir ao utilizador que adivinhe esse nmero Em cada tentativa, o programa d uma informao sobre se o nmero escolhido maior ou menor do que o nmero introduzido.

10

09-10-2012

uma estrutura de repetio que coloca uma condio antes da realizao das instrues, o que faz com que essa instruo s sejam executadas se a condio for verdadeira.
Sintaxe

11

09-10-2012

Pretende-se um programa que pea ao utilizador que introduza vrios nmeros que iro ser adicionados cumulativamente (somatrio) at que o nmero introduzido seja ZERO, situao em que o ciclo termina.
Imprima o valor da soma. Imprima o valor mdio

Pretende-se um programa que pede quantos valores iro ser introduzidos. Depois soma e calcula a mdia dos nmeros inseridos

12

09-10-2012

uma estrutura de repetio que se baseia numa varivel de controlo - um contador automtico. Esta varivel parte de um determinado valor inicial e incrementada ou decrementada de forma automtica at um outro valor final. A diferena entre os referidos valores iniciais e finais determina o nmero de vezes que o ciclo ser executado.
Sintaxe

13

09-10-2012

Pretende-se um programa que pergunte ao utilizador quantos valores pretende introduzir. O programa vai somar os valores e calcular a sua mdia.

Pretende-se um programa que calcule e apresente o valor da potencia de uma base e expoente a indicar pelo utilizador. Pretende-se um programa imprima os divisores de um nmero indicado pelo utilizador. Pretende-se um programa que pergunte ao utilizador quantos valores pretende introduzir, e imprima o maior e o menor.

14

09-10-2012

Subalgoritmos so as partes em que um algoritmo pode ser dividido. Em programao um subalgoritmo pode ser designado por subprograma. Tipos:
Procedimentos Funes

Procedure um subprograma ou rotina que efetua um determinado conjunto de tarefas.

Exerccio: Escreva um programa que depois de ler um valor, calcula os respectivos mltiplos.

15

09-10-2012

Varivel global pode ser usada em todo o programa, no s no programa principal mas tambm nos subprogramas. Varivel local s pode ser utilizada dentro desse subprograma em que foi declarada.

16

09-10-2012

Uma funo tem uma estrutura semelhante de um procedimento, apenas com uma diferena essencial: uma funo devolve sempre um determinado resultado no momento em que for chamada ou utilizada.

Exerccio: Escreva um programa que depois de ler duas palavras (tipo password), vai verificar se so iguais (se coincidem as duas).

Function (funo)

17

09-10-2012

Os Parmetros so elementos semelhantes s variveis, mas que so inseridos nos cabealh0s dos subprogramas (funes ou procedimentos)

Os valores indicados no lugar dos parmetros , quando se faz uma chamada a um subprograma, so chamados Argumentos (pode ser um valor, expresso ou varivel).

18

09-10-2012

19

09-10-2012

Os arrays so variveis, identificados por um nome, em que contm um conjunto de elementos do mesmo tipo. Os arrays podem ser de dois tipos:
Arrays unidimensionais Arrays bidimensionais

Um array um tipo de estruturado que pode agrupar numa mesma varivel um conjunto de valores do mesmo tipo. Declarao de uma varivel
VAR <nome>:ARRAY[<limite>] OF <tipo-base>

20

09-10-2012

As Matrizes tm duas dimenses, utilizando, por isso, duas variveis de ndice, uma para a linha e outra para a coluna, para o acesso aos seus elementos.
A sua representao grfica corresponde a uma tabela de dupla entrada (linhas x colunas).

21

09-10-2012

22

You might also like