1. A Linguagem pascal
Program NomedoPrograma;
Var
{declaraes de variveis}
Begin
{comandos do programa}
End.
Grupo da disciplina 1
Fundamentos de pascal Parte 1
1.2 IDENTIFICADORES
CONST <identificador>=<valor>;...;<identificador>=<valor>;
EXEMPLO:
CONST
BRANCO = ' ';
PI = 3.1416;
MAX = 10;
OK = TRUE;
1.4 VARIVEIS
Grupo da disciplina 2
Fundamentos de pascal Parte 1
VAR
<lista-de-identificadores> : <tipo>;
...
<lista-de-identificadores> : <tipo>;
Onde:
<lista-de-identificadores> uma lista de variveis de um mesmo tipo, separadas
por vrgula.
<tipo> o nome de um dos tipos predefinidos ou criado pelo programador.
EXEMPLO:
VAR
X,Y,Z : REAL;
I,J : INTEGER;
ACHOU : BOOLEAN;
LETRA : CHAR;
Grupo da disciplina 3
Fundamentos de pascal Parte 1
a) INTEIRO (INTEGER)
Toda e qualquer informao numrica que pertena ao conjunto dos nmeros
inteiros relativos. Exemplos: a idade de uma pessoa, o nmero de degraus de
uma escada, o nmero de filhos de uma pessoa, a altura de uma pessoa (em
centmetros), etc.
Declarao:
Grupo da disciplina 4
Fundamentos de pascal Parte 1
No exemplo acima foi declarada uma varivel do tipo INTEIRO que atende pelo
nome de "NUMERO"
A partir da verso 5.0 do Turbo Pascal passaram a existir tambm outros tipos de
nmeros inteiros: SHORTINT, BYTE, WORD e LONGINT.
b) Real (real)
Declarao:
No exemplo acima foi declarada uma varivel do tipo REAL com o nome de
"SALRIO".
A partir da verso 5.0 passaram a existir tambm outros tipos de nmeros reais:
SINGLE, DOUBLE, EXTENDED e COMP.
Grupo da disciplina 5
Fundamentos de pascal Parte 1
c) Caracter (char)
Declarao:
No exemplo acima foi declarada uma varivel do tipo CHAR com o nome
"SEXO"
d) Booleano (boolean)
Declarao
FLAG : BOOLEAN
Declarao
FLAG : BOOLEAN
2.2 ESTRUTURADOS
Grupo da disciplina 6
Fundamentos de pascal Parte 1
valor do tipo string deve ser delimitado por um par de aspas. Exemplo: MLI 84-
62, 110252718K.
Declarao
Var nome: String[10];
3. COMANDOS BSICOS
3.1 ATRIBUIO
Sintaxe:
O comando de atribuio tem a forma:
<identificador> := <expresso>
Exemplos:
A := 2 NOME := 'Joo' A := B + C
B := A SENHA := 'Y9' NOTA := NOTA - 1
NOTA := 10 C := 1 / 3 X := 2.5
Exemplos:
Var
I : Integer;
R : Real;
S : String;
Grupo da disciplina 7
Fundamentos de pascal Parte 1
C : Char;
Begin
I := 5;
R := I;
C := 'A';
S := C
End.
3.2 ENTRADA
EXEMPLOS:
Grupo da disciplina 8
Fundamentos de pascal Parte 1
3.3 SADA
EXEMPLO:
A:=1; B:=2;
writeln ('Soma de ',A,' e ',B,' = ',A+B);
EXEMPLO:
MEDIA := (8.0 + 2.0) / 2
writeln (MEDIA); {sada 5.0000000000E+00}
writeln (MEDIA:5:2); {sada 5.00}
Grupo da disciplina 9
Fundamentos de pascal Parte 1
EXEMPLO:
Uses PRINTER;
:::
writeln (LST, 'Media = ', MEDIA:5:2);
EXEMPLOS:
writeln('Digite o Nome:');
readln(NOME);
writeln('Digite as 3 Notas:');
readln(NOTA1,NOTA2,NOTA3);
4. Estruturas de deciso
No Pascal, existem trs tipos de estrutura de deciso: O comando IF, que pode
ser utilizado de duas formas: simples ou composto; e o comando CASE, que
utilizado para uma deciso seletiva.
Grupo da disciplina 10
Fundamentos de pascal Parte 1
No deve haver um terminador (;) antes do ELSE. Caso haja mais de uma
instruo antes do ELSE, estas devem ser delimitadas por BEGIN e END (sem
o ; apos o end).
EXEMPLO 1:
program EXEMPLO_DE_IF_THEN;
{Ler um nmero inteiro e exib-lo se for positivo}
var
N : integer;
begin
readln(N);
if N > 0 then
writeln(N)
end.
EXEMPLO 2:
program EXEMPLO_DE_IF_THEN_ELSE;
{L um nmero e determinar se maior que zero ou no}
var
Grupo da disciplina 11
Fundamentos de pascal Parte 1
N : integer;
begin
readln(N);
if N > 0 then
writeln (N,' maior que zero' )
else
writeln (N,' no maior que zero')
end.
EXEMPLO:
program EXPRESSAOARITMETICA_USANDO_DECISAO_IF_THEN_ELSE;
{Este programa deve receber 2 operandos x, y e 1 operador +, -, * ou /}
Uses CRT;
var
X,Y : integer;
OP : char;
begin
clrscr;
write('Digite os operandos: ');
readln(X,Y);
write('Digite o operador: ');
readln(OP);
If OP ='+' then writeln(X + Y)
Else
If op = '-' then writeln(X - Y)
Else
If (op ='*') or (op = 'x') or (op = 'X') then writeln(X * Y)
Else
If op= '/' then writeln(X/Y)
Else writeln('operao invlida');
End {case};
readln;
End.
Grupo da disciplina 12
Fundamentos de pascal Parte 1
CASE <expresso> OF
<lista-de-constantes-1> : <comando-1>;
<lista-de-constantes-2> : <comando-2>;
...
[ELSE <comando-n>;]
END;
A <expresso> deve resultar um tipo escalar (outros tipos que no sejam o REAL
e o STRING). A <lista-de-constantes-x> devem conter uma ou mais constantes
(separadas por vrgula), e devem ser do mesmo tipo da <expresso>. O
<comando-x> pode ser um comando simples ou composto. Se o comando for
composto, as instrues devem ser separadas por ponto e vrgula e devem estar
entre o BEGIN e END.
EXEMPLO:
program EXPRESSAOARITMETICA_USANDO_DECISAO_MLTIPLA;
{Este programa deve receber 2 operandos x, y e 1 operador +, -, * ou /}
Uses CRT;
var
X,Y : integer;
OP : char;
begin
clrscr;
write('Digite os operandos: ');
readln(X,Y);
write('Digite o operador: ');
readln(OP);
case OP of
'+' : writeln(X + Y);
'-' : writeln(X - Y);
'*','x','X' : writeln(X * Y);
'/' : writeln(X div Y);
else writeln('operao invlida');
end {case};
Grupo da disciplina 13
Fundamentos de pascal Parte 1
readln;
end.
Grupo da disciplina 14
Fundamentos de pascal Parte 1
EXERCCIOS PROPOSTOS
1. Defina varivel.
2. O que so identificadores?
3. Quais as regras bsicas para a formao de identificadores?
4. Assinalar os identificadores invlidos, justificando.
a) A1BC
b) XA,1d
c) NomeDoAluno
d) 198aberto
e) TO.begin
A := 0 A B C
B := 1
C := A + B
A := A + 1
B := A + B + C
12. A ordem das atribuies importante? A:=B e C:=A tem o mesmo efeito de
C:=A e A:=B ?
13. Em quais dos seguintes pares importante a ordem dos comandos?
a) X := Y b) X := Y c) X := Z d) Z := Y
Y := X Z := X X := Y X := Y
14. Escreva um programa que leia um nmero inteiro positivo e exiba o dobro do
mesmo.
Grupo da disciplina 15
Fundamentos de pascal Parte 1
17. Escreva um programa para ler uma temperatura dada na escala Fahrenheit e
exibir o equivalente em Celsius.
18. Escreva um programa para calcular e exibir a mdia ponderada de duas notas
dadas.
( nota1 = peso 6 e nota2 = peso 4 )
19. Escreva um programa que leia duas variveis inteiras e troque o contedo
entre elas.
20. Escreva um programa para calcular e exibir o valor de xy, sendo dados a base
(x) e o expoente (y).
Grupo da disciplina 16