apresentação do powerpoint - jeiks.netjeiks.net/wp-content/uploads/2013/05/slides_ltp_08.pdf ·...

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

Upload: vuongtruc

Post on 20-Nov-2018

215 views

Category:

Documents


0 download

TRANSCRIPT

Page 1: Apresentação do PowerPoint - jeiks.netjeiks.net/wp-content/uploads/2013/05/Slides_LTP_08.pdf · Tipos do Turbo Pascal Inteiros (Integer) Representam o conjunto dos números inteiros

Departamento de Engenharia Rural

Centro de Ciências Agrárias

Programação I

Page 2: Apresentação do PowerPoint - jeiks.netjeiks.net/wp-content/uploads/2013/05/Slides_LTP_08.pdf · Tipos do Turbo Pascal Inteiros (Integer) Representam o conjunto dos números inteiros

Tipos pré-definidos

Unidades

Funções pré-definidas

Page 3: Apresentação do PowerPoint - jeiks.netjeiks.net/wp-content/uploads/2013/05/Slides_LTP_08.pdf · Tipos do Turbo Pascal Inteiros (Integer) Representam o conjunto dos números inteiros

Tipos do Turbo Pascal

Inteiros (Integer) Representam o conjunto dos números inteiros (1, 5, -21, e 752, por

examplo).

Reais (Real) Números que possuem porções fracionais (3.14159) e expoentes

(2.579x1024). Também são conhecidos como números de ponto flutuante.

Caracteres (Char) São as letras do alfabeto, símbolos e os dígitos numéricos 0-9.

Também Podem ser usados individualmente (a, Z, !, 3) ou combinados em STRINGS de caracteres ('Este e apenas um teste.').

Lógicos (Boolean) Variáveis e expressões desse tipo apresentam um dos dois possíveis

valores : True ou False.

Page 4: Apresentação do PowerPoint - jeiks.netjeiks.net/wp-content/uploads/2013/05/Slides_LTP_08.pdf · Tipos do Turbo Pascal Inteiros (Integer) Representam o conjunto dos números inteiros

Tipos do Turbo Pascal – Números

A notação decimal ordinária é usada para números que são constantes do tipo inteiro e do tipo real.

A notação de engenharia (E ou e, seguido de um expoente) é lida como “vezes 10 elevado a” nos tipos reais. Por exemplo: 7E-2 significa 7 x 10-2

Tanto 12.25e+6 quanto 12.25e6 significam 12.25 x 10+6

Valores numéricos com ponto decimal ou com expoentes denotam constantes do tipo real.

Outros números decimais denotam constantes do tipo inteiro e poderão estar no máximo entre -2,147,483,648 e 2,147,483,647.

Page 5: Apresentação do PowerPoint - jeiks.netjeiks.net/wp-content/uploads/2013/05/Slides_LTP_08.pdf · Tipos do Turbo Pascal Inteiros (Integer) Representam o conjunto dos números inteiros

Tipos de Dados Pascal – Números

A linguagem Pascal fornece cinco tipos inteiros pré-definidos. Cada um denota um subconjunto específico dos números inteiros conforme apresentado abaixo:

Tipo Intervalo de valores Formato

Shortint -128..127 8-bits com sinal

Integer -32768..32767 16-bits com sinal

Longint -2147483648..2147483647 32-bits com sinal

Byte 0..255 8-bits sem sinal

Word 0..65535 16-bits sem sinal

Todos os tipos inteiros são tipos ordinais no Pascal.

Page 6: Apresentação do PowerPoint - jeiks.netjeiks.net/wp-content/uploads/2013/05/Slides_LTP_08.pdf · Tipos do Turbo Pascal Inteiros (Integer) Representam o conjunto dos números inteiros

Vamos testar

Faça um programa com as seguintes variáveis: intPequeno : shortint; inteiro : integer; inteiroLongo : integer; b : byte; w : word; Agora atribua a cada uma seu valor limite: intPequeno:=127; inteiro:=32767; inteiroLongo:=2147483647; b:=255; w:=65535;

