Linguagem Pascal. Definição e Tipos de Dados. Professora Lara Popov Zambiasi Bazzi Oberderder. Linguagem PASCAL 1

Documentos relacionados
Linguagem de Programação Pascal - Introdução

Linguagem de programação: Pascal

Linguagem Pascal. Prof. Antonio Almeida de Barros Junior

Linguagem Pascal. Prof. Sérgio Rodrigues. É a descrição, de forma lógica, dos passos a serem executados no cumprimento de determinada tarefa;

Programação Introdução

Introdução à Ciência da Computação

= = = = = = = = = = = = = = = =

ENGENHARIA DE PRODUÇÃO ICC 1 TÉCNICAS DE PROGRAMAÇÃO

APÊNDICE A - FUNDAMENTOS DA LINGUAGEM DE PROGRAMAÇÃO PASCAL.

6) ESTRUTURA DE UM PROGRAMA

Teoria da Computação e Algoritmos. Introdução à Linguagem Pascal. ALGORITMO <Nome do algoritmo>; <definições>; INÍCIO <Comandos>; FIM.

Linguagem Pascal. Prof. Jonatas Bastos Site:

Sintaxe do Pascal Simplificado Estendido de 12 novas construções em Notação EBNF (BNF estendida)

Disciplina Programação Prof. Esp. Armando Hage. Programação em Turbo Pascal

VARIÁVEIS NUMÉRICAS : integer - Números inteiros entre e real - Números reais de 11 algarismos significativos.

Pascal. -Cabeçalho do programa. - label - const - type - var - procedure - function. - integer - real - byte - boolean - char - string

Lógica de Programação I. Gilson de Souza Carvalho

Introdução à programação em PASCAL. Aula de 22/10/2001. Nota: Conjunto de slides baseados nas transparências utilizadas em PEDA em anos anteriores

INTRODUÇÃO À LINGUAGEM PASCAL PREFÁCIO

O AMBIENTE DE PROGRAMAÇÃO VISUAL -PLANO DE ENSINO. Prof. Angelo Augusto Frozza, M.Sc.

Métodos de Programação I Ana Maria de Almeida

Sumário. Ciência da Computação. Prof. Dr. Leandro Alves Neves. Aula 10. Algoritmos e Programação. Enquanto (Teste no início) Repeat (Teste no final)

Linguagem Computacional. Estruturas de Controle: Estruturas de Repetição. Prof. Dr. Adriano Cansian Prof. Dr. Leandro Alves Neves

Noções de algoritmos - Aula 1

Introdução. Lógica e Algoritmo. Lógica e Algoritmo. Lógica e Algoritmo. Lógica e Algoritmo

Engenharia Civil e Engenharia Básica Programação de Computadores Wedson Quintanilha da Silva

Computação I. Prof. Miguel Elias Mitre Campista.

Programação de Computadores I Dados, Operadores e Expressões PROFESSORA CINTIA CAETANO

Fábio Rodrigues / Israel Lucania

Organização de programas em Pascal

Noções de algoritmos - Aula 1

Departamento de Engenharia Rural Centro de Ciências Agrárias. Programação I

PROGRAMAÇÃO COMPUTACIONAL I

Computação L2. Linguagem C++ Observação: Material Baseado na Disciplina Computação Eletrônica.

Aula Anterior. Decomposição algorítmica (continuação)

Compiladores Prof. a Mariella Berger. Trabalho 2 Analisador Léxico

Linguagens de Programação

