SlideShare una empresa de Scribd logo
1 de 34
Descargar para leer sin conexión
INTRODUÇÃO A
LINGUAGEM PASCAL
Profº.: Tácito Henrique
tacito.graca@gmail.com
CEMA – Centro Educacional Miguel Alves
Introdução
• Para que um algoritmo possa ser executado em um
computador ele deve ser primeiramente descrito através
de uma linguagem de programação;
• A linguagem de programação é apenas um meio de
comunicação entre dois interlocutores, o programador e o
processador;
Introdução
• A linguagem de programação possui regras sintáticas e
semânticas que devem ser seguidas para que a
mensagem que se deseja passar seja compreendida.
• Regras Sintáticas É a forma de escrever
• Regras Semânticas É o sentido do que se escreve
Introdução
• Quando os algoritmos são escritos na linguagem, ainda
são textos, eles precisam ser convertidos em um formato
que o processador entenda
• O processador de um computador apenas entende bits, 1
e 0.
• Para fazer a tradução do nosso programa para uma
linguagem de máquina, existem os compiladores.
Introdução
• Os compiladores por sua vez, criam uma “versão” em
linguagem de
máquina do
nosso programa
Níveis de Linguagem
• Linguagens de alto nível
• Linguagens expressivas próximas a linguagem oral
• Não estão diretamente relacionadas com a arquitetura do computador,
não é necessário conhecer as características do processador, como
instruções e registradores
• Também conhecidas como linguagens declarativas
• Exemplos:
• ASP
• ACTION SCRITP
• C/C++
• C#
• Pascal / OBJECT Pascal
• Java
• PHP
• Basic / Visual Basic
Níveis de Linguagem
• Linguagens de baixo nível
• Linguagens que dependem da arquitetura da máquina
• Utiliza somente instruções do processador, para isso é necessário
conhecer os registradores da máquina
• Dividida em 2 (duas) gerações
• 1ª Geração – 1GL - código de máquina puro (impossível de ser lido por
humanos)
• 2ª Geração – 2GL - linguagem Assembly, é necessário o conhecimento
de registradores e instruções
ALGORITMOS
Introdução
Algoritmos
• Um conceito fundamental para a Ciência da Computação é o
de algoritmo.
• Na programação estruturada o algoritmo é uma sequencia de
instruções, cuja execução resulta na realização de uma
determinada tarefa.
• Os algoritmos estão na nosso dia-a-dia de forma implícita.
• Exemplos
- Fazer café
1. Esquentar água;
2. Adicionar água quente com o café;
3. Adicionar açúcar a gosto;
- Manuais de Instruções;
- Receitas culinárias
Algoritmos
• Regras gerais para algoritmos
• Todo algoritmo deve resultar na realização de alguma tarefa;
• As instruções devem ser claras, não devendo conter
ambiguidades;
• Não pode haver dubiedade em relação à próxima ação a ser
realizada durante a execução de uma determinada instrução.
• Todas as instruções devem ser executadas num tempo finito.
• Exemplo – Gravar programação:
• 1.Sintonize, no videocassete, o canal desejado.
• 2.Insira uma fita no videocassete.
• 3.Acione a tecla rec.
Algoritmos
• Assim como no exemplo anterior (videocassete) como
numa receita de bolo, é necessário cumprir alguns
requisitos ou ter certos ingredientes.
• Isto significa que a execução destes algoritmos
necessitam de “dados” que serão fornecidos para sua
execução.
• Estes dados constituem a entrada do algoritmo
Algoritmos
• A realização e o resultado do algoritmo é considerada
com a saída do algoritmo;
• Entendendo o conceito de entrada e saída de algoritmos
podemos concluir que:
• “Um algoritmo é um conjunto de instruções que, recebendo uma
entrada compatível com as instruções, fornece uma saída num
tempo finito.” (Evaristo, Jaime – Aprendendo a Programar com Pascal,
pg. 10)
Algoritmos
• Vejamos o seguinte algoritmo:
1. Sintonize, no videocassete, o canal desejado.
2. Insira uma fita no videocassete.
3. Acione a tecla rr {para rebobinar a fita}.
4. Acione a tecla rec.
• Todas as instruções serão executadas?
• Se a fita estivesse no inicio seria necessário executar o
passo 3?
• Como podemos melhorar este algoritmo?
Algoritmos
• Uma condição pode resolver o problema, basta adicionar
a instrução:
• Se a fita não estiver rebobinada, acione a tecla rr. {para rebobinar}
• Assim podemos ver o algoritmo melhorado:
1. Sintonize no videocassete o canal desejado.
2. Apanhe uma fita, verifique se ela está rebobinada e a insira no
videocassete.
3. Se a fita não estiver rebobinada, acione a tecla rr.
4. Acione a tecla rec
LÓGICA DE
PROGRAMAÇÃO
Lógica de Programação
• Mas, e na programação? Como aplicamos os algotimos?
• Através da lógica de programação e linguagens de
programação;
• Algoritmos computacionais são desenvolvidos para
resolver problemas, com isso é necessário “pensar”;
• A ciência do raciocínio é a lógica. É esta ciência que
estuda os princípios e métodos usados para distinguir os
raciocínios corretos dos incorretos.
Lógica de Programação – Vamos pensar
• Um senhor, infelizmente bastante gordo, está numa das
margens de um rio com uma raposa, uma dúzia de
galinhas e um saco de milho.
• O senhor pretende atravessar o rio com suas cargas,
num barco que só comporta o senhor e uma das cargas.
• RESOLVA: Como o senhor poderá transportar as
galinhas, o saco de milho e a raposa para o outro lado do
rio sem deixar sozinhos: a raposa e a galinha, nem a
galinha e o milho.
Lógica de Programação
• Muitas vezes para sabermos qual será a primeira
instrução de um algoritmo devemos utilizar a técnica de
exaustão (eliminação);
• O segredo desta técnica é identificar a instrução de maior
“peso”
RESOLUÇÃO
1. Atravesse as galinhas.
2. Retorne sozinho.
3. Atravesse a raposa.
4. Retorne com as galinhas.
5. Atravesse o milho.
6. Retorne sozinho.
7. Atravesse as galinhas.
Lógica de Programação
Exercícios Resolvidos
• Faça um algoritmo que receba dois números e exiba o resultado da sua soma
algoritmo “SOMA"
// Função : Faça um algoritmo que receba dois números e exiba o resultado da sua soma.
// Autor : CEMA
// Data : 23/10/2012
// Seção de Declarações
var
x, y: inteiro
inicio
// Seção de Comandos
escreval("Digite o primeiro número: ")
leia(x)
escreval("Digite o segundo número: ")
leia(y)
escreva("A soma dos números é: ",x+y)
fimalgoritmo
Lógica de Programação
Exercícios Resolvidos
• Faça um algoritmo que receba dois números e ao final mostre a soma,
subtração, multiplicação e a divisão dos números lidos.
algoritmo “Operacoes"
// Função : Faça um algoritmo que receba dois números e ao final mostre a soma, subtração, multiplicação e
a divisão dos números lidos.
// Autor : CEMA
// Data : 23/10/2012
// Seção de Declarações
var
x, y: real
inicio
// Seção de Comandos
escreva("Digite o primeiro número: ")
leia(x)
escreva("Digite o segundo número: ")
leia(y)
escreval("A soma é: ",x+y)
escreval("A subtração é: ",x-y)
escreval("A multiplicação é: ",x*y)
escreval("A divisão é: ",x/y)
fimalgoritmo
Lógica de Programação
Exercícios Resolvidos
• Escrever um algoritmo para determinar o consumo médio
de um automóvel sendo fornecida a distância total
percorrida pelo automóvel e o total de combustível gasto.
Lógica de Programação
Exercícios Resolvidos
• algoritmo “CalculoCombustivel"
• // Função : Escrever um algoritmo para determinar o consumo médio de um automóvel
sendo fornecida a distância total percorrida pelo automóvel e o total de combustível gasto.
• // Autor : CEMA
• // Data : 23/10/2012
• // Seção de Declarações
• var
• distancia, combustivel: real
• inicio
• // Seção de Comandos
• escreval("========== Cálculo de consumo médio de combustível =========")
• escreva("Digite a distância pecorrida: ")
• leia(distancia)
• escreva("Digite o combustível gasto: ")
• leia(combustivel)
• escreval("O consumo médio de combustível do seu veículo é: ",distancia/combustivel)
•
• fimalgoritmo
PASCAL
Introdução à linguagem
Um pouco da história
• A linguagem Pascal foi desenvolvida no início dos anos
70 por Nicklaus Wirth na Universidade Técnica de
Zurique, Suíça
• Com o objetivo de oferecer uma linguagem para o ensino
de programação que fosse simples, favorecendo a
utilização de boas técnicas de programação
• Batizada com o nome de Pascal em homenagem a Blaise
Pascal, filósofo e matemático francês que viveu entre
1623 e 1662, inventor da primeira calculadora mecânica.
Identificadores
• Um identificador válido na linguagem Pascal é qualquer
sequência de caracteres que obedeça às seguintes
regras:
• Seja iniciada por uma letra ( a, b, ..., z ) ;
• Possuir, depois da primeira letra, uma sequência de caracteres
que podem ser letras, dígitos (1, 2, ... , 9, 0 ) ou ainda o caractere _
“ ; “
• É uma palavra que não é uma das palavras reservadas da
linguagem Pascal
• O pascal não é case-sensitive (PASCAL = pascal = Pascal)
• Exemplos Válidos
• Nome
• Data_hora
• turma1
Palavras Reservadas
APPEND PROCEDURE TEXTCOLOR MAGENTA
ARRAY PROGRAM CHR *
ASSIGN READ RED OR
BEGIN READKEY : .
BOOLEAN READLN YELLOW [
CHAR REAL LIGHTCYAN -
CLOSE RECORD LIGHTGREEN BROWN
CLRSCR REPEAT ; (
CONST RESET LENGTH ,
DO REWRITE TEXTBACKGROUND =
DOWTO STRING BLINK DARKGRAY
ELSE THEN > AND
END TO NOT <
FALSE TRUE LIGHTGRAY BLUE
FOR TYPE GREEN CYAN
FUNCTION UNTIL / )
GOTOXY VAR LIGHTMAGENTA LIGHTRED
IF WHILE TEXT WHITE
INTEGER WRITE MOD DIV
OF WRITELN LIGHTBUE ]
ORD EOF
Constantes pré-definidas
• O compilador reconhece as seguintes constantes pré-
definidas:
• maxint
• Guarda o valor máximo de um inteiro, 32.767
• pi
• Guarda o valor da constante pi, 3.14159265358979
Declaração de constantes
• O Pascal permite a declaração de constantes nos programas.
• A declaração deve ser feita dentro da seção de constantes do
programa que tem inicio com a palavra reservada const no inicio do
programa.
• Exemplo:
const
escola = ‘CEMA’;
valor_referencia = 7.14584;
a = 2; { define uma constante inteira }
w = 1.25; { define uma constante real }
sim = 'S'; { define uma constante caractere }
const teste = TRUE; { define uma constante lógica }
• Pode receber: inteiros, real, cadeia de caracteres e um único
caractere.
Tipos de Dados
• Tipos de dados números inteiros:
• Integer (Número inteiro de 2 bytes entre –32.768 e +32.767)
• ShortInt (Número inteiro de 1 byte entre –128 e +127)
• LongInt (Número inteiro de 4 bytes entre –2.147.483.648 e
+2.147.483.647)
• Byte (Número inteiro positivo de 1 byte entre 0 e 255)
• Word (Número inteiro positivo de 2 bytes entre 0 e 65.535)
Tipos de Dados
• Tipos de dados números reais:
• Real (Número real de 6 bytes variando de 2,9 E-39 a 1,7 E+38
incluindo o zero, podendo ser
• negativo ou positivo com 11 a 12 dígitos significativos)
• Single (Número real de 4 bytes variando de 1,5 E-45 a 3,4 E+38
incluindo o zero, podendo ser
• negativo ou positivo com 7 a 8 dígitos significativos)
• Double (Número real de 8 bytes variando de 5,0 E-324 a 1,7
E+308 incluindo o zero, podendo ser
• negativo ou positivo com 15 a 16 dígitos significativos)
• Extended (Número real de 10 bytes variando de 3,4 E-4932 a 1,1
E+4932 incluindo o zero, podendo
• ser negativo ou positivo com 19 a 20 dígitos significativos)
Tipos de Dados
• Tipos de dados alfanuméricos:
• Char (Caracter ASCII de 1 byte)
• String[n] (Cadeia de caracteres ASCII de 2 a 256 bytes, sendo n
um valor numérico determinando o
• comprimento da cadeia. Na omissão do valor n, o compilador do
Pascal assume o
• comprimento máximo)
• Tipos de dados lógicos:
• Boolean (Valor lógico de 1 byte que representa apenas: TRUE ou
FALSE)
Declaração de Variáveis
• A declaração de variáveis segue o mesmo padrão da
declaração de constantes;
• Para as variáveis é necessário iniciar o bloco com a
palavra reservada var;
• Exemplos:
numero_bilhete: integer;
valor: real;
bilhete_expirado: boolean;
Comentários
• Comentários podem ser utilizados em qualquer parte da
aplicação.
• Os comentários não
serão executados na
aplicação.
Estrutura dos Programas em Pascal
• O programa é dividido em 3 áreas básicas:
• Cabeçalho
• Área de declarações
• Bloco principal de comandos