Page 7: Apresentação do PowerPoint - jeiks.netjeiks.net/wp-content/uploads/2013/05/Slides_LTP_08.pdf · Tipos do Turbo Pascal Inteiros (Integer) Representam o conjunto dos números inteiros

Vamos testar

Agora, escreva seus valores na tela: writeln( 'Inteiro Pequeno:', intPequeno ); writeln( 'Inteiro:', inteiro ); writeln( 'Inteiro Longo:', inteiroLongo ); writeln( 'byte:', b ); writeln( 'word:', w ); Execute seu programa e veja o resultado; Vamos testar os limites então: após esses códigos, incremente o valor de cada variável e escreva-a novamente na tela. Exemplo: writeln( 'Inteiro Pequeno:', intPequeno ); intPequeno := intPequeno + 1; writeln( 'Inteiro Pequeno:', intPequeno );

Page 8: Apresentação do PowerPoint - jeiks.netjeiks.net/wp-content/uploads/2013/05/Slides_LTP_08.pdf · Tipos do Turbo Pascal Inteiros (Integer) Representam o conjunto dos números inteiros

Tipos do Turbo Pascal – Números

Os outros tipos ordinais pré-definidos são:

Boolean (e suas variações) e Char

Page 9: Apresentação do PowerPoint - jeiks.netjeiks.net/wp-content/uploads/2013/05/Slides_LTP_08.pdf · Tipos do Turbo Pascal Inteiros (Integer) Representam o conjunto dos números inteiros

Tipos do Turbo Pascal – Números

Em relação aos tipos reais pré-definidos, tem-se cinco tipos:

Cada um possui uma faixa e precisão específicos:

Tipo Intervalo de valores Dígitos Bytes

real 2.9e-39..1.7e38 11-12 6

single 1.5e-45..3.4e38 7-8 4

double 5.0e-324..1.7e308 15-16 8

extended 3.4e-4932..1.1e4932 19-20 10

comp -9.2e18..9.2e18 19-20 8

Nota: O tipo comp representa valores inteiros de 64-bits entre (-263 + 1) a (263 - 1)

Page 10: Apresentação do PowerPoint - jeiks.netjeiks.net/wp-content/uploads/2013/05/Slides_LTP_08.pdf · Tipos do Turbo Pascal Inteiros (Integer) Representam o conjunto dos números inteiros

Unidades pré-definidas

Uma unidade (unit) nada mais é que um conjunto de procedimentos e funções que trabalham sob um mesmo objetivo.

É uma coleção de declarações de constantes, tipos, variáveis, funções e procedimentos, compilada separadamente.

Algumas destas declarações são de uso interno da unidade, enquanto outras são visíveis, isto é, podem ser usadas por programas ou outras unidades.

Page 11: Apresentação do PowerPoint - jeiks.netjeiks.net/wp-content/uploads/2013/05/Slides_LTP_08.pdf · Tipos do Turbo Pascal Inteiros (Integer) Representam o conjunto dos números inteiros

Unidades pré-definidas

A linguagem Pascal possui diversas unidades predefinidas: system, printer, crt, dos, overlay e graph são as principais.

Os identificadores usados nestas unidades geralmente são formados por palavras compostas em inglês que lembram seu significado.

Page 12: Apresentação do PowerPoint - jeiks.netjeiks.net/wp-content/uploads/2013/05/Slides_LTP_08.pdf · Tipos do Turbo Pascal Inteiros (Integer) Representam o conjunto dos números inteiros

Unidades pré-definidas

unit graph

possui funções para criação de desenhos, figuras, barras, entre outros;

unit crt

possui os procedimentos básicos de entrada e saída de dados e instruções de controle do monitor.

