algoritmos e estruturas de dados i – tipos de dados profa. mercedes gonzales márquez

26
Algoritmos e Estruturas de Dados I – Tipos de dados Profa. Mercedes Gonzales Márquez

Upload: francisca-alencastre-de-barros

Post on 07-Apr-2016

217 views

Category:

Documents


0 download

TRANSCRIPT

Page 1: Algoritmos e Estruturas de Dados I – Tipos de dados Profa. Mercedes Gonzales Márquez

Algoritmos e Estruturas de Dados I – Tipos de dados

Profa. Mercedes Gonzales Márquez

Page 2: Algoritmos e Estruturas de Dados I – Tipos de dados Profa. Mercedes Gonzales Márquez

Itens básicos

Introduziremos um conjunto particular de regras e convenções para desenvolver algoritmos.

Estas normas não são únicas, nem universais, foram estabelecidas a partir da experiência da professora.

Page 3: Algoritmos e Estruturas de Dados I – Tipos de dados Profa. Mercedes Gonzales Márquez

ConstantesÉ um determinado valor fixo que não se modifica ao

longo do tempo, durante a execução do algoritmo.Conforme o seu tipo, a constante é classificada em

numérica, lógica e literal.Constante numérica(1) InteiroExemplos: a) 15 b) -1(2) RealExemplos: a) 3,141592; b) -0,91

Page 4: Algoritmos e Estruturas de Dados I – Tipos de dados Profa. Mercedes Gonzales Márquez

Constantes

Constante lógicaÉ um valor lógico que só pode ser falso ou verdadeiro, usado em proposições lógicas.

Page 5: Algoritmos e Estruturas de Dados I – Tipos de dados Profa. Mercedes Gonzales Márquez

Constantes

Constante literalUma sequência de caracteres (letras, dígitos ou símbolos especiais). Toda constante literal será colocada entre aspas para que não seja confundida com outro item qualquer.a)“JOSÉ GONÇALVES” b) “12345” c) “x1y2w3” d) “*A!B:-” e) “23/03/10” f) “falso”

Page 6: Algoritmos e Estruturas de Dados I – Tipos de dados Profa. Mercedes Gonzales Márquez

Variáveis• Uma entidade destinada a guardar um dado

cujo valor pode variar ao longo do tempo durante a execução do algoritmo.

• A cada variável corresponde uma posição na memória.

• Ela assume somente um valor de cada vez.• Toda variável é identificada por um nome ou

identificador.

Page 7: Algoritmos e Estruturas de Dados I – Tipos de dados Profa. Mercedes Gonzales Márquez

Variáveis - Identificadores• O identificador escolhido para rotular as variáveis

deve obedecer as seguintes regras- O primeiro caractere deve ser uma letra- Os nomes devem ser formados por caracteres pertencentes ao seguinte conjunto:{A,B,...,X,Y,W,Z,0,1,...,8,9,_}

• Utiliza-se nomes de variáveis elucidativos. Exemplo se a variável vai armazenar o nome de um empregado, deve-se usar o identificador nome para representá-la.

Page 8: Algoritmos e Estruturas de Dados I – Tipos de dados Profa. Mercedes Gonzales Márquez

Variáveis - Declaração

• As variáveis também são classificadas como numéricas, lógicas e literais.

• Para indicar o tipo de uma variável é usada a declaração de variáveis.

• Quando se declara uma variável é feita uma associação do identificador com a respectiva posição de memória que este vai simbolizar.

Page 9: Algoritmos e Estruturas de Dados I – Tipos de dados Profa. Mercedes Gonzales Márquez

Variáveis - Declaração

•Uma vez declarada a variável, qualquer referência que se faça ao seu identificador implica a referência ao conteúdo do local da memória representado pelo mesmo.

Page 10: Algoritmos e Estruturas de Dados I – Tipos de dados Profa. Mercedes Gonzales Márquez

Variáveis – Sintaxe da declaração

tipo_dado : identificador_da_variávelExemplos:

Real: x,y,z,wInteiro: num_alunosLiteral: nome_alunoLogico: sim

Page 11: Algoritmos e Estruturas de Dados I – Tipos de dados Profa. Mercedes Gonzales Márquez

Variáveis – Operadores aritméticos

•Além de limitar o conjunto de dados, a declaração de tipos define o conjunto de operadores que podem agir sobre a variável.Operadores aritméticos:

Page 12: Algoritmos e Estruturas de Dados I – Tipos de dados Profa. Mercedes Gonzales Márquez

Variáveis – Operadores aritméticos

Símbolo

Função Tipos disponíveis

+ Adição Inteiro,real- subtração ”* Multiplicação ”/ Divisão real ”

** Exponenciação ”MOD Resto da divisão

inteiraInteiro

DIV Quociente da divisão inteira

Inteiro

Page 13: Algoritmos e Estruturas de Dados I – Tipos de dados Profa. Mercedes Gonzales Márquez

Operadores aritméticos - Prioridades

1º prioridade : Exponenciação2º prioridade : Divisão, multiplicação3º prioridade : Adição, subtração

Page 14: Algoritmos e Estruturas de Dados I – Tipos de dados Profa. Mercedes Gonzales Márquez

Operadores relacionais

Símbolo

Função Tipos disponíveis