Más contenido relacionado

La actualidad más candente

Lista de exercicios algoritmos resolvida-
Lista de exercicios   algoritmos  resolvida-Lista de exercicios   algoritmos  resolvida-
Lista de exercicios algoritmos resolvida-Mauro Pereira
 
Descritiva Narrativa (Lógica de Programação)
Descritiva Narrativa (Lógica de Programação)Descritiva Narrativa (Lógica de Programação)
Descritiva Narrativa (Lógica de Programação)Gercélia Ramos
 
Fluxograma (Lógica de Programação)
Fluxograma (Lógica de Programação)Fluxograma (Lógica de Programação)
Fluxograma (Lógica de Programação)Gercélia Ramos
 
Introdução a Linguagem C
Introdução a Linguagem CIntrodução a Linguagem C
Introdução a Linguagem Capolllorj
 
Psi-mod-13
Psi-mod-13Psi-mod-13
Psi-mod-13diogoa21
 
Exercício resolvido normalização
Exercício resolvido normalizaçãoExercício resolvido normalização
Exercício resolvido normalizaçãoTicianne Darin
 
Algoritmos e Técnicas de Programação - Curso Completo
Algoritmos e Técnicas de Programação - Curso CompletoAlgoritmos e Técnicas de Programação - Curso Completo
Algoritmos e Técnicas de Programação - Curso Completothomasdacosta
 
