Algoritmos e
Programação
Thyago Maia Tavares de Farias
Aula 18
Sumário

Pascal – Estruturas de Repetição


Comando While (exercícios);
Revisão de conteúdo (2º estágio);
Exercícios


Utilizando a estrutura de repetição while, faça
um programa que escreva todos os números
entre 0 e 100;
Faça um programa que repita as seguintes
tarefas, até que um número negativo seja
digitado:
Receba um número;
 Eleve o mesmo ao quadrado, utilizando a função
SQR(), e exiba o resultado;

Revisão

Tipos de Variáveis:





Integer (Equivalente ao tipo inteiro em algoritmos)
 1,3,4,6,8, etc.;
Real (Equivalente ao tipo real em algoritmos)
 2.3, 5.4, 7.9, etc.;
Boolean (Equivalente ao tipo lógico em algoritmos)
 True (verdadeiro) ou False (falso);
String (Equivalente ao tipo literal em algoritmos)
 ‘Thyago’, ‘José’, etc. (Delimitados por aspas simples);
Char (Literais de um único caracter)
 ‘a’, ‘f’, ‘g’, etc.;
Revisão

Regras para a criação de identificadores (nomes)
de variáveis:
Não devem ser extensas demais;
 Caracteres permitidos: números, letras e sublinhado;
 Primeiro caractere é sempre uma letra;
 Identificadores não podem se repetir;
 Não são permitidos caracteres em branco;
 Não são permitidos caracteres especiais;
 Não podemos utilizar palavras reservadas em nomes
de variáveis;

Revisão

Operador de atribuição:
:= (Equivalente ao operador <- em algoritmos);
 Ex.: campeao := ‘Sport Recife’;
quant_titulos := 44;
media_gols := 2.34;
sempre_vence := true;
 OBS: A variável e o seu valor devem ser do mesmo
tipo, exceto nos seguintes casos:

Variáveis reais podem receber valores inteiros;
 Variáveis String podem receber valores char;

Revisão

Comandos de entrada
Read(variavel);
 Readln(variavel);
 Utilizados para receber dados do usuário;
 Funcionamento similar ao comando leia em
algoritmos;

Revisão

Comandos de saída
Write();
 Writeln();
 O comando Write é similar ao comando escreva em
algoritmos;
 O comando Writeln é similar ao comando escreval
em algoritmos;
 Utilizado para exibir textos ou conteúdo de variáveis;

Revisão

Exemplo - Cálculo de massa corporal (IMC) de uma
pessoa:
Revisão
Operador
Exemplo
Comentário
:=
X := 1
O valor 1 é atribuído a variável X.
+
X+Y
Soma o conteúdo de X e de Y.
-
X–Y
Subtrai o conteúdo de Y do conteúdo de X.
*
X*Y
Multiplica o conteúdo de X pelo conteúdo de Y.
/
X/Y
Obtém o quociente da divisão de X por Y.
DIV
X DIV Y
Obtém o quociente inteiro da divisão de X por Y.
MOD
X MOD Y
Obtém o resto da divisão inteira de X por Y.
=
X=Y
Testa se o conteúdo de x é igual ao conteúdo de Y.
<>
X <>
Testa se o conteúdo de x é diferente do conteúdo de Y.
>=
X >= Y
Testa se o conteúdo de x é maior ou igual ao de Y.
<=
X <= Y
Testa se o conteúdo de x é menor ou igual ou de Y.
>
X>Y
Testa se o conteúdo de x é maior do que o conteúdo de Y.
<
X<Y
Testa se o conteúdo de x é menor do que o conteúdo de
Y.
Revisão
Funções Matemáticas
Função
Comentários
ABS (x)
Obtém o valor absoluto de x.
LOG(x)
Obtém o logaritmo de x.
TRUNC (x)
FRAC(x)
ROUND (x)
Obtém a parte inteira do número real armazenado em x.
Obtém a parte fracionária do número real armazenado em x.
Arredonda x.
SIN (x)
Calcula o seno de x.
COS (x)
Calcula o cosseno de x.
PI
SQRT (x)
SQR (x)
Retorna o valor de ¶
Calcula a raiz quadrada de x.
Calcula x elevado ao quadrado.
INC (x, Y)
Incrementa a variável x com o valor da variável Y.
DEC (x,y)
Decrementa a variável x com o valor da variável Y
Revisão

Estrutura condicional IF
Uso e funcionamento semelhante a estrutura SE em
algoritmos;
If (condição) then
 Sintaxes:
Begin

If (condição) then
Begin
comando_1;
comando_2;
...
End;
comando_1;
comando_2;
...
End
Else
Begin
...
End;
Revisão

Exemplo – Através da massa corporal, dizer se
uma pessoa é abaixo do peso, peso normal,
acima do peso ou obesa:
Se IMC for abaixo de 18.5, a pessoa está abaixo do
peso;
 Se IMC for entre 18.5 e 25, a pessoa possui peso
normal;
 SE IMC for entre 25 e 30, a pessoa está acima do
peso;
 Se IMC for acima de 30, a pessoa é obesa;

Revisão
Revisão

Estrutura condicional CASE
Estrutura condicional de seleção múltipla;
 Funcionamento similar a estrutura IF e a estrutura
Escolha...caso em algoritmos;
 Trata várias condições ao mesmo tempo;
 Trata condições genéricas;
 Estrutura mais legível e organizada que o IF;

Revisão

Sintaxe da estrutura CASE:
CASE variavel OF
valor_1: comando(s);
valor_2: comando(s);
valor_3: comando(s);
...
else comando(s);
end;
Revisão

Exemplo: Faça um programa em Pascal que gera
a seguinte pergunta ao usuário: ‘Quem descobriu
o Brasil?’ e as seguintes questões de múltipla
escolha: a – Obina, b – Lula, c – Princesa Isabel,
d – Pedro A. Cabral, e – NDA. O programa
deverá ler a resposta do usuário (a,b,c,d ou e),
escrever a opção escolhida e se acertou ou não a
questão;
Revisão
Revisão

Estrutura de repetição FOR

Sintaxe:
FOR variavel := val_inicial TO val_final DO
Begin
comando_1;
comando_2;
...
End;
Revisão

Exemplo – Faça um programa que escreva os
números entre 0 e 300;
Revisão - While..do


Funcionamento similar ao comando
enquanto...faca em algoritmos;
Sintaxe:
while (condição) do
begin
comando_1;
comando_2;
...
end;
Revisão

Exemplo - Faça um programa que sempre
recebe números inteiros e conta quantos
números foram iguais a 2. Caso o usuário digite
o número 0, o programa deverá parar de
receber valores e exibir quantos números foram
iguais a 2;
Revisão
Exercícios

Faça um programa que repita as seguintes
tarefas, até que a palavra ‘nao’ seja digitada:
Leia a distância percorrida por um atleta;
 Leia o tempo que o atleta levou para percorrer a
distância;
 Calcule e exiba sua velocidade média:



Velocidade = distancia / tempo;
Pergunte ao usuário se o mesmo quer continuar a
executar o programa (o usuário responderá ‘sim’ ou
‘nao’);
Exercícios

Faça um programa que repita as seguintes
tarefas, até que o código 0 seja digitado:
Leia o código do produto;
 Leia a quantidade adquirida;
 Se o código for 1, escreva ‘Caderno – R$ 12.00’; Se
for 2, escreva ‘Régua – R$ 2.50’; Se for 3, escreva
‘Borracha – R$ 0.25’; Se for 4, escreva ‘Mochila – R$
50.00’;
 Calcule e exiba o total a ser pago (valor *
quantidade);