Page 13: Apresentação do PowerPoint - jeiks.netjeiks.net/wp-content/uploads/2013/05/Slides_LTP_08.pdf · Tipos do Turbo Pascal Inteiros (Integer) Representam o conjunto dos números inteiros

Unidades pré-definidas

Para utilizar uma função definida em uma unit, deve-se declarar o uso dessa unidade no início do código-fonte (após a definição do nome do programa).

Exemplo:

Program meuPrograma;

uses crt;

Var ...

Begin

...

End.

Page 14: Apresentação do PowerPoint - jeiks.netjeiks.net/wp-content/uploads/2013/05/Slides_LTP_08.pdf · Tipos do Turbo Pascal Inteiros (Integer) Representam o conjunto dos números inteiros

Unidades pré-definidas

As funções clrscr (limpar todos caracteres da tela) e readkey estão disponíveis na unit crt.

Exemplo

Page 15: Apresentação do PowerPoint - jeiks.netjeiks.net/wp-content/uploads/2013/05/Slides_LTP_08.pdf · Tipos do Turbo Pascal Inteiros (Integer) Representam o conjunto dos números inteiros

Funções Pré-definidas

Além de funcionalidades providas através das Units, o Pascal dispõe de algumas funções para manipulação de dados que facilitam a escrita de programas.

Page 16: Apresentação do PowerPoint - jeiks.netjeiks.net/wp-content/uploads/2013/05/Slides_LTP_08.pdf · Tipos do Turbo Pascal Inteiros (Integer) Representam o conjunto dos números inteiros

Funções Pré-definidas – Dados Numéricos

Exemplos:

Função Finalidade Tipo do

argumento Tipo do resultado

abs(X) valor absoluto (módulo) integer, real o mesmo do argumento

frac(X) parte fracionária real real

int(x) parte inteira - resultado real real real

trunc(X) parte inteira - resultado int. real integer

round(X) valor arredondado (+ próximo) real integer

sqr(X) eleva ao quadrado integer, real o mesmo do argumento

sqrt(X) raiz quadrada integer, real real

Ln(X) logaritmo natural real real

exp(X) exponencial real real

Page 17: Apresentação do PowerPoint - jeiks.netjeiks.net/wp-content/uploads/2013/05/Slides_LTP_08.pdf · Tipos do Turbo Pascal Inteiros (Integer) Representam o conjunto dos números inteiros

Funções Pré-definidas – Dados Numéricos

Exemplos:

Função Finalidade Tipo do argumento Tipo do

resultado

dec(X,[n]*) Decremento em 1 (ou em n) integer integer

inc(X,[n]*) incremento em 1 (ou em n) integer integer

* Parâmetro opcional

Page 18: Apresentação do PowerPoint - jeiks.netjeiks.net/wp-content/uploads/2013/05/Slides_LTP_08.pdf · Tipos do Turbo Pascal Inteiros (Integer) Representam o conjunto dos números inteiros

Funções Pré-definidas – Dados Numéricos

Uso: Expressão Resultado*

C := abs(-2.5) 2.5

C := abs(8) 8

C := frac(-5.0234) -0.0234

C := int(-5.0234) -5.0

C := int(2.78) 2.0

C := trunc(-2.78) -2

C := trunc(5.38) 5

C := round(-2.78) -3 {}

C := round(5.38) 5 {}

C := round(5.5) 6 {}

*(valor da variável C após a execução da função indicada)

Page 19: Apresentação do PowerPoint - jeiks.netjeiks.net/wp-content/uploads/2013/05/Slides_LTP_08.pdf · Tipos do Turbo Pascal Inteiros (Integer) Representam o conjunto dos números inteiros

Funções Pré-definidas – Dados Numéricos

Uso: Expressão Resultado*

C := sqr(2) 4

C := sqr(1.5) 2.25

C := sqrt(4) 2

C := sqrt(2.25) 1.5

C := exp(ln(2)*3) 8

C := exp(1) 2.7182818285

*(valor da variável C após a execução da função indicada)