Tutorial pascal zim
Tutorial pascal zimTutorial pascal zim
Tutorial pascal zim12anogolega
 
Algoritmos e lp parte3-pseudocódigo
Algoritmos e lp parte3-pseudocódigoAlgoritmos e lp parte3-pseudocódigo
Algoritmos e lp parte3-pseudocódigoMauro Pereira
 
Lógica de programação pascal
Lógica de programação   pascalLógica de programação   pascal
Lógica de programação pascalJocelma Rios
 
Sistemas operacionais
Sistemas operacionaisSistemas operacionais
Sistemas operacionaisvini_campos
 
Detecção de Avarias em Computadores
Detecção de Avarias em ComputadoresDetecção de Avarias em Computadores
Detecção de Avarias em ComputadoresMariana Melo
 
Arquitetura de Sistemas Operacionais 32 x 64 Bits
Arquitetura de Sistemas Operacionais 32 x 64 BitsArquitetura de Sistemas Operacionais 32 x 64 Bits
Arquitetura de Sistemas Operacionais 32 x 64 BitsCleber Ramos
 

La actualidad más candente (20)

Lista de exercicios algoritmos resolvida-
Lista de exercicios   algoritmos  resolvida-Lista de exercicios   algoritmos  resolvida-
Lista de exercicios algoritmos resolvida-
 
