Linguagem PASCAL Definição e Tipos de Dados

Slides:



Advertisements
Apresentações semelhantes
Estruturação de Linguagens (Pascal e C++)
Advertisements

Programação em Java Prof. Maurício Braga
Linguagem de Programação I
Programação em Java Prof. Maurício Braga
Linguagem PASCAL Subprogramas
Linguagem PASCAL Estruturas de Controle
Programação em Java Prof. Maurício Braga
Estruturas de Repetição
FOLHA DE CÁLCULO 1.
Software Básico Silvio Fernandes
Introdução a Programação Renata Freire
PROGRAMAÇÃO MODULAR (com uso de subprogramas) prof
Introdução à Linguagem PASCAL Prof. Luis Otavio Alvares
Adaptado de material da profa. Maria Aparecida Livi
Introdução a Informática
Construção de Algoritmos 1
LINGUAGEM C.
Introdução à Programação Pascal - Começando Prof. Filipo Studzinski Perotto 2009.
Programação para Engenharia I
Rodrigo de Toledo (original: Claudio Esperança)
{Exemplo de um programa PASCAL} uses CRT; var
Algoritmos e Estruturas de Dados II
Aula 4 Nomes, Vinculações, Tipos e Escopos
Estrutura de decisão e repetição em JAVA
Classes e objetos P. O. O. Prof. Grace.
Introdução a Programação JAVA
O Portal do Estudante de Computação
O Portal do Estudante de Computação
O Portal do Estudante de Computação
Paradigmas de programação
João Lucas de Oliveira Torres
Semana 03: Comandos de desvio de fluxo. Expressões lógicas.
Variáveis, Tipos de Dados e Constantes
PROGRAMAÇÃO I UNIDADE 1.
Sub-programas. Mecanismo de composição de programas Sub-programa está para peça de LEGO assim como um programa está para a construção.
Introdução a Programação COM 100
Estrutura de dados, pseudocódigo
Introdução a Programação
Fábio de Oliveira Borges
Semana 03 Comandos de desvio de fluxo. Expressões lógicas.
O Portal do Estudante de Computação
Paradigmas de Programação - prof Gláucya Carreiro Boechat1 Elaborando um Programa Prof.: Gláucya Carreiro Boechat Universidade.
Aula 6 - Estruturas de Controle
Linguagem e Ambiente Scratch
Computação Eletrônica
Capítulo III Modularização Procedimentos e Funções Universidade Federal de São Carlos Departamento de Computação Aluna: Luanna Lopes Lobato
Linguagem Pascal Prof. Sérgio Rodrigues.
Lógica Estruturada Aplicada
Faculdade Talentos Humanos - FACTHUS - Algoritmo I - Rogério Rodrigues
ARQUIVOS.
Introdução a Algoritmos
LINGUAGENS DE PROGRAMAÇÃO
Algumas notas sobre a linguagem de programação C
Aula prática 2 Operadores e Expressões Comandos de Decisão Comentários
“Introdução a Computação” Capítulo II Estruturas de Dados
Programação de PIC em C Exposição das funções básicas para
VARIÁVEIS COMPOSTAS HOMOGÊNEAS UNIDIMENSIONAIS (VETORES)
Técnicas de Programação I
Computação Eletrônica Variáveis Reais e Booleanas.
Fundamentos de linguagens de programação
Programação de Computadores - 1
Introdução à Programação
Tipos de Dados Todo o trabalho realizado por um computador é baseado na manipulação das informações contidas em sua memória. Estas informações podem.
11 Revisão da Linguagem C Prof. Kariston Pereira Adaptado de Material gentilmente fornecido pelo Prof. Rui Tramontin (DCC/UDESC)
Computadores vs. Programas / Algoritmos Computadores vs. Programas -> Algoritmos O tratamento de problemas através do computador geralmente envolve uma.
Computação Eletrônica Variáveis Inteiras. A memória A memória pode ser vista como um imenso gaveteiro Em cada gaveta, guardamos uma informação. Por exemplo,
Programação e Sistemas da Informação 48 tempos IPTrans, Novembro 2009 Prof. Marisa Gomes.
Algoritmos Grupos de Slides No 2. Prof. SIMÃO Estrutura de decisão simples “Se” if end Feito por Prof. Jean Marcelo SIMÃO e revisado por Prof. Luis Alberto.
Lógica de Programação Aula 06 Prof. Marcelo Marcony.
Transcrição da apresentação:

Linguagem PASCAL Definição e Tipos de Dados UFRPE – Deptº de Estatística e Informática Disciplina: Introdução à Computação Prof.: Paulemir G. Campos Linguagem PASCAL Definição e Tipos de Dados Material elaborado pela Profª Alzennyr Cléa da UFRPE/DFM. Linguagem PASCAL

Origem Linguagem de programação largamente utilizada no ensino-aprendizagem 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, o mais comum no ambiente acadêmico é o Turbo Pascal, da Borland. Linguagem PASCAL

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

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

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

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

Turbo Pascal Compilador que vamos usar: Inprise/Borland Turbo Pascal 7.0 http://www.borland.com Criado em 1983 (v1.0) Atualmente: Delphi 2005 - uma extensão da linguagem Pascal (inclui conceitos de orientação à objetos e construção de interfaces gráficas através de uma programação visual e interativa). Linguagem PASCAL

Termos em Pascal Equivalência de termos entre a Linguagem Algorítmica e Pascal: LA PASCAL declare Var Início Begin Fim End Caracter Char Inteiro Integer Real Lógico Boolean Leia Read Escreva Write Linguagem PASCAL

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

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

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

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

Sintaxe de um Programa Todo programa em PASCAL deve ter a seguinte forma: program <nome>; <bloco>. Onde: <nome> - nome do programa <bloco> - corpo do programa Linguagem PASCAL

Bloco do programa declarações begin seqüência de comandos end O <bloco> é formado por: declarações begin seqüência de comandos end E as declarações de variáveis: var lista-de-variáveis: tipo; onde tipo=integer, real, boolean, string, char. Linguagem PASCAL

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

Comentários { comentário } ou (* comentário *) 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

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

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

Expressões Lógicas A<>B, nome=´João´, a<0, x>1 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 1a: not 2a: *, /, div, mod, and 3a: +, -, or 4a: =, <>, <, <=, >=, >, in Linguagem PASCAL

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

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

Entrada e Saída (E/S) As ações que executam estas tarefas são: Obter dados: leia(dado1, …, dadon); Apresentar dados: escreva(dado1, …, dadon); Exemplos: leia(NOME, IDADE); leia(PRODUTO, QUANTIDADE, VALOR); escreva(SOMA, MÉDIA); escreva(“Nome: ”, NOME, “Idade: ”, IDADE); Linguagem PASCAL

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

Comandos de Entrada e Saída Leitura program leitura; var n: integer; nota: real; begin readln (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

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

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 Obs.: O caracter ‘_’ neste caso simboliza o espaço vazio. Linguagem PASCAL

Mapeando Programas para Pascal Exemplo do programa para calcular a área do triângulo retângulo: Linguagem Algoritmica início declare base, altura, área: real; leia (base, altura); área  (altura*base)/2; escreva (área); fim 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

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

Mapeando Programas para Pascal 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) 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

Exemplo 1 - Save as 2 - Compile (ou ALT-F9) 3 - Run (ou CTRL-F9) File Edit Run Compile Options Debug Break/Watch program AreaCirculo; const { Declaração de constantes } PI = 3.1415926; var { Declaração de Variáveis } raio : real; area: real; begin { Comandos do Programa } write (‘Forneça o raio: ‘); readln (raio); area := PI*(raio*raio); writeln (‘Área = ‘, area); end. Watch F1-Help F5-Zoom F6-Switch F7-Trace F8-Step F9-Make F10-Menu Linguagem PASCAL

Exercício de Sala Programa 1 - Leia 4 números e imprima a média. Programa 2 - Leia o valor da temperatura em graus Celsius e transforme para Farenheit. Use a fórmula: C = 5/9*(F-32) Linguagem PASCAL

Sumário da metodologia de solução 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

Sumário da metodologia de solução 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