Page 20: Apresentação do PowerPoint - jeiks.netjeiks.net/wp-content/uploads/2013/05/Slides_LTP_08.pdf · Tipos do Turbo Pascal Inteiros (Integer) Representam o conjunto dos números inteiros

Funções Pré-definidas – Dados Ordinais

Uso: Expressão Resultado*

inc(C) -8

inc(C, 3) -6

dec(C) -10

dec(C, 3) -12

*(valor da variável C após a execução da função indicada)

{supondo C = -9}

Page 21: Apresentação do PowerPoint - jeiks.netjeiks.net/wp-content/uploads/2013/05/Slides_LTP_08.pdf · Tipos do Turbo Pascal Inteiros (Integer) Representam o conjunto dos números inteiros

Funções Pré-definidas – Dados Ordinais

Manipulação de ordinais

Pred(X) – Retorna o predecessor do argumento X

C := Pred(1); {C=0}

D := Pred(´b´); {D=´a´}

Succ(X) – Retorna o sucessor do argumento X

C := Succ(1); {C=2}

D := Succ(´b´); {D=´c´}

Page 22: Apresentação do PowerPoint - jeiks.netjeiks.net/wp-content/uploads/2013/05/Slides_LTP_08.pdf · Tipos do Turbo Pascal Inteiros (Integer) Representam o conjunto dos números inteiros

Funções Pré-definidas – Dados Ordinais

Manipulação de ordinais

Ord(X) – Retorna o valor ordinal do argumento X

C := Ord(1); {C=1}

D := Ord(´A´); {D=65, que é o código ASCII do caractere ´A´}

Page 23: Apresentação do PowerPoint - jeiks.netjeiks.net/wp-content/uploads/2013/05/Slides_LTP_08.pdf · Tipos do Turbo Pascal Inteiros (Integer) Representam o conjunto dos números inteiros

Funções Pré-definidas – Dados Ordinais

Manipulação de ordinais – Caracteres Chr(X) – Retorna um valor inteiro (x) em um caractere

com o correspondente valor ASCII. C := Chr (97); {C=‘a’}

C := Chr(65); {C=‘A’}

C := Chr (38); {C=‘&’}

C := Chr (130); {C=‘é’}

upcase(C) – Retorna a versão maíuscula de um caractere. C := upcase (‘a’); {C=‘A’}

C := upcase (‘c’); {C=‘C’}

C := upcase (chr(100)); {C=‘D’}

C := upcase (chr(130)); {C=‘é’... Como assim?!}

Page 24: Apresentação do PowerPoint - jeiks.netjeiks.net/wp-content/uploads/2013/05/Slides_LTP_08.pdf · Tipos do Turbo Pascal Inteiros (Integer) Representam o conjunto dos números inteiros

Funções Pré-definidas – Dados Ordinais

Uma outra forma de se especificar caracteres é utilizando a notação #<valor_inteiro>, que retorna o caractere de código ASCII <valor_inteiro>.