Descritiva Narrativa (Lógica de Programação)
Descritiva Narrativa (Lógica de Programação)Descritiva Narrativa (Lógica de Programação)
Descritiva Narrativa (Lógica de Programação)
 
Aula 06 setup pc
Aula 06   setup pcAula 06   setup pc
Aula 06 setup pc
 
Fluxograma (Lógica de Programação)
Fluxograma (Lógica de Programação)Fluxograma (Lógica de Programação)
Fluxograma (Lógica de Programação)
 
Introdução a Linguagem C
Introdução a Linguagem CIntrodução a Linguagem C
Introdução a Linguagem C
 
Sistemas Operativos
Sistemas OperativosSistemas Operativos
Sistemas Operativos
 
Psi-mod-13
Psi-mod-13Psi-mod-13
Psi-mod-13
 
Exercício resolvido normalização
Exercício resolvido normalizaçãoExercício resolvido normalização
Exercício resolvido normalização
 
Introdução a php
Introdução a phpIntrodução a php
Introdução a php
 
Algoritmos e Técnicas de Programação - Curso Completo
Algoritmos e Técnicas de Programação - Curso CompletoAlgoritmos e Técnicas de Programação - Curso Completo
Algoritmos e Técnicas de Programação - Curso Completo
 
Tutorial pascal zim
Tutorial pascal zimTutorial pascal zim
Tutorial pascal zim
 
Apresentação partes do computador
Apresentação partes do computadorApresentação partes do computador
Apresentação partes do computador
 
Algoritmos e lp parte3-pseudocódigo
Algoritmos e lp parte3-pseudocódigoAlgoritmos e lp parte3-pseudocódigo
Algoritmos e lp parte3-pseudocódigo
 
Algoritmos
AlgoritmosAlgoritmos
Algoritmos
 
Visualg
VisualgVisualg
Visualg
 
Lógica de programação pascal
Lógica de programação   pascalLógica de programação   pascal
Lógica de programação pascal
 
Sistemas operacionais
Sistemas operacionaisSistemas operacionais
Sistemas operacionais
 
Detecção de Avarias em Computadores
Detecção de Avarias em ComputadoresDetecção de Avarias em Computadores
Detecção de Avarias em Computadores
 
Arquitetura de Sistemas Operacionais 32 x 64 Bits
Arquitetura de Sistemas Operacionais 32 x 64 BitsArquitetura de Sistemas Operacionais 32 x 64 Bits
Arquitetura de Sistemas Operacionais 32 x 64 Bits
 
Manual de portugol
Manual de portugolManual de portugol
Manual de portugol
 

Destacado

02 - Introdução a lógica de programação parte 2 - v1.2
02 - Introdução a lógica de programação parte 2 - v1.202 - Introdução a lógica de programação parte 2 - v1.2
02 - Introdução a lógica de programação parte 2 - v1.2César Augusto Pessôa
 
Introdução á programação - 1ª parte
Introdução á programação - 1ª parteIntrodução á programação - 1ª parte
Introdução á programação - 1ª parteLuis Fernandes
 
Aula 03 estrutura de seleção
Aula 03   estrutura de seleçãoAula 03   estrutura de seleção
Aula 03 estrutura de seleçãoTácito Graça
 
Aula 02 operadores aritiméticos
Aula 02   operadores aritiméticosAula 02   operadores aritiméticos
Aula 02 operadores aritiméticosTácito Graça
 
Passar de algoritmo para pascal
Passar de algoritmo para pascalPassar de algoritmo para pascal
Passar de algoritmo para pascalmoraesdenise
 
Guia Rápido Da Linguagem Pascal
Guia Rápido Da Linguagem PascalGuia Rápido Da Linguagem Pascal
Guia Rápido Da Linguagem PascalMikeNandes
 
Caderno didatico pascal
Caderno didatico pascalCaderno didatico pascal
Caderno didatico pascalAlvaro Melo
 
Estruturação de Linguagens de Programação (Pascal e C++)
Estruturação de Linguagens de Programação (Pascal e C++)Estruturação de Linguagens de Programação (Pascal e C++)
Estruturação de Linguagens de Programação (Pascal e C++)Mauricio Volkweis Astiazara
 
Agoritmo e l gica de programa--o - apostila pascal
Agoritmo e l gica de programa--o - apostila pascalAgoritmo e l gica de programa--o - apostila pascal
Agoritmo e l gica de programa--o - apostila pascaljucasalao
 

Destacado (20)

02 - Introdução a lógica de programação parte 2 - v1.2
02 - Introdução a lógica de programação parte 2 - v1.202 - Introdução a lógica de programação parte 2 - v1.2
02 - Introdução a lógica de programação parte 2 - v1.2
 
Introdução á programação - 1ª parte
Introdução á programação - 1ª parteIntrodução á programação - 1ª parte
Introdução á programação - 1ª parte
 
Apostila pascal
Apostila pascal Apostila pascal
Apostila pascal
 
Aula 03 estrutura de seleção
Aula 03   estrutura de seleçãoAula 03   estrutura de seleção
Aula 03 estrutura de seleção
 
