3. Introdução a 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 ser classificadas em
dois tipos:
As instruções, que comandam o funcionamento da
máquina e determinam a maneira como devem ser
tratados os dados
Os dados propriamente ditos, que correspondem à
porção das informações a serem processadas pelo
computador
Algoritmos e Ling.de Programação
Prof. Mauro Fundamentos 3
4. Introdução a tipos de dados
Internamente, essas informações (dados e
instruções), ficam registradas na memória
na forma binária
Porém, para facilitar, as linguagens de
programação oferecem a noção de TIPOS
DE DADOS, que nos permite manipular as
informações de forma mais parecida com o
modo como fazemos no mundo real
Algoritmos e Ling.de Programação
Prof. Mauro Fundamentos 4
5. Conceito de tipos de dados
Podemos definir tipos de dados como um
conjunto de objetos que têm em comum o
mesmo comportamento diante de um
conjunto definido de operações
Exemplos:
Pessoas
Z (conjunto dos números inteiros)
R (conjunto dos números reais)
Letras
Algoritmos e Ling.de Programação
Prof. Mauro Fundamentos 5
6. Tipos de dados básicos
As linguagens de programação não podem
manipular todos os tipos do mundo real e têm os
seus próprios tipos de dados
Os tipos de dados básicos são:
Numéricos (somente números)
Inteiro
Real
Literais (letras números ou símbolos)
Caractere
String
Lógicos ou Booleanos
Algoritmos e Ling.de Programação
Prof. Mauro Fundamentos 6
7. Tipos de dados básicos
Tipos de Dados
Numérico Literal Lógico
inteiro real caractere String
OBS: Além dos tipos básicos, as linguagens
podem oferecer variações dos mesmos ou
outros tipos como Data, Hora, etc.
Algoritmos e Ling.de Programação
Prof. Mauro Fundamentos 7
8. Dados numéricos
São dados numéricos que podem ser usados
em operações aritméticas. Subtipos:
Inteiros: que não possuem parte fracionária e
podem ser positivos ou negativos.
10 (número inteiro positivo)
-9 (número inteiro negativo)
0 (número inteiro)
Reais: que podem possuir parte fracionária e
podem ser positivos ou negativos.
15.05 (número real positivo com duas casas
decimais)
-15. (número real negativo sem casas decimais)
Algoritmos e Ling.de Programação
Prof. Mauro Fundamentos 8
9. Dados literais
Podem ser seqüências de letras, dígitos ou símbolos
especiais. Subtipos:
Caractere: um único caractere:
‘a’
‘7’
‘@’
Cadeia de Caracteres (string): conjunto de
caracteres formando uma palavra, frase ou parágrafo:
“Algoritmos”
“Algoritmos e Linguagem de Programação”
“*** Projeto Cara Limpa (anti-drogas) ***”
Normalmente ficam entre aspas simples (caractere) ou
duplas (string)
Algoritmos e Ling.de Programação
Prof. Mauro Fundamentos 9
10. Dados lógicos
Também chamados booleanos, devido à
Álgebra de Boole
Só possuem dois valores possíveis:
Verdadeiro ou Falso
Normalmente são resultados de testes de
expressões lógicas e servirão de condição
para execução de uma ou mais instruções
Algoritmos e Ling.de Programação
Prof. Mauro Fundamentos 10
12. Conceito de variável
“Uma variável é um local na memória principal,
isto é, um endereço que armazena um conteúdo”
(LOPES E GARCIA, 2002)
“Podemos imaginar uma variável como o nome
de um local onde se pode colocar qualquer valor
do conjunto de valores possíveis do tipo básico
associado”.
(GUIMARÃES E LAGES, 1994)
Algoritmos e Ling.de Programação
Prof. Mauro Fundamentos 12
13. Características de uma variável
Basicamente, uma variável
possui três atributos:
um nome (ou identificador) tipo
um tipo de dado associado à de
dado
mesma
e o dado (valor) por ela
guardado.
Nome da variável
Todas as variáveis utilizadas na
valor
elaboração de um programa
devem ser declaradas.
Algoritmos e Ling.de Programação
Prof. Mauro Fundamentos 13
14. Declaração de variáveis
Declarar uma variável corresponde à criação de um
local na memória rotulado com o nome da variável
(identificador) e marcado com o tipo de valores que
ela pode conter:
Memória RAM
tipo
de
Nome da variável
dado
valor
Nome da variável
tipo
valor
de
Nome da variável dado
valor
Algoritmos e Ling.de Programação
Prof. Mauro Fundamentos 14
15. Declaração de variáveis: sintaxe
Sintaxe: existem duas formas básicas para
declaração de variáveis em pseudocódigos:
Com o tipo após o(s) nome(s) das variável(is):
Var <nome da variável 1>[,<nome da variável 2>,...]: <tipo1>;
<nome da variável 3>[,<nome da variável 4>,...]: <tipo2>;
Com o tipo antes do nome da(s) variável(is):
<tipo1> <nome da variável 1>[,<nome da variável 2>,...];
<tipo2> <nome da variável 3>[,<nome da variável 4>,...]:
Exemplos:
Var nome, endereco: string;
salario, aumento: real;
String nome, endereco;
Real salario, aumento;
Algoritmos e Ling.de Programação
Prof. Mauro Fundamentos 15
16. Declaração de variáveis: regras
Como identificar os tipos de dados
Inteiro – int ou integer
Real – real, float ou double
Literal – char (caractere) ou string (cadeia de caracteres)
Lógico – boolean ou lógico
Exemplos
int valor; Variáveis do mesmo tipo podem
ser declaradas juntas, bastando
real salario, taxa; separar os identificadores por
char opcao; vírgula.
Algoritmos e Ling.de Programação
Prof. Mauro Fundamentos 16
17. Declaração de variáveis: regras
Regras para a Formação de Identificadores
(nomes de variáveis):
O primeiro caractere do nome deve ser uma
letra.
Se houver mais de um caractere, só se deve usar
letra ou algarismo.
Há diferença em usar letras maiúsculas e
minúsculas.
Não usar palavras que sejam reservadas Às
Linguagens de Programação.
Devemos dar nomes representativos para as
variáveis.
Algoritmos e Ling.de Programação
Prof. Mauro Fundamentos 17
18. Declaração de variáveis: exemplos
Declarações Válidas
int quantidade
Variáveis diferentes, pois
real precodevenda uma usa letra maiúscula
int Quantidade
string nome
Declarações Inválidas
Não devemos usar cedilha
real preço de venda nem espaço.
int 2numero Não devemos iniciar o
identificador com algarismo
string nomeloj@
Não devemos utilizar
caracteres especiais
Algoritmos e Ling.de Programação
Prof. Mauro Fundamentos 18
19. Exercícios de fixação
O que é um tipo de dado?
Quais são os tipos de dados básicos? Cite
exemplos de dados de cada tipo.
Diga qual o tipo de cada dado abaixo:
“Linguagem de programação”
123.75
“A”
-72
3>2
“12345”
VERDADEIRO
“01/01/2010”
Algoritmos e Ling.de Programação
Prof. Mauro Fundamentos 19
20. Exercícios de fixação
O que é uma variável?
Quais os atributos de uma variável?
O que é declarar uma variável?
Quais as regras para criação do nome de
uma variável?
Dê um exemplo de declaração de variável
em cada tipo de dados básico.
Algoritmos e Ling.de Programação
Prof. Mauro Fundamentos 20
21. Exercícios de fixação
Dados os nomes de variáveis abaixo, indique quais são
válidos e quais são inválidos:
VALOR
X2
3X4
XYZ
“NOTA”
SALÁRIO-LÍQUIDO
NOTA*DO*ALUNO
MARIA
NOMEDAESCOLA
AH!
A1B2C3
KM/H
Algoritmos e Ling.de Programação
Prof. Mauro Fundamentos 21
23. Expressão
Combinação de operandos (valores ou
variáveis), operadores, e chamadas de
funções que são interpretadas (avaliadas) de
acordo com as regras de precedência e de
associatividade particulares a uma determinada
linguagem de programação, que calcula e, em
seguida, produz (retorna) um valor
Exemplos:
2+2 (expressão aritmética)
“Algoritmos “+” e Programação” (expressão literal)
5 > 3 (expressão lógica)
Salario * reajuste / 100 (expressão aritmética usando
variáveis)
Algoritmos e Ling.de Programação
Prof. Mauro Fundamentos 23
24. Operadores
Operadores são elementos que atuam sobre
operandos e produzem um resultado.
Operandos são valores ou variáveis de um dos
tipos de dados
Exemplo
5+3
Operandos: 5 e 3
Operador: +
Resultado: 8
Algoritmos e Ling.de Programação
Prof. Mauro Fundamentos 24
25. Tipos de operadores
Operadores Unários: atuam sobre um único
operando.
Exemplo: -2
Operadores Binários: atuam sobre dois
operandos.
Exemplo: 3 + 6
Algoritmos e Ling.de Programação
Prof. Mauro Fundamentos 25
26. Expressões aritméticas
Produzem como resultado um tipo de dado
numérico.
Utilizam operadores aritméticos e variáveis
numéricas.
Operadores aritméticos:
Algoritmos e Ling.de Programação
Prof. Mauro Fundamentos 26
27. Expressões lógicas
Produzem como resultado um valor lógico
(.Verdadeiro. ou .Falso.).
Fundamentam-se na Lógica Matemática.
Conceito de Proposição
Uma proposição ou sentença é qualquer oração que
pode ser avaliada como verdadeira ou falsa.
Algoritmos e Ling.de Programação
Prof. Mauro Fundamentos 27
28. Expressões lógicas: exemplos e princípios
Exemplos de Proposições
São Luís é a capital do Maranhão.
A Lua é feita de queijo.
2 é um número par.
5 – 3 = 0.
Regras Fundamentais da Lógica Matemática
Princípio da não contradição: uma proposição não
pode ser verdadeira e falsa ao mesmo tempo.
Princípio do terceiro excluído: uma proposição
sempre assume um valor (verdadeiro ou falso)
Algoritmos e Ling.de Programação
Prof. Mauro Fundamentos 28
29. Expressões lógicas: tipos
Tipos de Proposições
Proposições Simples ou Atômicas
Não é possível decompô-las
Cinco é menor que dez.
Proposições Compostas ou Moleculares
Formadas por duas ou mais proposições simples
ligadas por meio de conectivos lógicos.
São cinco os conectivos lógicos:
E – OU – NÃO – SE ... ENTÃO – SE, E SOMENTE SE
Algoritmos e Ling.de Programação
Prof. Mauro Fundamentos 29
30. Proposições compostas
Exemplos de Proposições Compostas
1. Pelé é brasileiro E Maradona é Argentino.
2. Vou à praia OU ao cinema.
3. SE eu estudar, ENTÃO serei aprovado em
Programação.
4. Serei aprovado em Programação SE, E SOMENTE
SE,
SE eu estudar.
Algoritmos e Ling.de Programação
Prof. Mauro Fundamentos 30
31. Operador lógico de negação (NÃO)
Cada conectivo lógico está associado a uma
operação lógica.
Negação: usa o operador NÃO para modificar
uma proposição, invertendo seu valor lógico.
A representação desta operação na tabela verdade
é a seguinte:
p NÃO p
V F
F V
Algoritmos e Ling.de Programação
Prof. Mauro Fundamentos 31
32. Operador lógico de conjunção (E)
Conjunção: Com o uso do conectivo E é
possível ligar duas proposições, formando uma
nova proposição chamada conjunção, cujo valor
lógico é a verdade quando ambas as proposições
que a compõe forem verdadeiras.
a b aEb
V V V
V F F
F V F
F F F
Algoritmos e Ling.de Programação
Prof. Mauro Fundamentos 32
33. Operador lógico de disjunção (OU)
Disjunção: Com o uso do conectivo OU é
possível ligar duas proposições, formando uma
nova proposição chamada disjunção, cujo valor
lógico é a falsidade quando ambas as
proposições que a compõe forem falsas.
a b a OU b
V V V
V F V
F V V
F F F
Algoritmos e Ling.de Programação
Prof. Mauro Fundamentos 33
34. Resumo dos operadores lógicos
Tabela Demonstrativa dos Operadores
Lógicos
Algoritmos e Ling.de Programação
Prof. Mauro Fundamentos 34
35. Operadores relacionais
Usados quando se deseja efetuar
comparações.
Produzem como resultado um dos valores
lógicos.
Algoritmos e Ling.de Programação
Prof. Mauro Fundamentos 35
36. Funções
Funções são sub-programas existentes nas
linguagens de programação que recebem
dados, efetuam operações com os mesmos
e retornam um resultado
Podem ser usadas em expressões
Tipos de funções:
Matemáticas (retornam valor numérico)
Literais (retornam valor literal)
Lógicas (retornam valor lógico)
Algoritmos e Ling.de Programação
Prof. Mauro Fundamentos 36
37. Funções
Toda função tem um nome (identificador)
seguido de “(“, dos parâmetros separados por
vírgula e “)”
Exemplos:
Função Resultado fornecido
RAIZ(<número>) Raiz quadrada
EXP(<base>,<expoente>) Potenciação
ABS(<número>) Valor absoluto do número
RESTO(<a>,<b>) Resto da divisão a / b
TRUNCA(<n>) ou INT(<n>) Parte inteira do número real n
LOG(<n>) Logarítmo na base 10 de n
Algoritmos e Ling.de Programação
Prof. Mauro Fundamentos 37
38. Prioridade dos operadores
Toda expressão respeita a ordem de execução de
seus operadores, sempre da esquerda para a
direita.
Algoritmos e Ling.de Programação
Prof. Mauro Fundamentos 38
39. Exercícios de fixação
Sabendo que X=2, Y=5, diga o tipo e resultado
das seguintes expressões:
3 ** X + 10 / 2 – 3
X=Y
7+Y > X * 2
Y>X
Crie a expressão aritmética para calcular:
Média de quatro notas (n1, n2, n3 e n4)
Valor do delta, X’ e X’’, em uma equação do 2º grau,
em função das variáveis a, b e c
Retornar somente a parte fracionária de um número
real N
Algoritmos e Ling.de Programação
Prof. Mauro Fundamentos 39
40. Exercícios de fixação
Dadas as variáveis A=3, B=16, NOME=“MARIA”,
PROFISSAO=“ADVOGADO” e TESTE=FALSO,
avalie as expressões:
A+1 >= RAIZ(B) OU NOME=“ANA”
A+1 >= RAIZ(B) E PROFISSAO=“MEDICO”
NOME<>”ANA” OU PROFISSAO=“MEDICO” E
A+1>RAIZ(B)
INT(A/B) + 2
Algoritmos e Ling.de Programação
Prof. Mauro Fundamentos 40