writeln(#97); {será impresso: a}

writeln(#211); {será impresso: Ë}

C := upcase (#98); {C = ‘B’}

Page 25: Apresentação do PowerPoint - jeiks.netjeiks.net/wp-content/uploads/2013/05/Slides_LTP_08.pdf · Tipos do Turbo Pascal Inteiros (Integer) Representam o conjunto dos números inteiros

Strings e operações associadas

Uma variável do tipo String armazena uma sequência de caracteres de comprimento variável, com um tamanho máximo constante entre 1 e 255.

Uma variável declarada como String sem a especificação de tamanho máximo assume automaticamente o tamanho de 255 caracteres.

Page 26: Apresentação do PowerPoint - jeiks.netjeiks.net/wp-content/uploads/2013/05/Slides_LTP_08.pdf · Tipos do Turbo Pascal Inteiros (Integer) Representam o conjunto dos números inteiros

Strings e operações associadas

Constantes do tipo String são especificadas entre apóstrofes:

'Programacao 1'

'That''s all'

Dois apóstrofes consecutivos são usados para indicar um único apóstrofe em uma string (segundo exemplo acima).

Page 27: Apresentação do PowerPoint - jeiks.netjeiks.net/wp-content/uploads/2013/05/Slides_LTP_08.pdf · Tipos do Turbo Pascal Inteiros (Integer) Representam o conjunto dos números inteiros

Funções Pré-definidas - Strings

Length (S) – Retorna o número de caracteres de S tamanho := Length(´Pascal´); {tamanho = 6}

Copy (S, Index, Count) – Retorna uma substring da uma string S

C := Copy(´bruno´,3,2); {C=´un´}

Concat (S1[,S2, S3, ... Sn]) – Retorna uma string que é a concatenação das strings fornecidas como parâmetros na função

C := Concat(´Bru´,´un´, ´no´); {C=´Bruunno´}

Page 28: Apresentação do PowerPoint - jeiks.netjeiks.net/wp-content/uploads/2013/05/Slides_LTP_08.pdf · Tipos do Turbo Pascal Inteiros (Integer) Representam o conjunto dos números inteiros

Funções Pré-definidas - Strings

Delete (S, Index, Count) – Elimina uma substring de uma string S

C := ´Olho de boi´; Delete(C,6,3); {C=´Olho boi´}

Pos(S1,S) – Retorna a posição inicial da substring S1 em S

Posic := pos (´Pascal’, ‘Turbo Pascal’); {posic = 7}

Obs: a função pos retorna 0 (zero) quando S1 não está presente em S. {ex: pos(‘pascal’, ‘Turbo Pascal’) retorna 0}

Lembrem-se: espaço em branco também é caractere em uma string, logo deve ser considerado em funções de manipulação de string, seja para busca ou contagem

Page 29: Apresentação do PowerPoint - jeiks.netjeiks.net/wp-content/uploads/2013/05/Slides_LTP_08.pdf · Tipos do Turbo Pascal Inteiros (Integer) Representam o conjunto dos números inteiros

Funções Pré-definidas - Controle

Controle de execução

Halt: encerra o programa quando executado

Sintaxe: Halt;

Break: encerra uma estrutura de repetição (for, while, repeat)

Sintaxe: Break;

Exit: Sai imediatamente do bloco corrente

Sintaxe: Exit; Existem muitas outras funções disponíveis, consulte a ajuda do Turbo Pascal ou a documentação das units.

Page 30: Apresentação do PowerPoint - jeiks.netjeiks.net/wp-content/uploads/2013/05/Slides_LTP_08.pdf · Tipos do Turbo Pascal Inteiros (Integer) Representam o conjunto dos números inteiros

Referências

BORLAND. Turbo Pascal, versão 7.0. [S.L.] : Borland International, Inc.,1992.

DEITEL, P. J.; DEITEL, H.M.; Java: How to program, 9th ed, Ed. Prentice-Hall, 2011. ISBN: 978-0-13-257566-9.

FARRER, H.; BECKER, C. G.; FARIA, E. C.; MATOS, H. F.; et al. Algoritmos estruturados. 3ed, Ed. LTC, 1999. ISBN: 9788521611806.

FARRER, H.; BECKER, C. G.; FARIA, E. C.; MATOS, H. F.; et al. Pascal estruturado. 3ed, Ed. LTC, 1999. ISBN: 9788521611745.

GUIMARÃES, A. M.; LAGES, N. A. C.; Algoritmos e estruturas de dados. 1ed, Ed. LTC, 1994. ISBN: 9788521603788.

GRIFFITHS,D., BARRY,P., Head First Programming – A learner's guide to programming using the Python language, O´Reilly, 2009, 406p.

http://wwwusers.rdc.puc-rio.br/rmano/processo.html

Velloso, F. C.; Informática: Conceitos Básicos. 7ed, Ed. Campus, 2004. ISBN: 9788535215366.