Aula 02 operadores aritiméticos
Aula 02   operadores aritiméticosAula 02   operadores aritiméticos
Aula 02 operadores aritiméticos
 
Passar de algoritmo para pascal
Passar de algoritmo para pascalPassar de algoritmo para pascal
Passar de algoritmo para pascal
 
Guia Rápido Da Linguagem Pascal
Guia Rápido Da Linguagem PascalGuia Rápido Da Linguagem Pascal
Guia Rápido Da Linguagem Pascal
 
Caderno didatico pascal
Caderno didatico pascalCaderno didatico pascal
Caderno didatico pascal
 
Módulo 2 pascal
Módulo 2  pascalMódulo 2  pascal
Módulo 2 pascal
 
Pascal
PascalPascal
Pascal
 
Apostila pascal
Apostila pascalApostila pascal
Apostila pascal
 
Apostila curso php_my_sql(portugues)
Apostila curso php_my_sql(portugues)Apostila curso php_my_sql(portugues)
Apostila curso php_my_sql(portugues)
 
Estruturação de Linguagens de Programação (Pascal e C++)
Estruturação de Linguagens de Programação (Pascal e C++)Estruturação de Linguagens de Programação (Pascal e C++)
Estruturação de Linguagens de Programação (Pascal e C++)
 
Apostila de-delphi
Apostila de-delphiApostila de-delphi
Apostila de-delphi
 
Pascal
PascalPascal
Pascal
 
Agoritmo e l gica de programa--o - apostila pascal
Agoritmo e l gica de programa--o - apostila pascalAgoritmo e l gica de programa--o - apostila pascal
Agoritmo e l gica de programa--o - apostila pascal
 
Pascal Unit
Pascal UnitPascal Unit
Pascal Unit
 
Aula 05 subprogramas
Aula 05   subprogramasAula 05   subprogramas
Aula 05 subprogramas
 
EVOLUÇÃO DA LINGUAGEM DELPHI - ARTIGO
EVOLUÇÃO DA LINGUAGEM DELPHI - ARTIGOEVOLUÇÃO DA LINGUAGEM DELPHI - ARTIGO
EVOLUÇÃO DA LINGUAGEM DELPHI - ARTIGO
 
Marinha concursos
Marinha   concursosMarinha   concursos
Marinha concursos
 

Similar a Introdução à Linguagem Pascal

Aula 2 - Introducao e Algoritmos.ppt
Aula 2 - Introducao e Algoritmos.pptAula 2 - Introducao e Algoritmos.ppt
Aula 2 - Introducao e Algoritmos.pptJadna Almeida
 
1 - Introdução à Lógica de Programação - Comandos Básicos.pptx
1 - Introdução à Lógica de Programação - Comandos Básicos.pptx1 - Introdução à Lógica de Programação - Comandos Básicos.pptx
1 - Introdução à Lógica de Programação - Comandos Básicos.pptxJONATHANSILVADEOLIVE
 
Algoritmos e linguagem pascal
Algoritmos e linguagem pascalAlgoritmos e linguagem pascal
Algoritmos e linguagem pascalangelicamenegassi
 
Algoritmos e linguagem pascal
Algoritmos e linguagem pascalAlgoritmos e linguagem pascal
Algoritmos e linguagem pascalangelicamenegassi
 
C curso - notas de aula
C   curso - notas de aulaC   curso - notas de aula
C curso - notas de aulaLoAlves21
 
Conceitos e técnicas de programação aula 2
Conceitos e técnicas de programação aula 2Conceitos e técnicas de programação aula 2
Conceitos e técnicas de programação aula 2Robson Ferreira
 
Aula01 ip introducao
Aula01 ip introducaoAula01 ip introducao
Aula01 ip introducaoBerg Oliveira
 
INFORMATICA LOGICA DE PROGRAMAÇÃO E ALGORITIMOS AULA- 01.ppt
INFORMATICA LOGICA DE PROGRAMAÇÃO E ALGORITIMOS AULA- 01.pptINFORMATICA LOGICA DE PROGRAMAÇÃO E ALGORITIMOS AULA- 01.ppt
INFORMATICA LOGICA DE PROGRAMAÇÃO E ALGORITIMOS AULA- 01.pptPatricaNascimento1
 
Introdução pascal
Introdução pascalIntrodução pascal
Introdução pascalIlton Prandi
 
Aula 01 - Algoritmo e Programação
Aula 01 - Algoritmo e ProgramaçãoAula 01 - Algoritmo e Programação
Aula 01 - Algoritmo e ProgramaçãoAislan Rafael
 
Algoritmos
AlgoritmosAlgoritmos
Algoritmosjormad
 
Algoritmos e Programação: Funcionamento do computador. Conceito e definição d...
Algoritmos e Programação: Funcionamento do computador. Conceito e definição d...Algoritmos e Programação: Funcionamento do computador. Conceito e definição d...
Algoritmos e Programação: Funcionamento do computador. Conceito e definição d...Alex Camargo
 

Similar a Introdução à Linguagem Pascal (20)

Aula 2 - Introducao e Algoritmos.ppt
Aula 2 - Introducao e Algoritmos.pptAula 2 - Introducao e Algoritmos.ppt
Aula 2 - Introducao e Algoritmos.ppt
 