BCC Introdu c ao ` a Programa c ao Portugol Guillermo C amara-ch avez UFOP 1/35

Algoritmos: Conceitos Fundamentais. Slides de autoria de Rosely Sanches e Simone Senger de Souza

FACCAT Sistemas de Informação. Estruturas de Dados

Algoritmo e Programação Matemática

Aulas Anteriores. Detalhes da linguagem de programação

Elementos básicos das linguagens de programação

Introdução ao Pascal. Computação I. Níveis de Linguagens de Programação. Níveis de Linguagens de Programação. Como um Programa é Executado?

Linguagem Computacional

2.2.5 EXPRESSÕES - Regras para o cálculo de valores

LISTA DE EXERCÍCIOS 15 ( Matrizes (7Cs))

SSC304 Introdução à Programação Para Engenharias

LÓGICA DE PROGRAMAÇÃO. Algoritmos Computacionais. Sérgio Carlos Portari Júnior

Lógica de Programação com Pascal. Teoria e Prática. Este material visa auxiliar no aprendizado da programação com Pascal através de exemplos práticos.

Representação de Algoritmos - Linguagens de Programação

Algoritmos e Programação

Capítulo VI : Subprogramas

UNISINOS - UNIVERSIDADE DO VALE DO RIO DOS SINOS CENTRO DE CIÊNCIAS EXATAS E TECNOLÓGICAS (C6/6) Curso: Informática

Algoritmos: Conceitos Fundamentais. Baseado nos slides de autoria de Rosely Sanches e Simone Senger de Souza

Tutorial de Turbo Pascal

LISTA 14 Gabarito. 1) Preparar um algoritmo para calcular a soma de 100 termos da seguinte série:

APONTAMENTOS DE PASCAL

Notas de Aula de Algoritmos e Programação de Computadores

Exercícios. Resposta: a) var valor: real; i: integer. b)

CMP Algoritmos Algoritmos Parte I. Professor Vicente Paulo de Camargo

Aula 5 Oficina de Programação Introdução ao C. Profa. Elaine Faria UFU

Ciência da Computação. Prof. Dr. Leandro Alves Neves Prof. Dr. Adriano M. Cansian

TÉCNICO DE INFORMÁTICA - SISTEMAS

3. Linguagem de Programação C

ALGORITMOS VARIÁVEIS E OPERADORES. Prof. Angelo Augusto Frozza, M.Sc.

Refinamentos sucessivos

Curso Profissional de Gestão e Programação de Sistemas Informáticos. Programação e Sistemas de Informação. Módulo 1. 3ª Parte Prof. Sandra Pais Soares

Computação Eletrônica

tipoveiculo = (bicicleta, motociclo, motorizada, automovel, autocomreb, camioneta, autocarro, camiao, reboque); veiculo : tipoveiculo;

Algoritmos e Programação

Introdução a Linguagem C. Prof. Me. Hélio Esperidião

SEBENTA INTRODUÇÃO Á ALGORITMIA

Linguagem de Descrição de algoritmos

Unidade VI. Técnicas de Teste de Software Teste Estrutural. Profa. Dra. Sandra Fabbri

Capítulo 3 CARACTERÍSTICAS GERAIS DA LINGUAGEM PASCAL 1. INTRODUÇÃO

Análise Semântica e Tratamento de Erros Dependentes de Contexto

Introdução ao SciLab. SciLab O que é? Onde obter o programa:

Resolução De Problemas Em Informática. Docente: Ana Paula Afonso Resolução de Problemas. 1. Analisar o problema

Resumo 2 - Mapeamento Portugol-Pascal

Introdução à Computação

Algoritmos. Algoritmos e Linguagem de Programação - Prof Carlos Vetorazzi

Universidade Federal de Uberlândia Faculdade de Computação. Conceitos básicos de algoritmos Prof. Renato Pimentel. Computação

Linguagem de Programação I. Linguagem Pascal

ALGORITMOS E TÉCNICAS DE PROGRAMAÇÃO

Capítulo VII : A Recorrência

Algoritmos Lógica e Programação Prof. Me. Adelson Felipe Dias Nogueira

PROGRAMAÇÃO de COMPUTADORES: LINGUAGEM FORTRAN 90/95

01/08/2011. Tipos de dados Numéricos Alfanuméricos Lógicos. Numéricos. Tipos de dados. Dados Numéricos Inteiros. Dados Numéricos Reais.

CONCEITOS DE ALGORITMOS

Introdução à Ciência da Computação

Lógica de Programação e Algoritmos. Prof. André Y. Kusumoto

Linguagem e Técnicas em Programação. Gilson de Souza Carvalho

Introdução. Lógica e Algoritmo. Lógica e Algoritmo. Lógica e Algoritmo. Lógica e Algoritmo. Lógica e programação Aula 02

Portugol. Tiago Alves de Oliveira

I - CONCEITOS INICIAIS

Algoritmos - 1. Alexandre Diehl. Departamento de Física - UFPel

08/05/2012. Tipos de dados. Tipos de dados. Elementos Básicos. Tipos de dados. Elementos Básicos Tipos de dados. Dados e seus tipos:

Algoritmo. Prof. Anderson Almeida Ferreira. Agradeço ao prof. Guilherme Tavares de Assis por fornecer slides que fazem parte desta apresentação

Transcrição:

Linguagem Pascal Definição e Tipos de Dados Professora Lara Popov Zambiasi Bazzi Oberderder Linguagem PASCAL 1

Origem Linguagem de programação largamente utilizada no ensinoaprendizagem de programação de computadores; Criada por Niklaus Wirth em 1972, na Universidade Técnica de Zurique, Suiça; Seu nome homenageia o matemático Blaise Pascal (1623-1662); Existem vários compiladores para esta Linguagem PASCAL 2 linguagem, usaremos o pascalzim.

Algoritmo x Programa Algoritmo: Conjunto de etapas finitas, ordenadamente definidas com o propósito de obter soluções para um determinado problema. Programa: Formalização de um algoritmo em uma linguagem inteligível pelo computador. Linguagem PASCAL 3

Conceitos Básicos Qual o tipo de linguagem que o computador entende? Linguagem de máquina. Como podemos fazer a tradução de uma linguagem de programação para linguagem de máquina? Usando um compilador ou interpretador. Como um programa é executado no computador? Primeiro ele é carregado na memória e depois cada instrução é executada de acordo com a lógica do programa. Linguagem PASCAL 4

Etapas 1) Definição do problema 2) Desenvolvimento de um algoritmo 3) Transcrição para PASCAL 4) Digitação do programa 5) Compilação 6) Execução Linguagem PASCAL 5

Passos para construção de algoritmos Ler atentamente o enunciado do problema a ser resolvido; Identificar quais são as entradas (ou seja, o que é fornecido) para a solução do problema; Identificar o que deve ser feito para, a partir das entradas, produzir as saídas. Um algoritmo pode ser visto como uma função que leva as entradas para saídas. No processo, tentar achar uma solução prática para resolver o problema e depois escreve-la na linguagem algorítmica. Linguagem PASCAL 6

Turbo Pascal Compilador que vamos usar: PASCALZIM O programa nasceu como ferramenta de apoio ao ensino da linguagem Pascal na Universidade de Brasília Linguagem PASCAL 7

Fluxogramas X Pascal Um programa em Pascal é composto, basicamente, de três partes. São elas: Cabeçalho do Programa; Área de Declarações; Corpo do Programa. Linguagem PASCAL 8

Cabeçalho program nomeprogram; Linguagem PASCAL 9

Área das Declarações var nome: string; idade : integer; altura : real; Também podemos declarar tipos iguais var a, b, c : integer; Linguagem PASCAL 10

Corpo do programa begin instruções; (...) end; Linguagem PASCAL 11

program ADICIONA_NUMEROS; Cabeçalho do programa var X : integer; A : integer; B : integer; begin readln(a); readln(b); X := A + B; writeln(x); end. Área das declarações Corpo do programa Entrada Processamento Saída Linguagem PASCAL 12

Termos em Pascal Equivalência de termos entre a Linguagem Algorítmica e Pascal: Ling Algoritmo Se If Então Then Senão Else Enquanto While Faça Do Repita Repeat Para For Até Until / To := PASCAL Linguagem PASCAL 13

Constantes (CONST) Valor fixo. Não muda durante a execução de um programa Podem ser numéricas, lógicas ou alfanuméricas (literal) Ex: numéricas: 25, +34, -315, -0.53, 7.8E-3,.13 lógicas: true, false alfanuméricas: A-Z, a-z, 0-9,!,?, /, *, &, $, %,... Linguagem PASCAL 14

Variáveis (VAR) São representadas por identificadores Formado por: uma letra, ou uma letra seguida de letras ou dígitos: Ex: A, Nota, matricula, x, a, a1, a2, bd, A32B Maiúsculas são iguais a minúsculas: AB = ab Linguagem PASCAL 15

Palavras Reservadas Identificadores usados na linguagem and, array, begin, case, const, div, do, downto, else, end, file, for, function, goto, if, in, label, mod, nil, not, of, or, packed, procedure, program, record, repeat, set, then, to, type, until, var, while, with. Identificadores de significado definido input, output, integer, real, read, write, etc... Linguagem PASCAL 16

Definição de novos tipos (type) Em pascal, o programador também tem a liberdade de definir um novo tipo; Uma vez definido o novo tipo, este passa a ser referenciado pelo seu identificador; Exemplo: type Indices = 0..63; Letras = A.. Z ; Faixa = -3..3; var codigo: integer; teste: boolean; letra: Letras; Linguagem PASCAL 17

Comentários Usado apenas para aumentar a clareza do programa, não é analisado pelo computador: { comentário } ou (* comentário *) var matr: string; { nr. de matricula } nota: real; { nota de prova } cod: integer; (* código do curso *) Linguagem PASCAL 18

Expressões Aritméticas Lógicas Literais Linguagem PASCAL 19

Expressões Aritméticas Ordem de prioridade: 1 a : *, /, div, mod 2 a : +, - div - quociente da divisão inteira mod - resto inteiro da divisão inteira exemplo 1 : x = 11 div 4 = 2, y = 11 mod 4 = 3 exemplo 2 : u = sqrt(p*(p-a)*(p-b)*(p-c)) exemplo 3 : v = exp(b*ln(a)) = e b*ln a Linguagem PASCAL 20

Expressões Lógicas Relações A<>B, nome= João, a<0, x>1 Operadores lógicos p and q, p or q, not p Ex: (idade>25) and (nome= Maria ) Prioridade dos operadores lógicos e aritméticos 1 a : not 2 a : *, /, div, mod, and 3 a : +, -, or 4 a : =, <>, <, <=, >=, >, in Linguagem PASCAL 21

Expressões Literais Retorna caracter: chr(cod) { cod = código ASCII (American Standard Code for Information Interchange) } Retorna código ASCII : ord(ch) {ch = caracter } Sucessor do caracter: succ(ch) Antecessor do caracter: pred(ch) Ex: chr(65) retorna A ; ord( 'C' ) retorna 67; succ( 'd' ) retorna e ; pred( 'd' ) retorna c ; Linguagem PASCAL 22

Comando de Atribuição Identificador := expressão var A, B, X, Y: integer; K, Media: real; teste: boolean; cor: string; K:=1; A:=K; Media := (A+B)/2; teste := (X=0) and (Y<>2); cor := verde ; Linguagem PASCAL 23

Entrada e Saída (E/S) As ações que executam estas tarefas são: Obter dados: leia(dado 1,, dado n ); Apresentar dados: escreva(dado 1,, dado n ); Exemplos: leia(nome, IDADE); leia(produto, QUANTIDADE, VALOR); escreva(soma, MÉDIA); escreva( Nome:, NOME, Idade:, IDADE); Linguagem PASCAL 24

E/S Pseudocódigo leia(a, B, C) escreva(a, B, C) Fluxograma leia A, B, C escreva A, B, C Pascal read(a, B, C) ou readln(a, B, C) write(a, B, C) ou writeln(a, B, C) Linguagem PASCAL 25

Fluxogramas leia numero Pascal read(numero); ou readln(numero); escreva Número=,numero Write('Número',numero); ou Writeln('Número',numero); processamento soma = a+b soma := a+b; Linguagem PASCAL 26

Comandos de Entrada e Saída Leitura program leitura; var n: integer; nota: real; begin readln (n, nota); readln (n, nota); read (n, nota); read (n, nota); { a diferença é que o readln gera uma mudança de linha após a leitura dos valores } end. Entrada: 1 6,5 2 7,0 3 8,0 4 9,0 5 5,0 6 4,0 7 3,0 8 9,5 n, nota? Linguagem PASCAL 27

Comandos de Entrada e Saída Escrita var n, p: string; x, a: integer; begin x := 0; read (n,a); x := x + a; p := n; write (p,x); a := x + a; writeln (a); x := x + a; write (n, x, a); end. Entrada: Joao 25 Saída? Linguagem PASCAL 28

Comandos de Entrada e Saída Formatação na escrita program formata; var a,b: real; k,l: char; begin a:=3.2; b:=5.81; k:= x ; l:= y ; write (a:4:2, k:2, +, b:5:2, l:2, =, a+b:7:3); end. Saída=3.20_x+_5.81_y= 9.010 Linguagem PASCAL 29 Obs.: O caracter _ neste caso simboliza o espaço vazio.

Mapeando Programas para Pascal Exemplo: Calcular a área do triângulo retângulo: Linguagem PASCAL 30

Linguagem algortimica Linguagem Algoritmica início declare base, altura, área: real; leia (base, altura); área (altura*base)/2; escreva (área); fim Linguagem PASCAL 31

Fluxograma início Programa que calcula área do triângulo base, altura area = (base*altura)/2 Área:, area fim Linguagem PASCAL 32

Pascal program Area_Triangulo; Var area, altura, base: real; begin write( Digite a altura do triangulo: ); Readln(altura); write( Digite a base do triangulo: ); Readln(base); area := altura*base/2; write ( A área do triângulo é igual a:,area); End. Observe que as instruções read e write servem para ler dados fornecidos pelo usuário e para escrever informações na tela, respectivamente. Estas duas instruções podem ser seguidas por ln e, neste caso uma linha será pulada na tela após a execução da instrução. Linguagem PASCAL 33

Mapeando Programas para Pascal Observe que neste primeiro exemplo, não tivemos a oportunidade de verificar o resultado final emitido pelo algoritmo; POR QUE ISTO ACONTECE? Podemos resolver tal problema acrescentando a instrução readkey; imediatamente após informarmos o resultado final encontrado pelo algoritmo; Obs: esta instrução só será reconhecida se logo após a linha de program for colocada a seguinte instrução: uses crt; Feito isto, pode-se percebe que o resultado final aparece numa notação científica nada agradável, isto pode ser alterado através da seguinte mudança: write ( A área do triângulo é igual a:,area:2:2); Linguagem PASCAL 34

Observe ainda que a cada nova execução do programa aparecem lixos na tela, referentes às execuções anteriores. Isto pode ser eliminado com uma instrução apropriada para limpar a tela: clrscr; (que vem do inglês clear screen) Linguagem PASCAL 35

Assim, o algoritmo ficaria da seguinte forma: Pascal Program Area_Triangulo; Uses crt; Var area, altura, base: real; Begin clrscr; write ( Digite a altura do triangulo: ); readln(altura); write ( Digite a base do triangulo: ); readln(base); area := altura*base/2; write ( A área do triângulo é igual a:,area:2:2); readkey; End. Linguagem PASCAL 36

Resumindo... Para solucionar um problema em computação siga os seguintes passos: 1. Assegurar-se do entendimento completo da especificação do problema 2. Formular um esboço geral do algoritmo para a solução do problema, prestando pouca atenção a detalhes específicos. Esta será a primeira tentativa de expressar a estratégia de sua solução. Assegurar a si próprio que a estratégia está correta. Linguagem PASCAL 37

Resumindo... 3. Identificar e listar qualquer variável que você sinta ser necessária. Esta lista é somente uma primeira aproximação do conjunto final de variáveis; ela pode ser aumentada ou diminuída se necessário. 4. Retornar aos passos iniciais do algoritmo e prosseguir com o detalhamento. Cada vez que um passo é desdobrado em vários outros mais detalhados, verificar se estes novos passos executam a função expressa no passo original. 5. Teste o algoritmo com exemplos. Linguagem PASCAL 38

Exercícios Linguagem PASCAL 39

Referências Bibliográficas GOMES, Edeyson Andrade. Lógica de Programação com Pascal: Teoria e Prática. Disponível em: http://edeyson.com.br/arquivos/producaopessoal/livro %20Algoritmos%20com%20Pascal%20by%20Edeyson %20Gomes.pdf. Acesso em: 21/10/2013. Linguagem PASCAL 40