Esta é uma pré-visualização de arquivo. Entre para ver o arquivo original
Uesb – Introdução à Ciência da Computação - Linguagem Pascal
Prof.Fabrício Sousa Página 1 de 11
Uesb- Universidade Estadual do Sudoeste da Bahia
Linguagem
Pascal
Curso:Licenciatura em Física
Disciplina: Introdução à Ciência da Computação
Semestre: 7º
Prof.Esp. Fabrício de Sousa Pinto
2008
Uesb – Introdução à Ciência da Computação - Linguagem Pascal
Prof.Fabrício Sousa Página 2 de 11
INDÍCE
CAPITULO I - Introdução ............................................................................... 2
1.1 A LINGUAGEM PASCAL ...................................................................................... 2
1.2 COMPILADOR..................................................................................................... 2
1.3 AMBIENTE DE DESENVOLVIMENTO............................................................ 3
CAPITULO II – Sintaxe Básica....................................................................... 3
1 ALGORITMO .......................................................................................................... 3
2 SINTAXE DA LINGUAGEM PASCAL ......................................................................... 3
3 VARIÁVEIS ............................................................................................................ 4
3.1 TIPOS DE VARIÁVEIS .......................................................................................... 4
3.1.1 Variáveis Numéricas.................................................................................. 4
3.1.2 Variáveis Alfanuméricas............................................................................ 4
3.1.3 -Variáveis Lógicas..................................................................................... 5
4 OPERADORES ARITMÉTICOS .................................................................................. 5
5 OPERADORES RELACIONAIS .................................................................................. 5
6- OPERADORES LÓGICOS ........................................................................................ 5
7 EXPRESSÃO DE ATRIBUIÇÃO DE VALORES ............................................................ 5
8 PONTO E VÍRGULA ................................................................................................ 5
9 INÍCIO E FIM DO PROGRAMA .................................................................................. 5
10 COMENTÁRIOS .................................................................................................... 6
11 COMANDO DE ENTRADA DE DADOS..................................................................... 6
12 COMANDO DE SAÍDA DE DADOS .......................................................................... 6
13 PRIMEIRO PROGRAMA EM PASCAL....................................................................... 6
CAPITULO III – Estruturas ............................................................................. 7
1 ESTRUTURA DE DECISÃO....................................................................................... 7
1.1 Estrutura Condicional Simples.................................................................... 7
1.2 ESTRUTURA CONDICIONAL COMPOSTA.............................................................. 8
2 ESTRUTURA DE REPETIÇÃO – WHILE - DO ............................................................. 8
2.1 Interrupção no inicio .................................................................................... 8
3 ESTRUTURA DE REPETIÇÃO – FOR-TO-DO ............................................................. 9
4 ESTRUTURA DE REPETIÇÃO – FOR-DOWNTO-DO ................................................... 9
5 ESTRUTURA DE REPETIÇÃO – REPEAT-UNTIL ...................................................... 10
6 COMANDO CASE.................................................................................................. 10
7 RESUMO .............................................................................................................. 11
8 EXERCÍCIOS......................................................................................................... 11
CAPITULO I - Introdução
1.1 A Linguagem Pascal
A linguagem Pascal foi desenvolvida em 1968 pelo professor
Niklaus Wirth, na Suíça. Seu nome é em homenagem ao matemático
e filosofo, Blaise Pascal, que inventou a primeira calculadora
mecânica.
A escolha da linguagem Pascal é em virtude de sua
simplicidade, facilidade e legibilidade, tornando-a bem didática. Outra
motivação é em virtude de ser um curso técnico, será pré-requisito
para o aprendizado da programação em Delphi® nos próximos anos.
Pascal é uma linguagem de programação estruturada.
1.2 Compilador
Um computador não pode entender nem tão pouco executar
instruções em linguagens de alto nível. Ele só entende linguagem de
máquina. Desta forma, os programas em linguagens de alto nível
devem ser traduzidos antes de serem executados pelo computador.
Quem faz essa tradução são os programas tradutores: o interpretador
e o compilador. Os dois aceitam como entrada um programa em
linguagem de alto nível (código fonte) e produzem como saída um
programa em linguagem de máquina (objeto). A diferença entre eles
está na forma de executar a tarefa de tradução. O interpretador traduz
para a linguagem de máquina e roda uma linha por vez, até que todo
programa seja executado. Já o compilador traduz para a linguagem de
máquina todo o programa fonte e só então ele é executado.
Uesb – Introdução à Ciência da Computação - Linguagem Pascal
Prof.Fabrício Sousa Página 3 de 11
1.3 Ambiente de Desenvolvimento
Pascal é uma linguagem compilada, embora um dos
compiladores mais utilizado seja o Turbo Pascal®, adotaremos o Dev-
Pascal®, versão freeware, por causa de sua interface gráfica
amigável.
Após a digitação do código fonte, o programa deverá ser
compilado, caso tenha erros será exibidos, e posteriormente quando
eliminarmos todos, estará pronto para execução. Abaixo temos a
janela do Dev-Pascal®
Os arquivos em Pascal possui a extensão .pas
Aconselhamos ao programador o uso da endentação (recuos)
sempre que possível, possibilitando uma maior legibilidade do código-
fonte. Além disso é interesse a inserção de comentário com
informações úteis para o programador. Como sabemos não existe
melhor forma de aprendizagem do que praticando, então como
programador implemente o máximo de programas possível e
alcancará o sucesso!
CAPITULO II – Sintaxe Básica
1 Algoritmo
Descrição passo-a-passo para solucionar um problema.
Ex.: Receita de um bolo.
Ex.1: Fazer um algoritmo para calcular o volume de um cubo.
Algoritmo Volume_Cubo
Variáveis
Altura, comprimento, largura Tipo Real;
Inicio
Escreva (‘Informe a altura’)
Leia (altura)
Escreva (‘Informe a largura’)
Leia (largura)
Escreva (‘Informe o comprimento’)
Leia (comprimento)
Volume <- altura*comprimento*largura
Escreva (‘O volume do cubo eh:’, volume)
Fim
O computador não entende a linguagem natural utilizada na
descrição dos algoritmos, utilizaremos a linguagem de alto nível
Pascal para implementarmos os programas.
2 Sintaxe da linguagem Pascal
Um programa em Pascal é inicializado com a palavra reservada
program seguido do nome do programa e um ponto e vírgula (;)
program nome_do_programa ;
Ex2.: program teste;
Uesb – Introdução à Ciência da Computação - Linguagem Pascal
Prof.Fabrício Sousa Página 4 de 11
3 Variáveis
O próximo passo é a declaração das variáveis que serão
utilizados no programa.
Var nome(s)_da(s)_variável(is): tipo ;
Caso tenha mais de uma variável, elas devem vir separadas
por virgula (,).
O tipo das variáveis são os valores que podem ser atribuídos a
essas variáveis, como por exemplo, real, inteiro, etc.
Ex.3:
var
nota : real;
codigo : integer;
Quando declaramos uma variável estamos alocando um
espaço na memória para armazenar o valor que aquela variável
possuirá.
No Turbo Pascal a declaração de variáveis é obrigatória no
início do programa pois, caso isso não acorra, o compilador acusará
erro de compilação.
Não é permitido o uso de acentos nos identificadores.
Ex.4: Declarar a variável inteira A, real B e booleana C.
Var
A : integer;
B : real;
C : boolean;
Na declaração de uma variável string, necessita-se informar a
sua máxima extensão. Esta declaração da extensão reserva uma área
fixa na memória para o processamento.
Ex.5: A variável string R com 13 caracteres, seria assim declarada:
Var
R : string[13];
Para declarar mais de uma variável do mesmo tipo, pode-se proceder
das duas seguintes formas:
Var
x, y, z : integer;
ou
Var
x : integer;
y : integer;
z : integer;
3.1 Tipos de Variáveis
3.1.1 Variáveis Numéricas
integer - Números inteiros entre -32768 e 32767.
real - Números reais de 11 algarismos significativos.
byte - Números inteiros entre 0 e 255.
3.1.2 Variáveis Alfanuméricas
string - Caracteres alfanuméricos entre apóstrofos.
char - String de apenas um caractere entre apóstrofos.
Uesb – Introdução à Ciência da Computação - Linguagem Pascal
Prof.Fabrício Sousa Página 5 de 11
3.1.3 -Variáveis Lógicas
boolean - Assume apenas valores booleanos, que são:
true (verdadeiro) ou false (falso).
4 Operadores Aritméticos
Operador Significado
+ Soma
- Subtração
/ Divisão
* Multiplicação
Div Divisão inteira
Mod Resto da divisão
5 Operadores Relacionais
Operador Significado
= Igual a
> Maior que
< Menor que
>= Maior ou igual a
<= Menor ou igual a
<> Diferente
6- Operadores Lógicos
Operador Significado
not negação
and e
or ou
xor ou exclusivo
7 Expressão de Atribuição de Valores
Utilizamos o simbolo := (dois pontos igual) para atribuímos um
determinado valor à uma variável.
Ex6:
A:=B+5;
O símbolo := equivale a uma flecha ( <- ), no algoritmo,
indicando que é uma atribuição, ou seja, será armazenado na variável
A o valor de B+5.
8 Ponto e Vírgula
O ponto e vírgula no Turbo Pascal indica o fim do comando e sua
presença é obrigatória.
9 Início e fim do Programa
Todos os programas em Turbo Pascal devem começar e terminar
desse modo:
Ex.7:
program Exemplo;
...
begin
...
end.
O "program" indica o início do programa;
"Exemplo" é um nome qualquer dado ao programa;
"begin" indica o início e “end" o fim do programa.
Uesb – Introdução à Ciência da Computação - Linguagem Pascal
Prof.Fabrício Sousa Página 6 de 11
10 Comentários
Comentário é uma informação utilizada pelo programador para
comentar partes do código fonte é que irá apenas auxilia-lo, sendo
ingnorado pelo compilador.
Os comentários devem ser escritos entre chaves , {....} ou
parênteses com asterisco - (*....*). Não há necessidade de terminar a
linha do comentário com ponto e vírgula.
Ex.8:
{Exemplo de como escrever um comentário}
(* Pode-se escrever também desta foram *)
11 Comando de Entrada de dados
read – Utilizado para leitura dos dados digitados pelo usuário. É
seguido por um parênteses e a variável deverá vir entre parênteses ( ‘
).
readln – Diferencia do anterior, pelo fato de mudar de linha após a
leitura da informação.
Ex.9:
readln(altura) ;
OBS.: Quando for necessário mais de uma entrada read ou readIn, os
dados a serem digitados não devem ser separados por vírgulas
e sim por espaço.
Ex.10:
readln(comprimento,largura,altura);
É conveniente pedir apenas uma entrada de dado por cada comando
read ou readIn, para que não ocorra inconvenientes na entrada de
textos.
12 Comando de Saída de dados
write – Imprime na tela uma determinada informação para o usuário. É
seguido por um parênteses e a mensagem deverá vir entre aspas
simples ( ‘ ).
writeln - Diferencia do anterior, pelo fato de mudar de linha após a
exibição da informação.
Ex.11
Writeln (‘Digite a altura do cubo’) ;
OBS.: Quando usado o comando writeIn sem mensagem ou variáveis
a serem impressas, ocorre-se apenas mudança de linha.
Ex.12
Writenln(‘’);
13 Primeiro programa em Pascal
Antes de vermos o primeiro programa em Pascal, iremos
comentar sobre a função readKey(); ela será utilizada para que a
janela do Dos não feche automaticamente após a execucao do
programa, aguardando que o usuário digite um tecla qualquer para
fechá-la. Para usarmos essa função devemos incluir a biblioteca Uses
Crt; no inicio do programa.
Ex.13- Fazer um programa para calcular o volume de um cubo.
Uesb – Introdução à Ciência da Computação - Linguagem Pascal
Prof.Fabrício Sousa
Página 7 de 11
Program Volume_Cubo;
Uses Crt;
var
comprimento, largura, altura, volume : real;
begin
writeln('Digite o comprimento');
readln(comprimento);
writeln('Digite a largura');
readln(largura);
writeln('Digite a altura');
readln(altura);
volume:=altura*comprimento*largura;
writeln(’O volume do cubo eh:’, volume, ‘cm3’);
readKey();
end.
O resultado do programa acima ficaria assim no vídeo, por exemplo,
caso digite-se, 4 , 5 e 3:
O volume do cubo eh: 60 cm3
CAPITULO III – Estruturas
1 Estrutura de Decisão
1.1 Estrutura Condicional Simples
if condição
then begin
seqüência A de comandos
end;
onde:
if- then – são palavras reservadas;
condição – é uma expressão lógica.
A seqüência A de comandos só será executada caso a
condição seja verdadeira.
O begin e end são obrigatórios apenas, caso exista mais de
um comando.
Ex: 14
Program Condicional;
Uses Crt;
Var
a, b, c : integer;
if (a+b) < c
then writeln ( ‘ A soma de A com B eh
menor do que C’);
Readkey();
end.
Uesb – Introdução à Ciência da Computação - Linguagem Pascal
Prof.Fabrício Sousa Página 8 de 11
1.2 Estrutura Condicional Composta
If condição
then begin
Sequência A de commandos
end
else begin
Sequência B de commandos
end;
Na estrutura de decisão composta em PASCAL, é necessário
tomar alguns cuidados. O comando end que precede o else do
exemplo abaixo, não deve levar ponto e vírgula. O ponto e vírgula ali
posicionado, indicaria que já chegou ao fim da atuação do comando if
anterior. Portanto, somente o segundo e último end deve receber o
ponto e vírgula. Veja o exemplo a seguir:
Ex.15:
Program Maior_ Dez;
{Estrutura de Decisão Composta}
Uses Crt;
var
valor : real;
begin
writeln ( 'Digite um Valor: ');
readln(valor)
if (valor > 10) then
begin
writeln('O valor é maior que 10');
end
else
begin
writeln('O valor é menor do que 10');
end;
readKey();
end.
Exercício 1: Escreva um programa que leia um número menor que
100 , e caso a informação seja digitada corretamente exiba a
mensagem: ‘ Valor digitado corretamente’, caso contrário, exiba : ‘O
valor foi digitado incorretamente’.
Exercício 2: Fazer um programa que leia três valores inteiros ,
determine e imprima o menor deles.
Exercício 3 : Implemente um programa que leia os três lados de um
triangulo é determine se o mesmo é eqüilátero, isósceles ou escaleno.
2 Estrutura de Repetição – While - do
2.1 Interrupção no inicio
while condição C do
begin
seqüência B de comandos.
end.
Onde:
While – do – são palavras reservadas
Condição C – é a expressão lógica.
A seqüência de comandos B será repetida enquanto a
condição C for verdadeira. Quando a condição for falsa,o laço não
será mais executado e o que vier após o end será executado.
Caso tenha um único comando, o begin e end podem ser
omitidos.
Uesb – Introdução à Ciência da Computação - Linguagem Pascal
Prof.Fabrício Sousa Página 9 de 11
Ex.16:
program SomaPares;
Uses Crt;
var Soma, par : integer ;
begin
soma:=0;
par:=100;
while par <=200 do
begin
soma:= soma + par;
par:= par + 2;
end;
writeln(‘ A soma eh: ‘, soma);
ReadKey();
end.
3 Estrutura de Repetição – For-to-do
for variável_ de_controle := valor_inicial to valor_final do
begin
seqüência B de comandos
end
onde:
for- to – do – são palavras reservadas
variável_ de_controle – é o nome da variável
valor_inicial – é o primeiro valor que a variável de controle assume.
valor_final - é o valor máximo que a variável de controle pode
assumir.
Nessa estrutura a variável de controle recebe o valor inicial;
verificada se ela ultrapassa o valor final; se não ultrapassa, a
seqüência B de comandos é executada; a seguir , a variável de
controle recebe o valor sucessor; verifica se ele ultrapassa o valor
final ; se não ultrapassa , a seqüência B de comandos é executada ;
e assim sucessivamente.
Ex.17:
program SomaPares;
Uses Crt;
var Soma, N : integer ;
begin
for N:=50 to 100 do
Soma:= Soma + 2*N;
writeln(‘ A soma eh: ‘, soma);
ReadKey();
end.
Exercício 4 : Fazer um programa para calcular e imprimir os valores
numéricos de 1 a 10.
4 Estrutura de Repetição – For-downTo-do
for variável_ de_controle := valor_inicial downTo valor_final do
begin
seqüência B de comandos
end
A única diferença entre for-to-do e for-downTo-do é que no
primeiro á variável é incrementada(aumentada em uma unidade) até
o valor máximo, enquanto que no segundo a variável é decrementada
(diminuída em uma unidade), até atingir o valor mínimo.
Uesb – Introdução à Ciência da Computação - Linguagem Pascal
Prof.Fabrício Sousa Página 10 de 11
Ex.18:
program SomaPares;
Uses Crt;
Var
Soma, N : integer ;
begin
Soma:=0;
for N:=100 downTo 50 do
Soma:= Soma + 2*N;
writeln(‘ A soma eh: ‘, soma);
ReadKey();
end.
5 Estrutura de Repetição – repeat-until
repeat
seqüência A de comandos
until condição
Onde:
Repeat-until – são palavras reservadas
Condição – é a expressão lógica.
Nessa estrutura, a seqüência A de comandos será repetida até
enquanto a condição for verdadeira. Quando for falsa, a repetição é
interrompida, e a seqüência de comandos, que vier logo após a
estrutura, passa a ser executada.
Ex.19:
program SomaPares;
Uses Crt;
var Soma, Par : integer ;
begin
Soma:=0;
Par:=100;
repeat
Soma:= Soma + Par;
Par:= Par + 2;
Until Par > 200;
writeln(‘ A soma eh: ‘, soma);
ReadKey();
end.
Exercício 5 : Implemente um programa que só termina quando for
digitado um número negativo.
6 Comando Case
O comando case é extremamente importante para
estruturação de um programa que possua diversas opções de
execução, tomando-o bem legível e estruturado, evitando o uso
repetido do if.
Para a execução de um determinado comando CASE,
somente uma dessas seções será selecionada. A seleção está
baseada numa série de testes de comparação, sendo todos
executados sobre um valor desejado. A estrutura CASE também é
chamada de seleção múltipla.
Uesb – Introdução
à Ciência da Computação - Linguagem Pascal
Prof.Fabrício Sousa Página 11 de 11
Ex.20:
Program Prog06;
Uses Crt;
var
valor : integer;
begin
write('Digite um no. inteiro entre 1 e 4');
readln(valor);
case valor of
2 : begin
writeln('Número Digitado = Dois');
end;
3 : begin
writeln('Número Digitado = Três');
end;
4 : begin
writeln('Número Digitado = Quatro');
end;
end; {case}
ReadKey();
end.
Exercício 6: Escreva um programa em que o usuário digite o número
do mês e exiba o mês corresponde por extenso. Caso seja um
número inválido informar ao usuário.
7 Resumo
Os três tipos de comandos de controle de repetição devem ser
utilizados visando às seguintes características:
- Comando for:
Utiliza-se no caso de saber o número de repetições antecipadamente
e o passo de incremento ou decremento for sempre 1. Não se deve
alterar o valor da variável de controle.
- Comando repeat:
Controla a condição de repetição após sua execução. Este comando é
sempre executado pelo menos uma vez.
- Comando while:
Controla a condição de repetição antes da sua execução. Pode
ocorrer situações em que o comando while não seja executado.
8 Exercícios
Exercício 7: Implementar um programa em Pascal que leia
quatros notas de uma determinada disciplina e calcule sua média.
Exercício 8: Fazer um programa para calcular a área de um
triângulo.
Exercício 9: Fazer um programa que leia três números e calcule
a soma do quadrado desses números.
Exercício 10: Implementar um programa que leia números
inteiros e retorne o maior deles.
Exercício 11: Fazer um programa que faça a conversão de graus
Fahrenheit para centígrados ( C=5/9 (F-32) )
CASE valor OF
Opcao1: comando 1;
Opcao2: comando 2;
...
OpcaoN: comando N;
ELSE
Comandos;
END;