1 - Introdução à Lógica de Programação - Comandos Básicos.pptx
1 - Introdução à Lógica de Programação - Comandos Básicos.pptx1 - Introdução à Lógica de Programação - Comandos Básicos.pptx
1 - Introdução à Lógica de Programação - Comandos Básicos.pptx
 
122172 1445
122172 1445122172 1445
122172 1445
 
Algoritmos - Pascal
Algoritmos - PascalAlgoritmos - Pascal
Algoritmos - Pascal
 
Apostila linguagem pascal
Apostila linguagem pascalApostila linguagem pascal
Apostila linguagem pascal
 
Algoritmos e linguagem pascal
Algoritmos e linguagem pascalAlgoritmos e linguagem pascal
Algoritmos e linguagem pascal
 
Algoritmos e linguagem pascal
Algoritmos e linguagem pascalAlgoritmos e linguagem pascal
Algoritmos e linguagem pascal
 
C curso - notas de aula
C   curso - notas de aulaC   curso - notas de aula
C curso - notas de aula
 
01 conceitos
01 conceitos01 conceitos
01 conceitos
 
Algoritmos
AlgoritmosAlgoritmos
Algoritmos
 
Conceitos e técnicas de programação aula 2
Conceitos e técnicas de programação aula 2Conceitos e técnicas de programação aula 2
Conceitos e técnicas de programação aula 2
 
Aula01 ip introducao
Aula01 ip introducaoAula01 ip introducao
Aula01 ip introducao
 
Algoritimo - Raul
Algoritimo - RaulAlgoritimo - Raul
Algoritimo - Raul
 
Algoritmos com java script
Algoritmos com java scriptAlgoritmos com java script
Algoritmos com java script
 
INFORMATICA LOGICA DE PROGRAMAÇÃO E ALGORITIMOS AULA- 01.ppt
INFORMATICA LOGICA DE PROGRAMAÇÃO E ALGORITIMOS AULA- 01.pptINFORMATICA LOGICA DE PROGRAMAÇÃO E ALGORITIMOS AULA- 01.ppt
INFORMATICA LOGICA DE PROGRAMAÇÃO E ALGORITIMOS AULA- 01.ppt
 
Introdução pascal
Introdução pascalIntrodução pascal
Introdução pascal
 
Aula 01 - Algoritmo e Programação
Aula 01 - Algoritmo e ProgramaçãoAula 01 - Algoritmo e Programação
Aula 01 - Algoritmo e Programação
 
Algoritmos
AlgoritmosAlgoritmos
Algoritmos
 
Algoritmos e Programação: Funcionamento do computador. Conceito e definição d...
Algoritmos e Programação: Funcionamento do computador. Conceito e definição d...Algoritmos e Programação: Funcionamento do computador. Conceito e definição d...
Algoritmos e Programação: Funcionamento do computador. Conceito e definição d...
 
Algoritmo aula 01-f
Algoritmo   aula 01-fAlgoritmo   aula 01-f
Algoritmo aula 01-f
 

