Professional Documents
Culture Documents
Objetivos
Ao final desta lio, o estudante ser capaz de:
Identificar os diferentes componentes de um computador Conhecer linguagens de programao e suas categorias Entender o ciclo de vida do desenvolvimento de um programa e aplic-lo na resoluo de problemas Aprender os diferentes sistemas numricos e suas converses
Introduo Programao I
Introduo
Computador Uma mquina que executa uma variedade de tarefas de acordo com instrues especficas Dois principais componentes: Hardware parte tangvel do computador composto de partes eletrnicas e mecnicas Software
Introduo Programao I
O processador o crebro do computador Ele a parte fundamental de um sistema de informtica Exemplos: Pentium, Athlon e SPARC
Introduo Programao I
Memria Onde dados e instrues necessrias podem ser encontradas para que a CPU realize determinadas tarefas
Introduo Programao I
Memria Principal Utilizada para reter programas e dados que o processador utiliza com freqncia
No utilizada para armazenamento de longo prazo Chamada de RAM (Random Access Memory) Considerada como meio de armazenamento voltil
Introduo Programao I
Memria Secundria Usada para reter programas e dados por longo prazo em termos de uso
Exemplos de memria secundria so discos rgidos e cd-rom Considerado como memria no voltil
Introduo Programao I
Introduo Programao I
Dispositivos de Entrada e Sada Permitem um computador interagir com o mundo atravs da movimentao de dados para dentro e para fora do sistema
Exemplos:
dispositivos de entrada: teclados, mouses e microfones dispositivos de sada: monitores, impressoras e caixas de som
Introduo Programao I
Mantido em algum dispositivo de hardware como um disco rgido, mas, por si s, intangvel Dados que um computador utiliza
Introduo Programao I
10
Tipos de Programas de Computador: Programas de Sistemas: so necessrios para manter sistemas de hardware e software executando juntos em harmonia
Programas Aplicativos: utilizados para realizar tarefas Compiladores: Traduzem programas de linguagem humana para a linguagem de mquina
Introduo Programao I
11
Linguagens de Programao
Assim como a linguagem humana, cada linguagem tem sua prpria sintaxe e gramtica Existem diferentes tipos de linguagem de programao que podem ser utilizados para criao de programas
Introduo Programao I
12
O programa dever ser traduzido atravs de um compilador Exemplos: Java, C, C++, Basic, Fortran
So mais simples e permitem a um programador substituir nomes por nmeros Linguagens de montagem esto disponveis para cada famlia de CPU
Introduo Programao I 13
Definio do Problema
Anlise do Problema
Introduo Programao I
14
1. Definir o Problema
Um problema bem definido metade de uma soluo Programas de computador requerem que primeiro entendamos o problema para depois tentarmos criar uma soluo. Definindo o problema exemplo: Crie um programa que determine o nmero de vezes que um nome ocorre em uma lista
Introduo Programao I
15
2. Analisar o Problema
Problema Exemplo: Determinar o nmero de vezes que um nome ocorre em uma lista Entrada do programa: lista de nomes
nome procurado
Uma especificao clara e no contraditria dos passos necessrios para resolver um problema Deve ser representada em: Linguagem humana (Ingls, Tagalog, portugus)
Representaes grfica como o fluxograma Pseudocdigo - que uma mistura entre a linguagem humana e a linguagem de programao
Introduo Programao I
17
Introduo Programao I
18
Introduo Programao I
19
Smbolos do Fluxograma
Smbolo de Processo
Smbolo de Entrada/Sada
Smbolo de Linha
Introduo Programao I
20
Smbolos do Fluxograma
Smbolo de Anotao
Smbolo de Deciso
Smbolo de Terminal
Introduo Programao I
21
Smbolos do Fluxograma
Smbolo Conector
Introduo Programao I
22
Introduo Programao I
23
4. Codificar e Depurar
Depois de construir o algoritmo, possvel criar o cdigo fonte. Utilizando as bases do algoritmo, o cdigo fonte pode ser escrito com a utilizao de qualquer linguagem de programao Processo de Depurao (Debug) o processo de localizao e acerto de erros (bugs) no programa
Introduo Programao I
24
Tipos de Erros
Erros de Compilao ou Erros de Sintaxe Ocorrem quando existem erros de sintaxe no programa
O compilador ir detectar o erro e o programa no ser compilado O programador estar impossibilitado de gerar um programa executvel at que ele conserte o erro
Isto especialmente verdadeiro nos erros de lgica como os laos de repetio infinitos Este tipo de erro chamado erro de execuo
Introduo Programao I 25
Sistemas Numricos
Os nmeros podem ser representados de formas variadas A representao depende do que chamamos de BASE Os nmeros so escritos do seguinte modo: Nmero base
Introduo Programao I
26
Sistemas Numricos
A seguir as quatro representaes mais comuns Decimal (base 10) a usada normalmente Os dgitos vlidos vo de 0 a 9 Exemplo: 126 (normalmente 10 escreve-se somente 126) Binrio (base 2)
Introduo Programao I
27
Sistemas Numricos
Introduo Programao I
28
Sistemas Numricos
Exemplos:
Decimal 12610 1110 Binrio 11111102 10112 Octal 1768 138 Hexadecimal 7E16 B16
Introduo Programao I
29
Dividir por 2 e obter o resto (que ou 0 ou 1) Este dgito far parte da forma binria do nmero a encontrar Obter o quociente e divida novamente por 2 Repetir o processo at que o quociente alcance 0 ou 1 Os restos do incio ao fim representam o resultado em forma binria NOTA: O ltimo dgito menor que o divisor (2) ser o primeiro nmero do resultado
Introduo Programao I 30
Logo, escrevendo os restos de baixo para cima teremos o nmero binrio 11111102
Introduo Programao I
Multiplicar os dgitos binrios pela potncia de 2 na posio do nmero binrio Somar todos os produtos para obter como resultado o nmero decimal
Introduo Programao I
32
5 1
4 1
3 1
2 1
1 1
Introduo Programao I
33
Converter nmeros decimais para octais ou hexadecimais basicamente o mesmo que converter decimal em binrio No entanto, em vez de utilizar o 2 como divisor, trocar por 8 (para octal) ou 16 (para hexadecimal)
Introduo Programao I
34
Logo, escrevendo os restos de baixo para cima teremos o nmero octal 1768
Logo, escrevendo os restos de baixo para cima teremos o nmero hexadecimal 7E16
Introduo Programao I 35
Converter nmeros octais ou hexadecimais o mesmo coisa que converter nmeros binrios para decimal Ao invs de utilizar o nmero base 2, trocar por 8 (para octal) ou 16 (para hexadecimal)
Introduo Programao I
36
1 7
Introduo Programao I
37
Introduo Programao I
38
1 7
1 6
Introduo Programao I
39
Converter nmeros octais em binrios o oposto do que foi mostrado anteriormente Converter cada dgito octal em sua representao binria (dada na tabela) e concaten-los O resultado a representao binria
Dgito Octal
Representao Binria 000 001 010 011 100 101 110 111
0 1 2 3 4 5 6 7
Introduo Programao I
40
Introduo Programao I
41
Particionar o nmero binrio em grupos de 4 dgitos (da direita para esquerda) Preencher com zeros se a quantidade de dgitos no for divisvel por 4 Converter cada partio no dgito hexadecimal correspondente A tabela ao lado mostra a representao binria para cada dgito hexadecimal
16
1 E
1 0
Introduo Programao I
43
Converter nmeros hexadecimais para binrio o oposto do que foi dado nos slides anteriores Converter cada dgito hexadecimal na representao binria (dada na tabela) e concaten-los O resultado a representao binria
Introduo Programao I
44
1 7
1 E
Introduo Programao I
45
Sumrio
Software
Anlise do Problema Projeto e representao de Algoritmo (Linguagem humana, Fluxograma, Pseudocdigo) Codificar e Depurar erros
Introduo Programao I 46
Sumrio
Erros de execuo
Converses
Introduo Programao I
47
Parceiros
TM
possvel em
Introduo Programao I
48