= Igual Todos<> Diferente Todos>= Maior ou igual que Todos<= Menor ou igual que TodosO resultado obtido de uma relação é sempre um valor

lógico. Exemplos:(a) A<>B (b) nome=“Maria” (c) B**2-4*A*C<0

Page 15: Algoritmos e Estruturas de Dados I – Tipos de dados Profa. Mercedes Gonzales Márquez

Operadores relacionaisDadas as variáveis numéricas x,y,z e as variáveis literais NOME e COR, observar os resultados obtidos para as relações a partir dos valores atribuídos a estas variáveis.

VARIÁVEIS RELAÇÕES

X Y Z COR NOME X2 +Y>Z COR=“AZUL” NOME<>”JOSE”

1 2 5 “AZUL” “PAULO” Falso Verdade Verdade

4 3 1 “VERDE” “JOSE” Verdade Falso Falso

1 1 2 “BRANCO” “PEDRO” Falso Falso Verdade

1 2 1 “AZUL” “JOSE” Verdade Verdade Falso

Page 16: Algoritmos e Estruturas de Dados I – Tipos de dados Profa. Mercedes Gonzales Márquez

Operadores relacionaisDadas as variáveis numéricas A e B, e as variáveis literais NOME e PROFISSÃO, completar o quadro a seguir.

VARIÁVEIS RELAÇÕESA B NOME PROFISSÃO A+2 > B NOME<>”ANA

”PROFISSÃO=“MEDICO”

3 16 “MIRIAM”

“ADVOGADO”

5 64 “PEDRO” “MÉDICO”

2,5 9 “ANA” “PROFESSOR”

Page 17: Algoritmos e Estruturas de Dados I – Tipos de dados Profa. Mercedes Gonzales Márquez

Operadores lógicos

Símbolo

Função Tipos disponíveis

e Conjunção LógicoOu Disjunção LógicoNão Negação Lógico

Page 18: Algoritmos e Estruturas de Dados I – Tipos de dados Profa. Mercedes Gonzales Márquez

Operadores lógicos - e

p q p e qV V VV F FF V FF F F

A conjunção de duas proposições p e q representa-se por: p e q e é verdadeira se e somente se ambas as proposições são verdadeiras.

Page 19: Algoritmos e Estruturas de Dados I – Tipos de dados Profa. Mercedes Gonzales Márquez

Operadores lógicos - e

Sejam as seguintes proposições p: ok, onde ok é uma variável lógica cujo conteúdo é verdadeiroq: A=0, onde o valor de A é 3.r: teste, onde teste é uma variável lógica cujo conteúdo é falso.s: B<>1, onde o conteúdo de B é 2Qual é o valor lógico das conjunções(a) p e s (b) p e r (c) q e s (d) q e r

Page 20: Algoritmos e Estruturas de Dados I – Tipos de dados Profa. Mercedes Gonzales Márquez

Operadores lógicos - ou

p q p ou qV V VV F VF V VF F F

A disjunção de duas proposições p e q representa-se por: p ou q e é verdadeira se e somente se, pelo menos, uma delas for verdadeira.

Page 21: Algoritmos e Estruturas de Dados I – Tipos de dados Profa. Mercedes Gonzales Márquez

Operadores lógicos - ouPara as quatro proposições do exemplo anterior qual será o valor lógico das disjunções:(a) p ou s (b) p ou r(c) q ou s(d) q ou r

Page 22: Algoritmos e Estruturas de Dados I – Tipos de dados Profa. Mercedes Gonzales Márquez

Operadores lógicos - não

p não (p)

V FF V

O operador negação (não) atribui o valor lógico falso a uma proposição com valor verdade, e o valor lógico verdade a uma proposição com valor falso. Assim

Page 23: Algoritmos e Estruturas de Dados I – Tipos de dados Profa. Mercedes Gonzales Márquez

Operadores -Prioridades

1º prioridade : aritmético2º prioridade : relacional3º prioridade : não4º prioridade : e5º prioridade : ou

Page 24: Algoritmos e Estruturas de Dados I – Tipos de dados Profa. Mercedes Gonzales Márquez

Funções primitivas• Representa uma

operação exercida sobre um valor para obter como resultado um valor numérico.

• Assumiremos que as funções da tabela estão disponíveis no nosso computador hipotético

Função Resultado

Sen(x) Seno de um ângulo

Cos(x) Coseno de um ângulo

Tg(x) Tangente do ângulo

Exp(x) O número e elevado a x.

Ln(x) Logaritmo neperiano de x

Sqr(x) Raiz quadrada de x

Abs(x) Valor absoluto de x

Page 25: Algoritmos e Estruturas de Dados I – Tipos de dados Profa. Mercedes Gonzales Márquez

Operadores -Prioridades nas expressões mistas

1º prioridade : parênteses mais internos2º prioridade : funções3º prioridade : potências e raízes4º prioridade : divisão e multiplicação5º prioridade : adições e subtrações6º prioridade : operadores relacionais7º prioridade : operador lógico não8º prioridade : operador lógico e9º prioridade : operador lógico ou

Page 26: Algoritmos e Estruturas de Dados I – Tipos de dados Profa. Mercedes Gonzales Márquez

Expressões mistas

Exercícios de fixação 1.5.5.1. e 1.5.5.2. do livro Algoritmos Estruturados de Harry Farrer e outros.