Introdução à Linguagem Pascal

  • 1. INTRODUÇÃO A LINGUAGEM PASCAL Profº.: Tácito Henrique tacito.graca@gmail.com CEMA – Centro Educacional Miguel Alves
  • 2. Introdução • Para que um algoritmo possa ser executado em um computador ele deve ser primeiramente descrito através de uma linguagem de programação; • A linguagem de programação é apenas um meio de comunicação entre dois interlocutores, o programador e o processador;
  • 3. Introdução • A linguagem de programação possui regras sintáticas e semânticas que devem ser seguidas para que a mensagem que se deseja passar seja compreendida. • Regras Sintáticas É a forma de escrever • Regras Semânticas É o sentido do que se escreve
  • 4. Introdução • Quando os algoritmos são escritos na linguagem, ainda são textos, eles precisam ser convertidos em um formato que o processador entenda • O processador de um computador apenas entende bits, 1 e 0. • Para fazer a tradução do nosso programa para uma linguagem de máquina, existem os compiladores.
  • 5. Introdução • Os compiladores por sua vez, criam uma “versão” em linguagem de máquina do nosso programa
  • 6. Níveis de Linguagem • Linguagens de alto nível • Linguagens expressivas próximas a linguagem oral • Não estão diretamente relacionadas com a arquitetura do computador, não é necessário conhecer as características do processador, como instruções e registradores • Também conhecidas como linguagens declarativas • Exemplos: • ASP • ACTION SCRITP • C/C++ • C# • Pascal / OBJECT Pascal • Java • PHP • Basic / Visual Basic
  • 7. Níveis de Linguagem • Linguagens de baixo nível • Linguagens que dependem da arquitetura da máquina • Utiliza somente instruções do processador, para isso é necessário conhecer os registradores da máquina • Dividida em 2 (duas) gerações • 1ª Geração – 1GL - código de máquina puro (impossível de ser lido por humanos) • 2ª Geração – 2GL - linguagem Assembly, é necessário o conhecimento de registradores e instruções
  • 9. Algoritmos • Um conceito fundamental para a Ciência da Computação é o de algoritmo. • Na programação estruturada o algoritmo é uma sequencia de instruções, cuja execução resulta na realização de uma determinada tarefa. • Os algoritmos estão na nosso dia-a-dia de forma implícita. • Exemplos - Fazer café 1. Esquentar água; 2. Adicionar água quente com o café; 3. Adicionar açúcar a gosto; - Manuais de Instruções; - Receitas culinárias
  • 10. Algoritmos • Regras gerais para algoritmos • Todo algoritmo deve resultar na realização de alguma tarefa; • As instruções devem ser claras, não devendo conter ambiguidades; • Não pode haver dubiedade em relação à próxima ação a ser realizada durante a execução de uma determinada instrução. • Todas as instruções devem ser executadas num tempo finito. • Exemplo – Gravar programação: • 1.Sintonize, no videocassete, o canal desejado. • 2.Insira uma fita no videocassete. • 3.Acione a tecla rec.
  • 11. Algoritmos • Assim como no exemplo anterior (videocassete) como numa receita de bolo, é necessário cumprir alguns requisitos ou ter certos ingredientes. • Isto significa que a execução destes algoritmos necessitam de “dados” que serão fornecidos para sua execução. • Estes dados constituem a entrada do algoritmo
  • 12. Algoritmos • A realização e o resultado do algoritmo é considerada com a saída do algoritmo; • Entendendo o conceito de entrada e saída de algoritmos podemos concluir que: • “Um algoritmo é um conjunto de instruções que, recebendo uma entrada compatível com as instruções, fornece uma saída num tempo finito.” (Evaristo, Jaime – Aprendendo a Programar com Pascal, pg. 10)
  • 13. Algoritmos • Vejamos o seguinte algoritmo: 1. Sintonize, no videocassete, o canal desejado. 2. Insira uma fita no videocassete. 3. Acione a tecla rr {para rebobinar a fita}. 4. Acione a tecla rec. • Todas as instruções serão executadas? • Se a fita estivesse no inicio seria necessário executar o passo 3? • Como podemos melhorar este algoritmo?
  • 14. Algoritmos • Uma condição pode resolver o problema, basta adicionar a instrução: • Se a fita não estiver rebobinada, acione a tecla rr. {para rebobinar} • Assim podemos ver o algoritmo melhorado: 1. Sintonize no videocassete o canal desejado. 2. Apanhe uma fita, verifique se ela está rebobinada e a insira no videocassete. 3. Se a fita não estiver rebobinada, acione a tecla rr. 4. Acione a tecla rec
  • 16. Lógica de Programação • Mas, e na programação? Como aplicamos os algotimos? • Através da lógica de programação e linguagens de programação; • Algoritmos computacionais são desenvolvidos para resolver problemas, com isso é necessário “pensar”; • A ciência do raciocínio é a lógica. É esta ciência que estuda os princípios e métodos usados para distinguir os raciocínios corretos dos incorretos.
  • 17. Lógica de Programação – Vamos pensar • Um senhor, infelizmente bastante gordo, está numa das margens de um rio com uma raposa, uma dúzia de galinhas e um saco de milho. • O senhor pretende atravessar o rio com suas cargas, num barco que só comporta o senhor e uma das cargas. • RESOLVA: Como o senhor poderá transportar as galinhas, o saco de milho e a raposa para o outro lado do rio sem deixar sozinhos: a raposa e a galinha, nem a galinha e o milho.
  • 18. Lógica de Programação • Muitas vezes para sabermos qual será a primeira instrução de um algoritmo devemos utilizar a técnica de exaustão (eliminação); • O segredo desta técnica é identificar a instrução de maior “peso” RESOLUÇÃO 1. Atravesse as galinhas. 2. Retorne sozinho. 3. Atravesse a raposa. 4. Retorne com as galinhas. 5. Atravesse o milho. 6. Retorne sozinho. 7. Atravesse as galinhas.
  • 19. Lógica de Programação Exercícios Resolvidos • Faça um algoritmo que receba dois números e exiba o resultado da sua soma algoritmo “SOMA" // Função : Faça um algoritmo que receba dois números e exiba o resultado da sua soma. // Autor : CEMA // Data : 23/10/2012 // Seção de Declarações var x, y: inteiro inicio // Seção de Comandos escreval("Digite o primeiro número: ") leia(x) escreval("Digite o segundo número: ") leia(y) escreva("A soma dos números é: ",x+y) fimalgoritmo
  • 20. Lógica de Programação Exercícios Resolvidos • Faça um algoritmo que receba dois números e ao final mostre a soma, subtração, multiplicação e a divisão dos números lidos. algoritmo “Operacoes" // Função : Faça um algoritmo que receba dois números e ao final mostre a soma, subtração, multiplicação e a divisão dos números lidos. // Autor : CEMA // Data : 23/10/2012 // Seção de Declarações var x, y: real inicio // Seção de Comandos escreva("Digite o primeiro número: ") leia(x) escreva("Digite o segundo número: ") leia(y) escreval("A soma é: ",x+y) escreval("A subtração é: ",x-y) escreval("A multiplicação é: ",x*y) escreval("A divisão é: ",x/y) fimalgoritmo
  • 21. Lógica de Programação Exercícios Resolvidos • Escrever um algoritmo para determinar o consumo médio de um automóvel sendo fornecida a distância total percorrida pelo automóvel e o total de combustível gasto.
  • 22. Lógica de Programação Exercícios Resolvidos • algoritmo “CalculoCombustivel" • // Função : Escrever um algoritmo para determinar o consumo médio de um automóvel sendo fornecida a distância total percorrida pelo automóvel e o total de combustível gasto. • // Autor : CEMA • // Data : 23/10/2012 • // Seção de Declarações • var • distancia, combustivel: real • inicio • // Seção de Comandos • escreval("========== Cálculo de consumo médio de combustível =========") • escreva("Digite a distância pecorrida: ") • leia(distancia) • escreva("Digite o combustível gasto: ") • leia(combustivel) • escreval("O consumo médio de combustível do seu veículo é: ",distancia/combustivel) • • fimalgoritmo
  • 24. Um pouco da história • A linguagem Pascal foi desenvolvida no início dos anos 70 por Nicklaus Wirth na Universidade Técnica de Zurique, Suíça • Com o objetivo de oferecer uma linguagem para o ensino de programação que fosse simples, favorecendo a utilização de boas técnicas de programação • Batizada com o nome de Pascal em homenagem a Blaise Pascal, filósofo e matemático francês que viveu entre 1623 e 1662, inventor da primeira calculadora mecânica.
  • 25. Identificadores • Um identificador válido na linguagem Pascal é qualquer sequência de caracteres que obedeça às seguintes regras: • Seja iniciada por uma letra ( a, b, ..., z ) ; • Possuir, depois da primeira letra, uma sequência de caracteres que podem ser letras, dígitos (1, 2, ... , 9, 0 ) ou ainda o caractere _ “ ; “ • É uma palavra que não é uma das palavras reservadas da linguagem Pascal • O pascal não é case-sensitive (PASCAL = pascal = Pascal) • Exemplos Válidos • Nome • Data_hora • turma1
  • 26. Palavras Reservadas APPEND PROCEDURE TEXTCOLOR MAGENTA ARRAY PROGRAM CHR * ASSIGN READ RED OR BEGIN READKEY : . BOOLEAN READLN YELLOW [ CHAR REAL LIGHTCYAN - CLOSE RECORD LIGHTGREEN BROWN CLRSCR REPEAT ; ( CONST RESET LENGTH , DO REWRITE TEXTBACKGROUND = DOWTO STRING BLINK DARKGRAY ELSE THEN > AND END TO NOT < FALSE TRUE LIGHTGRAY BLUE FOR TYPE GREEN CYAN FUNCTION UNTIL / ) GOTOXY VAR LIGHTMAGENTA LIGHTRED IF WHILE TEXT WHITE INTEGER WRITE MOD DIV OF WRITELN LIGHTBUE ] ORD EOF
  • 27. Constantes pré-definidas • O compilador reconhece as seguintes constantes pré- definidas: • maxint • Guarda o valor máximo de um inteiro, 32.767 • pi • Guarda o valor da constante pi, 3.14159265358979
  • 28. Declaração de constantes • O Pascal permite a declaração de constantes nos programas. • A declaração deve ser feita dentro da seção de constantes do programa que tem inicio com a palavra reservada const no inicio do programa. • Exemplo: const escola = ‘CEMA’; valor_referencia = 7.14584; a = 2; { define uma constante inteira } w = 1.25; { define uma constante real } sim = 'S'; { define uma constante caractere } const teste = TRUE; { define uma constante lógica } • Pode receber: inteiros, real, cadeia de caracteres e um único caractere.
  • 29. Tipos de Dados • Tipos de dados números inteiros: • Integer (Número inteiro de 2 bytes entre –32.768 e +32.767) • ShortInt (Número inteiro de 1 byte entre –128 e +127) • LongInt (Número inteiro de 4 bytes entre –2.147.483.648 e +2.147.483.647) • Byte (Número inteiro positivo de 1 byte entre 0 e 255) • Word (Número inteiro positivo de 2 bytes entre 0 e 65.535)
  • 30. Tipos de Dados • Tipos de dados números reais: • Real (Número real de 6 bytes variando de 2,9 E-39 a 1,7 E+38 incluindo o zero, podendo ser • negativo ou positivo com 11 a 12 dígitos significativos) • Single (Número real de 4 bytes variando de 1,5 E-45 a 3,4 E+38 incluindo o zero, podendo ser • negativo ou positivo com 7 a 8 dígitos significativos) • Double (Número real de 8 bytes variando de 5,0 E-324 a 1,7 E+308 incluindo o zero, podendo ser • negativo ou positivo com 15 a 16 dígitos significativos) • Extended (Número real de 10 bytes variando de 3,4 E-4932 a 1,1 E+4932 incluindo o zero, podendo • ser negativo ou positivo com 19 a 20 dígitos significativos)
  • 31. Tipos de Dados • Tipos de dados alfanuméricos: • Char (Caracter ASCII de 1 byte) • String[n] (Cadeia de caracteres ASCII de 2 a 256 bytes, sendo n um valor numérico determinando o • comprimento da cadeia. Na omissão do valor n, o compilador do Pascal assume o • comprimento máximo) • Tipos de dados lógicos: • Boolean (Valor lógico de 1 byte que representa apenas: TRUE ou FALSE)
  • 32. Declaração de Variáveis • A declaração de variáveis segue o mesmo padrão da declaração de constantes; • Para as variáveis é necessário iniciar o bloco com a palavra reservada var; • Exemplos: numero_bilhete: integer; valor: real; bilhete_expirado: boolean;
  • 33. Comentários • Comentários podem ser utilizados em qualquer parte da aplicação. • Os comentários não serão executados na aplicação.
  • 34. Estrutura dos Programas em Pascal • O programa é dividido em 3 áreas básicas: • Cabeçalho • Área de declarações • Bloco principal de comandos