* Esta obra é uma adptação do autor desse blog da disciplina de Projeto e Desenvolvimento de Algoritmo para Computação do curso de Tecnologia em Sistemas de Computacão/Cederj UFF das aulas originais cujo os autores são: Adriano Cruz e Jonas Knopman.
Revisão em 27/fev/2008 21:14
Conteúdo:
1. Objetivos
- Apresentar os tipos de dados manipulados pelos computadors.
- Mostrar as limitações do armazenamento de dados nos computadores.
Os tipos de dados
- Algoritmos manipulam dados fornecidos pelos usuários.
- Algoritmos devolvem dados aos usuários.
- Que tipos de dados podemos manipular ?
- Algortimos manipularão os seguintes tipos de dados:
.: Dados literais;
.: Dados lógicos.
Como representar os dados ?
- A maneira de representar os dados em nosso algoritmos deverão seguir padrões rígidos.
- Linguagens de programação estabelecem regras de como os dados são escritos.
- Existem regras para indicar quais os símbolos que podem ser usados.
- Existem regras para indicar como estes símbolos devem ser combinados.
- Para descrever a maneira como representar os dados iremos usar as seguintes convenções:
- [ ] o que estiver dentro dos colchetes é opcional.
- { } o que estiver dentro das chaves deve ser repetidos zero ou mais vezes.
- | usado para mostrar as opções de uma definição.
- Letras maiúsculas = 'A'| ' B ' | ' C ' | ' D ' | ' E ' | ' F ' | ' G ' | ' H ' | ' I ' | ' J' | ' K' | ' L ' | ' M ' | ' N ' | ' O ' | ' P ' | ' Q ' | ' R ' | ' S ' | ' T ' | ' U ' | ' V ' | ' W ' | ' X ' | ' Y ' | ' Z '
- Letras minúsculas = 'a' | 'b' | 'c' | 'd' | 'e' | 'f' | 'g' | 'h' | 'i' | 'j' | 'k' | 'l' | 'm' | 'n' | 'o' | 'p' | 'q' | 'r' | 's' | 't' | 'u' | 'v' | 'w' | 'x' | 'y' | 'z'
- Algarismo = ' 0' | '1' | '2' | '3' | '4' | '5' | '6' | '7' | '8' | '9'
- Outros = '~' | '!' | '@' | '#' | '$' | '%' | '^' | '&' | '*' | '(' | ' )' | '_' | '-' | '{' | '[' | '}' | ']' | '\' | ':' | ';' | ''' | '<' | ',' | '>' | '.' | '?' | '/' | ''' | ' ' | '|'
- Antes de apresentar os dados numéricos que os computadores podem manipular vamos considerar os vários tipos que são estudados na Matemática.
- Os tipos de dados que os computadores manipulam são subconjuntos dos estudados em Matemática.
- Usados para representar
.: quantidade de CDs
.: número de ovelhas no pasto
- O número zero é recente e foi descoberto pelos hindus
- Era fácil pastores contarem com pedras (calculus) as ovelhas existentes. Mas para que calcular quando não há ovelhas.
- Em Matemática este conjunto é representado por N = { 0, 1, 2, 3 ... }
- O conjunto dos números inteiros é definido como
- Usando para representar quantidades que podem assumir valores positivos e negativos.
- Se eu tenho 7 ovelha e vendi 5, tenho 2 ovelhas.
- Se eu tenho 5 ovelhas e vendi 7, tenho - 2 ovelhas.
- Composto por todos os números que podem ser representados como uma fração da forma p/q, onde p e q pertencem ao conjunto dos números inteiros.
- Conjunto usado para representar temperaturas (-10,0 ), preços (R$ 312,50), altura (1,75 m), etc.
- Pode ser representado como
- Composto por todos os números que não podem ser representados como uma fração da forma p/q, onde p e q, q 0 pertencem ao conjunto dos números inteiros.
- Exemplos são os números = 3,1415 ..., e = 2,71828 ...
- Podemos representar este conjunto por Q'
- É a união dos conjuntos dos números racionais e irracionais.
- Este conjunto é normalmente representado pela letra
- Números que são representados pela forma a+ib,
- i é a raiz quadrada de - 1.
- A raiz quadrada de - 1 é o número imaginário i.
- a e b são números pertencentes ao conjunto dos números reais.
- Quando b = 0 o número complexo se torna um número real.
Os números e os computadores
- Computadores típicos manipulam com números na base 2 e não na base 10 que costumamos usar.
- O número de dígitos na base 2 que um computaddor pode armazenar é limitado e é função da largura da palavra de memória do computador.
- Um bit pode representar dois números inteiros 0 e 1.
- Dois bits podem representar quatro números inteiros diferentes: 00, 01, 10 e 11.
- Em geral com n bits podemos representar 2 números inteiros.
- Normalmente 1 bit é reservado para guardar o sinal.
- Considere um computador típico que use 32 bits para armazenar números inteiros.
- Reservar um bit para guardar o sinal.
- Portanto os números inteiros podem variar entre
- Observar que há um número negativo a mais porque não é necessário representar o número - 0.
- A definição, dada pelos colchetes, diz que um número inteiro pode ou não ter um sinal (+ ou -).
- Em seguida deve vir obrigatoriamente um algarimso, que pode ser ou não seguido de outro algarismos.
- Observe que não há espaços em branco entre o sinal e os algarismos.
- +3
- 3
- -3
- -121
- +12345
- + 3 Não é permitido espaços em banco entre o sinal e o algarismo.
- -1.0 Não é possível usar ponto.
- -2,0 Não é possível usar vírgula.
- 3 Expoentes não são permitidos.
- A definição deve ser seguida ao pé da letra
.: Real = [ '+' | '-' ]algarismos{algarismo}.algarismo{algarismo}
- Um número real pode ou não ter um sinal.
- Em seguida deve vir um algarismo seguido de zero ou mais algarismos.
- O próximo item é o ponto decimal que é obrigatório.
- Finalmente um algarismo seguido de zero ou mais algarismos.
- +3.0
- 3.0
- -3.0
- -121.15
- 3.1415
- + 3.0 Não é permitido espaço em branco entre o sinal e o algarismo.
- -1. É necessário um algarismo após o ponto.
- -2,0 Não é possível usar vírgula.
- .325 É necessário um algarismo antes do ponto.
- 0.7... Dízimas períodicas não podem ser representadas desta maneira.
- São usados por exemplo em:
.: Impressão de avisos aos usuários;
.: Tratamento de dados do tipo nome, endereços, etc.
Caracteres
- Dados literais são compostos por caracteres.
- Caracteres são basicamente as letras minúsculas e maiúsculas, algarismos, sinais de pontuação, etc.
- Caracteres são representados por códigos binários.
- O código mais disseminado de todo é o ASCII (Americam Standard Code for Information Interchange).
- ASCII usa 8 bits para representar os caracteres
- ASCII pode representar portanto até 2 = 256 caracteres.
- Entre os códigos há váriso que são usados somente para comunicação entre computadores (ACK, NACK, EOF, EOL, etc)
- 'a' = 97
- 'z' = 122
- 'A' = 65
- 'Z' = 90
- 'O' = 48
- '9' = 57
- '$' = 36
- '+' = 43
- Um caractere isoldado em nossos algoritmos será representado pelo caractere entre 's.
- Por exemplo:
- 'a' caractere a minúsculo
- '1' caractere 1
- 'A' caractere A maiúsculo
- ':' caractere dois pontos
- '''' caractere ', represenado por dois '', para ser reconhecido por computador
- Conjunto de caracteres, como por exemplo um nome , devem ser representados entre 's
- Por exemplo:
- '12345' Conjunto de algarismos
- 'Jorge da Silva' Nome
- '!@#$%&*' Conjunto de caracteres variados
5. Dados lógicos
- Aplicados no processo de tomada de decisões que o computador faz.
- Este tipo de dados também é chamado de dado booleano, devido a George Boole, matemático inglês, que deu ao nome à álgebra (álgebra booleana) que manipula este tipo de dados.
- A àlgebra booleana é aplicada no projeto de computadores digitais.
- Os dados deste tipo somente podem assumir dois valores: verdadeiro e falso.
- Computadores tomam decisões, durante o processamento de um algoritmo, baseados nestes dois valores.
- Considere a questão:
- Os dados lógicos serão representados como:
- Verdadeiro = verdadeiro
- Falso = falso
http://equipe.nce.ufrj.br/adriano/algoritmos/apostila/tipos.htm
http://tutomania.com.br/file.php?cod=14072
Nenhum comentário:
Postar um comentário